60 #ifndef VTK_EXCLUDE_STRSTREAM_HEADERS 61 #define VTK_EXCLUDE_STRSTREAM_HEADERS 74 class vtkDataArraySelection;
77 class vtkPVFoamReader;
80 class vtkMultiBlockDataSet;
82 class vtkUnstructuredGrid;
99 template<
class Type>
class IOField;
100 template<
class Type>
class List;
120 arrayRange(
const char *
name,
const int blockNo=0)
135 int block(
int blockNo)
143 const char*
name()
const 157 return start_ + size_;
172 void reset(
const int startAt = 0)
179 void operator+=(
const int n)
213 return addPointCellLabels_;
217 const labelList& addPointCellLabels()
const 219 return addPointCellLabels_;
239 addPointCellLabels_.
clear();
248 vtkPVFoamReader* reader_;
283 arrayRange arrayRangeVolume_;
284 arrayRange arrayRangePatches_;
285 arrayRange arrayRangeLagrangian_;
286 arrayRange arrayRangeCellZones_;
287 arrayRange arrayRangeFaceZones_;
288 arrayRange arrayRangePointZones_;
289 arrayRange arrayRangeCellSets_;
290 arrayRange arrayRangeFaceSets_;
291 arrayRange arrayRangePointSets_;
310 static void AddToBlock
312 vtkMultiBlockDataSet* output,
315 const label datasetNo,
316 const std::string& datasetName
321 static vtkDataSet* GetDataSetFromBlock
323 vtkMultiBlockDataSet* output,
325 const label datasetNo
330 static label GetNumberOfDataSets
332 vtkMultiBlockDataSet* output,
337 void resetCounters();
342 void updateMeshPartsStatus();
345 void updateInfoInternalMesh(vtkDataArraySelection*);
348 void updateInfoLagrangian(vtkDataArraySelection*);
351 void updateInfoPatches
353 vtkDataArraySelection*,
359 void updateInfoSets(vtkDataArraySelection*);
362 void updateInfoZones(vtkDataArraySelection*);
368 template<
class ZoneType>
378 vtkDataArraySelection*,
384 template<
template<
class>
class patchType,
class meshType>
385 void updateInfoFields(vtkDataArraySelection*);
388 void updateInfoLagrangianFields();
394 void updateFoamMesh();
400 void updateVolFields(vtkMultiBlockDataSet*);
403 void updatePointFields(vtkMultiBlockDataSet*);
406 void updateLagrangianFields(vtkMultiBlockDataSet*);
412 void convertMeshVolume(vtkMultiBlockDataSet*,
int& blockNo);
415 void convertMeshLagrangian(vtkMultiBlockDataSet*,
int& blockNo);
418 void convertMeshPatches(vtkMultiBlockDataSet*,
int& blockNo);
421 void convertMeshCellZones(vtkMultiBlockDataSet*,
int& blockNo);
424 void convertMeshFaceZones(vtkMultiBlockDataSet*,
int& blockNo);
427 void convertMeshPointZones(vtkMultiBlockDataSet*,
int& blockNo);
430 void convertMeshCellSets(vtkMultiBlockDataSet*,
int& blockNo);
433 void convertMeshFaceSets(vtkMultiBlockDataSet*,
int& blockNo);
436 void convertMeshPointSets(vtkMultiBlockDataSet*,
int& blockNo);
442 vtkUnstructuredGrid* volumeVTKMesh(
const fvMesh&, polyDecomp&);
445 vtkPolyData* lagrangianVTKMesh
452 template<
class PatchType>
453 vtkPolyData* patchVTKMesh(
const word&
name,
const PatchType&);
456 vtkPolyData* pointZoneVTKMesh
463 vtkPolyData* faceSetVTKMesh
470 vtkPolyData* pointSetVTKMesh
479 void convertVolFields(vtkMultiBlockDataSet*);
482 void convertPointFields(vtkMultiBlockDataSet*);
485 void convertLagrangianFields(vtkMultiBlockDataSet*);
490 template<
class GeoField>
491 label addObjectsToSelection
493 vtkDataArraySelection*,
503 void convertVolFields
508 const bool interpFields,
509 vtkMultiBlockDataSet* output
514 void convertVolFieldBlock
518 vtkMultiBlockDataSet* output,
528 vtkMultiBlockDataSet* output,
530 const label datasetNo,
536 void convertPatchField
540 vtkMultiBlockDataSet* output,
542 const label datasetNo
547 void convertFaceField
550 vtkMultiBlockDataSet* output,
552 const label datasetNo,
559 void convertLagrangianFields
562 vtkMultiBlockDataSet* output,
563 const label datasetNo
568 void convertLagrangianField
571 vtkMultiBlockDataSet* output,
573 const label datasetNo
578 void convertPointFields
583 vtkMultiBlockDataSet* output
588 void convertPointFieldBlock
591 vtkMultiBlockDataSet* output,
598 void convertPointField
602 vtkMultiBlockDataSet* output,
604 const label datasetNo,
610 void convertPatchPointField
614 vtkMultiBlockDataSet* output,
616 const label datasetNo
623 static void pruneObjectList
639 static wordHashSet getSelected(vtkDataArraySelection*);
644 vtkDataArraySelection*,
649 static stringList getSelectedArrayEntries(vtkDataArraySelection*);
654 vtkDataArraySelection*,
659 static void setSelectedArrayEntries
661 vtkDataArraySelection*,
666 word getPartName(
const int);
681 const char*
const FileName,
682 vtkPVFoamReader* reader
700 vtkMultiBlockDataSet* output,
701 vtkMultiBlockDataSet* lagrangianOutput
717 int setTime(
int count,
const double requestTimes[]);
730 void PrintSelf(ostream&, vtkIndent)
const;
A HashTable with keys but without contents.
Interpolation class within a primitive patch. Allows interpolation from points to faces and vice vers...
int timeIndex() const
The current time index.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
static void printMemory()
Simple memory used debugging information.
A class for handling file names.
List of IOobjects with searching and retrieving facilities.
labelList pointLabels(nPoints, -1)
Provides a reader interface for OpenFOAM to VTK interaction.
A list of keyword definitions, which are a keyword followed by any number of values (e...
double * findTimes(int &nTimeSteps)
Allocate and return a list of selected times.
void renderPatchNames(vtkRenderer *, const bool show)
Add/remove patch names to/from the view.
Generic GeometricField class.
void PrintSelf(ostream &, vtkIndent) const
Debug information.
void Update(vtkMultiBlockDataSet *output, vtkMultiBlockDataSet *lagrangianOutput)
Mesh representing a set of points created from polyMesh.
ClassName("vtkPVFoam")
Static data members.
void CleanUp()
Clean any storage.
Pre-declare SubField and related Field type.
void clear()
Clear the list, i.e. set size to zero.
A class for handling words, derived from string.
Creates a single block of cells from point coordinates, numbers of cells in each direction and an exp...
static const string null
An empty string.
word name(const complex &)
Return a string representation of a complex.
void operator=(const vtkPVFoam &)=delete
Disallow default bitwise assignment.
int setTime(int count, const double requestTimes[])
Set the runTime to the first plausible request time,.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
Macro definitions for declaring ClassName(), NamespaceName(), etc.
Mesh data needed to do the Finite Volume discretisation.
vtkPVFoam(const char *const FileName, vtkPVFoamReader *reader)
Construct from components.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
const word cloudName(propsDict.lookup("cloudName"))
A primitive field of type <T> with automated input and output.