Go to the documentation of this file.
60 #ifndef VTK_EXCLUDE_STRSTREAM_HEADERS
61 # define VTK_EXCLUDE_STRSTREAM_HEADERS
68 #include "primitivePatch.H"
72 #undef VTKPV3FOAM_DUALPORT
76 class vtkDataArraySelection;
79 class vtkPV3FoamReader;
82 class vtkMultiBlockDataSet;
84 class vtkUnstructuredGrid;
101 template<
class Type>
class IOField;
102 template<
class Type>
class List;
137 int block(
int blockNo)
145 const char*
name()
const
174 void reset(
const int startAt = 0)
311 vtkMultiBlockDataSet* output,
314 const label datasetNo,
315 const std::string& datasetName
322 vtkMultiBlockDataSet* output,
324 const label datasetNo
331 vtkMultiBlockDataSet* output,
362 template<
class ZoneType>
372 vtkDataArraySelection*,
378 template<
template<
class>
class patchType,
class meshType>
446 template<
class PatchType>
484 template<
class GeoField>
487 vtkDataArraySelection*,
502 const bool interpFields,
503 vtkMultiBlockDataSet* output
512 vtkMultiBlockDataSet* output,
522 vtkMultiBlockDataSet* output,
524 const label datasetNo,
534 vtkMultiBlockDataSet* output,
536 const label datasetNo
544 vtkMultiBlockDataSet* output,
546 const label datasetNo,
556 vtkMultiBlockDataSet* output,
557 const label datasetNo
565 vtkMultiBlockDataSet* output,
567 const label datasetNo
577 vtkMultiBlockDataSet* output
585 vtkMultiBlockDataSet* output,
596 vtkMultiBlockDataSet* output,
598 const label datasetNo,
608 vtkMultiBlockDataSet* output,
610 const label datasetNo
629 vtkDataArraySelection*,
639 vtkDataArraySelection*,
646 vtkDataArraySelection*,
673 const char*
const FileName,
674 vtkPV3FoamReader* reader
689 vtkMultiBlockDataSet* output,
690 vtkMultiBlockDataSet* lagrangianOutput
706 int setTime(
int count,
const double requestTimes[]);
719 void PrintSelf(ostream&, vtkIndent)
const;
void reduceMemory()
Reduce memory footprint after conversion.
void updateInfoFields(vtkDataArraySelection *)
Field info.
void updateInfoPatches(vtkDataArraySelection *, stringList &)
Patch info.
const char * name() const
Return block name.
vtkPolyData * faceSetVTKMesh(const fvMesh &, const faceSet &)
Add face set mesh.
int timeIndex() const
The current time index.
arrayRange arrayRangeLagrangian_
A class for handling words, derived from string.
static void setSelectedArrayEntries(vtkDataArraySelection *, const stringList &)
Set selection(s)
void convertLagrangianField(const IOField< Type > &, vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo)
Lagrangian field.
A class for handling file names.
A primitive field of type <T> with automated input and output.
labelList partDataset_
Datasets corresponding to selected geometrical pieces.
void convertMeshFaceZones(vtkMultiBlockDataSet *, int &blockNo)
Face zone meshes.
arrayRange arrayRangeFaceSets_
arrayRange arrayRangePointZones_
int block(int blockNo)
Assign block number, return previous value.
void convertVolFieldBlock(const GeometricField< Type, fvPatchField, volMesh > &, autoPtr< GeometricField< Type, pointPatchField, pointMesh > > &, vtkMultiBlockDataSet *output, const arrayRange &, const List< polyDecomp > &decompLst)
Volume field - all selected parts.
double * findTimes(int &nTimeSteps)
Allocate and return a list of selected times.
int end() const
Return array end index.
void convertMeshVolume(vtkMultiBlockDataSet *, int &blockNo)
Volume mesh.
wordList getZoneNames(const word &zoneType) const
Get non-empty zone names for zoneType from file.
vtkPolyData * patchVTKMesh(const word &name, const PatchType &)
Add patch mesh.
void renderPatchNames(vtkRenderer *, const bool show)
Add/remove patch names to/from the view.
void convertMeshPointSets(vtkMultiBlockDataSet *, int &blockNo)
Point set meshes.
void updateInfoInternalMesh(vtkDataArraySelection *)
Internal mesh info.
void updateMeshPartsStatus()
Update the mesh parts selected in the GUI.
void resetCounters()
Reset data counters.
bool fieldsChanged_
Track changes in fields.
boolList partStatus_
Selected geometrical parts (internalMesh, patches, ...)
void convertPointField(const GeometricField< Type, pointPatchField, pointMesh > &, const GeometricField< Type, fvPatchField, volMesh > &, vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo, const polyDecomp &)
Point fields.
void convertFaceField(const GeometricField< Type, fvPatchField, volMesh > &, vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo, const fvMesh &, const labelList &faceLabels)
Face set/zone field.
Bookkeeping for polyhedral cell decomposition.
List< polyDecomp > zonePolyDecomp_
Decomposed cells information (cellZone meshes)
void convertMeshCellSets(vtkMultiBlockDataSet *, int &blockNo)
Cell set meshes.
void updateInfoLagrangian(vtkDataArraySelection *)
Lagrangian info.
A HashTable with keys but without contents.
void PrintSelf(ostream &, vtkIndent) const
Debug information.
arrayRange arrayRangeVolume_
First instance and size of various mesh parts.
void updateFoamMesh()
OpenFOAM mesh.
const labelList & addPointCellLabels() const
Cell-centre labels for additional points of decomposed cells.
arrayRange(const char *name, const int blockNo=0)
arrayRange arrayRangeCellZones_
labelList & pointMap()
Point labels for subsetted meshes.
void convertMeshCellZones(vtkMultiBlockDataSet *, int &blockNo)
Cell zone meshes.
vtkPolyData * pointZoneVTKMesh(const fvMesh &, const labelList &pointLabels)
Add point zone.
void updateVolFields(vtkMultiBlockDataSet *)
Volume fields.
vtkPolyData * pointSetVTKMesh(const fvMesh &, const pointSet &)
Add point mesh.
const labelList & pointMap() const
Point labels for subsetted meshes.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
vtkPolyData * lagrangianVTKMesh(const fvMesh &, const word &cloudName)
Add Lagrangian mesh.
void updatePointFields(vtkMultiBlockDataSet *)
Point fields.
List< polyDecomp > csetPolyDecomp_
Decomposed cells information (cellSet meshes)
void convertVolField(const GeometricField< Type, fvPatchField, volMesh > &, vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo, const polyDecomp &)
Volume field.
vtkPV3FoamReader * reader_
Access to the controlling vtkPV3FoamReader.
void convertLagrangianFields(vtkMultiBlockDataSet *)
Convert Lagrangian fields.
void convertMeshPointZones(vtkMultiBlockDataSet *, int &blockNo)
Point zone meshes.
vtkUnstructuredGrid * volumeVTKMesh(const fvMesh &, polyDecomp &)
Add internal mesh/cell set meshes.
Macro definitions for declaring ClassName(), NamespaceName(), etc.
void operator=(const vtkPV3Foam &)
Disallow default bitwise assignment.
void convertMeshFaceSets(vtkMultiBlockDataSet *, int &blockNo)
Face set meshes.
label addToSelection(vtkDataArraySelection *, const IOobjectList &, const string &suffix=string::null)
Add objects of Type to paraview array selection.
fileName meshDir_
The mesh directory for the region.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
ClassName("vtkPV3Foam")
Static data members.
int size() const
Return sublist size.
static void printMemory()
Simple memory used debugging information.
void Update(vtkMultiBlockDataSet *output, vtkMultiBlockDataSet *lagrangianOutput)
static const string null
An empty string.
void updateLagrangianFields(vtkMultiBlockDataSet *)
Lagrangian fields.
label addObjectsToSelection(vtkDataArraySelection *, const IOobjectList &, const string &suffix=string::null)
Add the fields in the selected time directory to the selection.
void convertPatchField(const word &name, const Field< Type > &, vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo)
Patch field.
autoPtr< Time > dbPtr_
OpenFOAM time control.
bool meshChanged_
Track changes in mesh geometry.
Mesh data needed to do the Finite Volume discretisation.
Mesh representing a set of points created from polyMesh.
List of IOobjects with searching and retrieving facilities.
void convertPointFieldBlock(const GeometricField< Type, pointPatchField, pointMesh > &, vtkMultiBlockDataSet *output, const arrayRange &, const List< polyDecomp > &)
Point field - all selected parts.
fvMesh * meshPtr_
OpenFOAM mesh.
int setTime(int count, const double requestTimes[])
Set the runTime to the first plausible request time,.
int start() const
Return array start index.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
void updateInfoLagrangianFields()
Lagrangian field info.
labelList addPointCellLabels_
Bookkeeping for GUI checklists and the multi-block organization.
static label GetNumberOfDataSets(vtkMultiBlockDataSet *output, const arrayRange &)
labelList & superCells()
Label of original cell for decomposed cells.
Interpolation class within a primitive patch. Allows interpolation from points to faces and vice vers...
word meshRegion_
The mesh region.
void operator+=(const int n)
Increment the size.
void updateInfoZones(vtkDataArraySelection *)
Zone info.
void CleanUp()
Clean any storage.
word getPartName(const int)
Get the first word from the mesh parts selection.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
void convertPatchPointField(const word &name, const Field< Type > &, vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo)
Patch point field.
void clear()
Clear the list, i.e. set size to zero.
const labelList & superCells() const
Label of original cell for decomposed cells.
List< vtkTextActor * > patchTextActorsPtrs_
List of patch names for rendering to window.
void convertMeshPatches(vtkMultiBlockDataSet *, int &blockNo)
Patch meshes.
const word cloudName(propsDict.lookup("cloudName"))
static vtkDataSet * GetDataSetFromBlock(vtkMultiBlockDataSet *output, const arrayRange &, const label datasetNo)
arrayRange arrayRangePatches_
arrayRange arrayRangePointSets_
labelList & addPointCellLabels()
Cell-centre labels for additional points of decomposed cells.
Provides a reader interface for OpenFOAM to VTK interaction.
void reset(const int startAt=0)
Reset the size to zero and optionally assign a new start.
Generic GeometricField class.
static void pruneObjectList(IOobjectList &, const wordHashSet &)
Only keep what is listed in hashSet.
List< polyDecomp > regionPolyDecomp_
Decomposed cells information (mesh regions)
static void AddToBlock(vtkMultiBlockDataSet *output, vtkDataSet *dataset, const arrayRange &, const label datasetNo, const std::string &datasetName)
void convertPointFields(vtkMultiBlockDataSet *)
Convert point fields.
static stringList getSelectedArrayEntries(vtkDataArraySelection *)
Retrieve the current selections.
arrayRange arrayRangeFaceZones_
void updateInfoSets(vtkDataArraySelection *)
Set info.
labelList pointLabels(nPoints, -1)
void convertMeshLagrangian(vtkMultiBlockDataSet *, int &blockNo)
Lagrangian mesh.
word name(const complex &)
Return a string representation of a complex.
static wordHashSet getSelected(vtkDataArraySelection *)
Retrieve the current selections.
arrayRange arrayRangeCellSets_
int block() const
Return the block holding these datasets.
void convertVolFields(vtkMultiBlockDataSet *)
Convert volume fields.
int timeIndex_
The time index.
vtkPV3Foam(const vtkPV3Foam &)
Disallow default bitwise copy construct.