59 #ifndef VTK_EXCLUDE_STRSTREAM_HEADERS
60 #define VTK_EXCLUDE_STRSTREAM_HEADERS
75 class vtkDataArraySelection;
78 class vtkPVFoamReader;
81 class vtkMultiBlockDataSet;
83 class vtkUnstructuredGrid;
118 arrayRange(
const char *
name,
const int blockNo=0)
133 int block(
int blockNo)
141 const char*
name()
const
155 return start_ + size_;
170 void reset(
const int startAt = 0)
177 void operator+=(
const int n)
211 return addPointCellLabels_;
215 const labelList& addPointCellLabels()
const
217 return addPointCellLabels_;
237 addPointCellLabels_.
clear();
246 vtkPVFoamReader* reader_;
281 arrayRange arrayRangeVolume_;
282 arrayRange arrayRangePatches_;
283 arrayRange arrayRangeLagrangian_;
284 arrayRange arrayRangeCellZones_;
285 arrayRange arrayRangeFaceZones_;
286 arrayRange arrayRangePointZones_;
287 arrayRange arrayRangeCellSets_;
288 arrayRange arrayRangeFaceSets_;
289 arrayRange arrayRangePointSets_;
308 static void AddToBlock
310 vtkMultiBlockDataSet* output,
313 const label datasetNo,
314 const std::string& datasetName
319 static vtkDataSet* GetDataSetFromBlock
321 vtkMultiBlockDataSet* output,
323 const label datasetNo
328 static label GetNumberOfDataSets
330 vtkMultiBlockDataSet* output,
335 void resetCounters();
340 void topoChangePartsStatus();
343 void updateInfoInternalMesh(vtkDataArraySelection*);
346 void updateInfoLagrangian(vtkDataArraySelection*);
349 void updateInfoPatches
351 vtkDataArraySelection*,
357 void updateInfoSets(vtkDataArraySelection*);
360 void updateInfoZones(vtkDataArraySelection*);
366 template<
class ZoneType>
376 vtkDataArraySelection*,
382 template<
template<
class>
class patchType,
class meshType>
383 void addFieldsToSelection
385 vtkDataArraySelection *select,
391 template<
template<
class>
class patchType,
class meshType>
392 void addInternalFieldsToSelection
394 vtkDataArraySelection *select,
400 void updateInfoFields();
403 void updateInfoLagrangianFields();
409 void updateFoamMesh();
415 void updateVolFields(vtkMultiBlockDataSet*);
418 void updatePointFields(vtkMultiBlockDataSet*);
421 void updateLagrangianFields(vtkMultiBlockDataSet*);
427 void convertMeshVolume(vtkMultiBlockDataSet*,
int& blockNo);
430 void convertMeshLagrangian(vtkMultiBlockDataSet*,
int& blockNo);
433 void convertMeshPatches(vtkMultiBlockDataSet*,
int& blockNo);
436 void convertMeshCellZones(vtkMultiBlockDataSet*,
int& blockNo);
439 void convertMeshFaceZones(vtkMultiBlockDataSet*,
int& blockNo);
442 void convertMeshPointZones(vtkMultiBlockDataSet*,
int& blockNo);
445 void convertMeshCellSets(vtkMultiBlockDataSet*,
int& blockNo);
448 void convertMeshFaceSets(vtkMultiBlockDataSet*,
int& blockNo);
451 void convertMeshPointSets(vtkMultiBlockDataSet*,
int& blockNo);
457 vtkUnstructuredGrid* volumeVTKMesh(
const fvMesh&, polyDecomp&);
460 vtkPolyData* lagrangianVTKMesh
467 template<
class PatchType>
468 vtkPolyData* patchVTKMesh(
const word&
name,
const PatchType&);
471 vtkPolyData* pointZoneVTKMesh
478 vtkPolyData* faceSetVTKMesh
485 vtkPolyData* pointSetVTKMesh
494 void convertFields(vtkMultiBlockDataSet*);
497 void convertLagrangianFields(vtkMultiBlockDataSet*);
502 template<
class GeoField>
503 label addObjectsToSelection
505 vtkDataArraySelection*,
515 void convertVolFields
520 const bool interpFields,
521 vtkMultiBlockDataSet* output
526 void convertVolInternalFields
530 vtkMultiBlockDataSet* output
535 void convertVolFieldBlock
539 vtkMultiBlockDataSet* output,
546 void convertVolInternalFieldBlock
550 vtkMultiBlockDataSet* output,
557 void convertVolInternalField
561 vtkMultiBlockDataSet* output,
563 const label datasetNo,
569 void convertPatchField
573 vtkMultiBlockDataSet* output,
575 const label datasetNo
580 void convertSurfaceField
583 vtkMultiBlockDataSet* output,
585 const label datasetNo,
592 void convertSurfaceField
595 vtkMultiBlockDataSet* output,
596 const arrayRange&
range,
597 const label datasetNo,
604 void convertSurfaceFields
608 vtkMultiBlockDataSet* output
613 void convertLagrangianFields
616 vtkMultiBlockDataSet* output,
617 const label datasetNo
622 void convertLagrangianField
625 vtkMultiBlockDataSet* output,
627 const label datasetNo
632 void convertPointFields
637 vtkMultiBlockDataSet* output
642 void convertPointFieldBlock
645 vtkMultiBlockDataSet* output,
652 void convertPointField
656 vtkMultiBlockDataSet* output,
658 const label datasetNo,
664 void convertPatchPointField
668 vtkMultiBlockDataSet* output,
670 const label datasetNo
677 static void pruneObjectList
693 static wordHashSet getSelected(vtkDataArraySelection*);
698 vtkDataArraySelection*,
703 static stringList getSelectedArrayEntries(vtkDataArraySelection*);
708 vtkDataArraySelection*,
713 static void setSelectedArrayEntries
715 vtkDataArraySelection*,
720 word getPartName(
const int);
735 const char*
const FileName,
736 vtkPVFoamReader* reader
755 vtkMultiBlockDataSet* output,
756 vtkMultiBlockDataSet* lagrangianOutput
784 void PrintSelf(ostream&, vtkIndent)
const;
Pre-declare SubField and related Field type.
Generic GeometricField class.
A HashTable with keys but without contents.
A primitive field of type <Type> with automated input and output.
List of IOobjects with searching and retrieving facilities.
void clear()
Clear the list, i.e. set size to zero.
Interpolation class within a primitive patch. Allows interpolation from points to faces and vice vers...
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Creates a single block of cells from point coordinates, numbers of cells in each direction and an exp...
A list of keyword definitions, which are a keyword followed by any number of values (e....
A class for handling file names.
Mesh data needed to do the Finite Volume discretisation.
Mesh representing a set of points created from polyMesh.
static const string null
An empty string.
Provides a reader interface for OpenFOAM to VTK interaction.
ClassName("vtkPVFoam")
Static data members.
int setTime(int count, const double requestTimes[])
Set the runTime to the first plausible request time,.
void operator=(const vtkPVFoam &)=delete
Disallow default bitwise assignment.
void PrintSelf(ostream &, vtkIndent) const
Debug information.
int timeIndex() const
The current time index.
void renderPatchNames(vtkRenderer *, const bool show)
Add/remove patch names to/from the view.
vtkPVFoam(const char *const FileName, vtkPVFoamReader *reader)
Construct from components.
void CleanUp()
Clean any storage.
static void printMemory()
Simple memory used debugging information.
double * findTimes(int &nTimeSteps)
Allocate and return a list of selected times.
void Update(vtkMultiBlockDataSet *output, vtkMultiBlockDataSet *lagrangianOutput)
Update.
void updateInfo()
Update information for selection dialogs.
A class for handling words, derived from string.
Macro definitions for declaring ClassName(), NamespaceName(), etc.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
word name(const bool)
Return a word representation of a bool.
label count(const ListType &l, typename ListType::const_reference x)
Count the number of occurrences of a value in a list.
labelList pointLabels(nPoints, -1)
const word cloudName(propsDict.lookup("cloudName"))