60 #ifndef VTK_EXCLUDE_STRSTREAM_HEADERS 61 # define VTK_EXCLUDE_STRSTREAM_HEADERS 72 #undef VTKPVFOAM_DUALPORT 76 class vtkDataArraySelection;
79 class vtkPVFoamReader;
82 class vtkMultiBlockDataSet;
84 class vtkUnstructuredGrid;
101 template<
class Type>
class IOField;
102 template<
class Type>
class List;
122 arrayRange(
const char *
name,
const int blockNo=0)
137 int block(
int blockNo)
145 const char*
name()
const 159 return start_ + size_;
174 void reset(
const int startAt = 0)
181 void operator+=(
const int n)
215 return addPointCellLabels_;
219 const labelList& addPointCellLabels()
const 221 return addPointCellLabels_;
241 addPointCellLabels_.
clear();
250 vtkPVFoamReader* reader_;
282 arrayRange arrayRangeVolume_;
283 arrayRange arrayRangePatches_;
284 arrayRange arrayRangeLagrangian_;
285 arrayRange arrayRangeCellZones_;
286 arrayRange arrayRangeFaceZones_;
287 arrayRange arrayRangePointZones_;
288 arrayRange arrayRangeCellSets_;
289 arrayRange arrayRangeFaceSets_;
290 arrayRange arrayRangePointSets_;
309 static void AddToBlock
311 vtkMultiBlockDataSet* output,
314 const label datasetNo,
315 const std::string& datasetName
320 static vtkDataSet* GetDataSetFromBlock
322 vtkMultiBlockDataSet* output,
324 const label datasetNo
329 static label GetNumberOfDataSets
331 vtkMultiBlockDataSet* output,
336 void resetCounters();
341 void updateMeshPartsStatus();
344 void updateInfoInternalMesh(vtkDataArraySelection*);
347 void updateInfoLagrangian(vtkDataArraySelection*);
350 void updateInfoPatches(vtkDataArraySelection*,
stringList&);
353 void updateInfoSets(vtkDataArraySelection*);
356 void updateInfoZones(vtkDataArraySelection*);
362 template<
class ZoneType>
372 vtkDataArraySelection*,
378 template<
template<
class>
class patchType,
class meshType>
379 void updateInfoFields(vtkDataArraySelection*);
382 void updateInfoLagrangianFields();
388 void updateFoamMesh();
394 void updateVolFields(vtkMultiBlockDataSet*);
397 void updatePointFields(vtkMultiBlockDataSet*);
400 void updateLagrangianFields(vtkMultiBlockDataSet*);
406 void convertMeshVolume(vtkMultiBlockDataSet*,
int& blockNo);
409 void convertMeshLagrangian(vtkMultiBlockDataSet*,
int& blockNo);
412 void convertMeshPatches(vtkMultiBlockDataSet*,
int& blockNo);
415 void convertMeshCellZones(vtkMultiBlockDataSet*,
int& blockNo);
418 void convertMeshFaceZones(vtkMultiBlockDataSet*,
int& blockNo);
421 void convertMeshPointZones(vtkMultiBlockDataSet*,
int& blockNo);
424 void convertMeshCellSets(vtkMultiBlockDataSet*,
int& blockNo);
427 void convertMeshFaceSets(vtkMultiBlockDataSet*,
int& blockNo);
430 void convertMeshPointSets(vtkMultiBlockDataSet*,
int& blockNo);
436 vtkUnstructuredGrid* volumeVTKMesh(
const fvMesh&, polyDecomp&);
439 vtkPolyData* lagrangianVTKMesh
446 template<
class PatchType>
447 vtkPolyData* patchVTKMesh(
const word&
name,
const PatchType&);
450 vtkPolyData* pointZoneVTKMesh
457 vtkPolyData* faceSetVTKMesh
464 vtkPolyData* pointSetVTKMesh
473 void convertVolFields(vtkMultiBlockDataSet*);
476 void convertPointFields(vtkMultiBlockDataSet*);
479 void convertLagrangianFields(vtkMultiBlockDataSet*);
484 template<
class GeoField>
485 label addObjectsToSelection
487 vtkDataArraySelection*,
497 void convertVolFields
502 const bool interpFields,
503 vtkMultiBlockDataSet* output
508 void convertVolFieldBlock
512 vtkMultiBlockDataSet* output,
522 vtkMultiBlockDataSet* output,
524 const label datasetNo,
530 void convertPatchField
534 vtkMultiBlockDataSet* output,
536 const label datasetNo
541 void convertFaceField
544 vtkMultiBlockDataSet* output,
546 const label datasetNo,
553 void convertLagrangianFields
556 vtkMultiBlockDataSet* output,
557 const label datasetNo
562 void convertLagrangianField
565 vtkMultiBlockDataSet* output,
567 const label datasetNo
572 void convertPointFields
577 vtkMultiBlockDataSet* output
582 void convertPointFieldBlock
585 vtkMultiBlockDataSet* output,
592 void convertPointField
596 vtkMultiBlockDataSet* output,
598 const label datasetNo,
604 void convertPatchPointField
608 vtkMultiBlockDataSet* output,
610 const label datasetNo
617 static void pruneObjectList
624 static wordHashSet getSelected(vtkDataArraySelection*);
629 vtkDataArraySelection*,
634 static stringList getSelectedArrayEntries(vtkDataArraySelection*);
639 vtkDataArraySelection*,
644 static void setSelectedArrayEntries
646 vtkDataArraySelection*,
651 word getPartName(
const int);
673 const char*
const FileName,
674 vtkPVFoamReader* reader
689 vtkMultiBlockDataSet* output,
690 vtkMultiBlockDataSet* lagrangianOutput
706 int setTime(
int count,
const double requestTimes[]);
719 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...
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.
Provides a reader interface for OpenFOAM to VTK interaction.
double * findTimes(int &nTimeSteps)
Allocate and return a list of selected times.
labelList pointLabels(nPoints,-1)
void renderPatchNames(vtkRenderer *, const bool show)
Add/remove patch names to/from the view.
const word cloudName(propsDict.lookup("cloudName"))
Generic GeometricField class.
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.
int timeIndex() const
The current time index.
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.
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...
void PrintSelf(ostream &, vtkIndent) const
Debug information.
Macro definitions for declaring ClassName(), NamespaceName(), etc.
Mesh data needed to do the Finite Volume discretisation.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A primitive field of type <T> with automated input and output.