59 #ifndef VTK_EXCLUDE_STRSTREAM_HEADERS 60 #define VTK_EXCLUDE_STRSTREAM_HEADERS 75 class vtkDataArraySelection;
78 class vtkPVFoamReader;
81 class vtkMultiBlockDataSet;
83 class vtkUnstructuredGrid;
100 template<
class Type>
class IOField;
101 template<
class Type>
class List;
121 arrayRange(
const char *
name,
const int blockNo=0)
136 int block(
int blockNo)
144 const char*
name()
const 158 return start_ + size_;
173 void reset(
const int startAt = 0)
180 void operator+=(
const int n)
214 return addPointCellLabels_;
218 const labelList& addPointCellLabels()
const 220 return addPointCellLabels_;
240 addPointCellLabels_.
clear();
249 vtkPVFoamReader* reader_;
284 arrayRange arrayRangeVolume_;
285 arrayRange arrayRangePatches_;
286 arrayRange arrayRangeLagrangian_;
287 arrayRange arrayRangeCellZones_;
288 arrayRange arrayRangeFaceZones_;
289 arrayRange arrayRangePointZones_;
290 arrayRange arrayRangeCellSets_;
291 arrayRange arrayRangeFaceSets_;
292 arrayRange arrayRangePointSets_;
311 static void AddToBlock
313 vtkMultiBlockDataSet* output,
316 const label datasetNo,
317 const std::string& datasetName
322 static vtkDataSet* GetDataSetFromBlock
324 vtkMultiBlockDataSet* output,
326 const label datasetNo
331 static label GetNumberOfDataSets
333 vtkMultiBlockDataSet* output,
338 void resetCounters();
343 void updateMeshPartsStatus();
346 void updateInfoInternalMesh(vtkDataArraySelection*);
349 void updateInfoLagrangian(vtkDataArraySelection*);
352 void updateInfoPatches
354 vtkDataArraySelection*,
360 void updateInfoSets(vtkDataArraySelection*);
363 void updateInfoZones(vtkDataArraySelection*);
369 template<
class ZoneType>
379 vtkDataArraySelection*,
385 template<
template<
class>
class patchType,
class meshType>
386 void addFieldsToSelection
388 vtkDataArraySelection *select,
394 template<
template<
class>
class patchType,
class meshType>
395 void addInternalFieldsToSelection
397 vtkDataArraySelection *select,
403 void updateInfoFields();
406 void updateInfoLagrangianFields();
412 void updateFoamMesh();
418 void updateVolFields(vtkMultiBlockDataSet*);
421 void updatePointFields(vtkMultiBlockDataSet*);
424 void updateLagrangianFields(vtkMultiBlockDataSet*);
430 void convertMeshVolume(vtkMultiBlockDataSet*,
int& blockNo);
433 void convertMeshLagrangian(vtkMultiBlockDataSet*,
int& blockNo);
436 void convertMeshPatches(vtkMultiBlockDataSet*,
int& blockNo);
439 void convertMeshCellZones(vtkMultiBlockDataSet*,
int& blockNo);
442 void convertMeshFaceZones(vtkMultiBlockDataSet*,
int& blockNo);
445 void convertMeshPointZones(vtkMultiBlockDataSet*,
int& blockNo);
448 void convertMeshCellSets(vtkMultiBlockDataSet*,
int& blockNo);
451 void convertMeshFaceSets(vtkMultiBlockDataSet*,
int& blockNo);
454 void convertMeshPointSets(vtkMultiBlockDataSet*,
int& blockNo);
460 vtkUnstructuredGrid* volumeVTKMesh(
const fvMesh&, polyDecomp&);
463 vtkPolyData* lagrangianVTKMesh
470 template<
class PatchType>
471 vtkPolyData* patchVTKMesh(
const word&
name,
const PatchType&);
474 vtkPolyData* pointZoneVTKMesh
481 vtkPolyData* faceSetVTKMesh
488 vtkPolyData* pointSetVTKMesh
497 void convertFields(vtkMultiBlockDataSet*);
500 void convertLagrangianFields(vtkMultiBlockDataSet*);
505 template<
class GeoField>
506 label addObjectsToSelection
508 vtkDataArraySelection*,
518 void convertVolFields
523 const bool interpFields,
524 vtkMultiBlockDataSet* output
529 void convertVolInternalFields
533 vtkMultiBlockDataSet* output
538 void convertVolFieldBlock
542 vtkMultiBlockDataSet* output,
549 void convertVolInternalFieldBlock
553 vtkMultiBlockDataSet* output,
560 void convertVolInternalField
564 vtkMultiBlockDataSet* output,
566 const label datasetNo,
572 void convertPatchField
576 vtkMultiBlockDataSet* output,
578 const label datasetNo
583 void convertSurfaceField
586 vtkMultiBlockDataSet* output,
588 const label datasetNo,
595 void convertSurfaceField
598 vtkMultiBlockDataSet* output,
599 const arrayRange&
range,
600 const label datasetNo,
607 void convertSurfaceFields
611 vtkMultiBlockDataSet* output
616 void convertLagrangianFields
619 vtkMultiBlockDataSet* output,
620 const label datasetNo
625 void convertLagrangianField
628 vtkMultiBlockDataSet* output,
630 const label datasetNo
635 void convertPointFields
640 vtkMultiBlockDataSet* output
645 void convertPointFieldBlock
648 vtkMultiBlockDataSet* output,
655 void convertPointField
659 vtkMultiBlockDataSet* output,
661 const label datasetNo,
667 void convertPatchPointField
671 vtkMultiBlockDataSet* output,
673 const label datasetNo
680 static void pruneObjectList
696 static wordHashSet getSelected(vtkDataArraySelection*);
701 vtkDataArraySelection*,
706 static stringList getSelectedArrayEntries(vtkDataArraySelection*);
711 vtkDataArraySelection*,
716 static void setSelectedArrayEntries
718 vtkDataArraySelection*,
723 word getPartName(
const int);
738 const char*
const FileName,
739 vtkPVFoamReader* reader
757 vtkMultiBlockDataSet* output,
758 vtkMultiBlockDataSet* lagrangianOutput
787 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.
A class for handling file names.
List of IOobjects with searching and retrieving facilities.
static void printMemory()
Simple memory used debugging information.
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.
label count(const ListType &l, typename ListType::const_reference x)
Count the number of occurrences of a value in a list.
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.