VTK  9.2.20221001
vtkAMREnzoParticlesReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAMREnzoParticlesReader.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14  =========================================================================*/
26 #ifndef vtkAMREnzoParticlesReader_h
27 #define vtkAMREnzoParticlesReader_h
28 
30 #include "vtkIOAMRModule.h" // For export macro
31 
32 VTK_ABI_NAMESPACE_BEGIN
33 class vtkPolyData;
34 class vtkDataArray;
35 class vtkIntArray;
37 
39 {
40 public:
43  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
46 
49  vtkSetMacro(ParticleType, int);
50  vtkGetMacro(ParticleType, int);
52 
56  int GetTotalNumberOfParticles() override;
57 
58 protected:
61 
66  vtkPolyData* GetParticles(const char* file, const int blockIdx);
67 
71  void ReadMetaData() override;
72 
76  void SetupParticleDataSelections() override;
77 
82  bool CheckParticleType(const int pIdx, vtkIntArray* ptypes);
83 
87  vtkDataArray* GetParticlesTypeArray(const int blockIdx);
88 
92  vtkPolyData* ReadParticles(const int blkidx) override;
93 
95 
97 
98 private:
100  void operator=(const vtkAMREnzoParticlesReader&) = delete;
101 };
102 
103 VTK_ABI_NAMESPACE_END
104 #endif /* vtkAMREnzoParticlesReader_h */
An abstract base class that implements all the common functionality for all particle readers.
A concrete instance of the vtkAMRBaseParticlesReader which provides functionality for loading ENZO AM...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkAMREnzoParticlesReader * New()
vtkEnzoReaderInternal * Internal
vtkDataArray * GetParticlesTypeArray(const int blockIdx)
Returns the ParticlesType Array.
vtkPolyData * ReadParticles(const int blkidx) override
Reads the particles.
~vtkAMREnzoParticlesReader() override
bool CheckParticleType(const int pIdx, vtkIntArray *ptypes)
Filter's by particle type, iff particle_type is included in the given file.
void ReadMetaData() override
See vtkAMRBaseParticlesReader::ReadMetaData()
void SetupParticleDataSelections() override
See vtkAMRBaseParticlesReader::SetupParticleDataSelections.
int GetTotalNumberOfParticles() override
See vtkAMRBaseParticlesReader::GetTotalNumberOfParticles.
vtkPolyData * GetParticles(const char *file, const int blockIdx)
Read the particles from the given particles file for the block corresponding to the given block index...
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:166
a simple class to control print indentation
Definition: vtkIndent.h:120
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:156
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:201