VTK  9.4.20250413
vtkMPIMultiBlockPLOT3DReader.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
13#ifndef vtkMPIMultiBlockPLOT3DReader_h
14#define vtkMPIMultiBlockPLOT3DReader_h
15
16#include "vtkIOMPIParallelModule.h" // For export macro
18
19VTK_ABI_NAMESPACE_BEGIN
20class VTKIOMPIPARALLEL_EXPORT vtkMPIMultiBlockPLOT3DReader : public vtkMultiBlockPLOT3DReader
21{
22public:
25 void PrintSelf(ostream& os, vtkIndent indent) override;
26
28
32 vtkSetMacro(UseMPIIO, bool);
33 vtkGetMacro(UseMPIIO, bool);
34 vtkBooleanMacro(UseMPIIO, bool);
36
37protected:
40
46
47 int OpenFileForDataRead(void*& fp, const char* fname) override;
48 void CloseFile(void* fp) override;
49
50 int ReadIntScalar(void* vfp, int extent[6], int wextent[6], vtkDataArray* scalar,
51 vtkTypeUInt64 offset, const vtkMultiBlockPLOT3DReaderRecord& currentRecord) override;
52 int ReadScalar(void* vfp, int extent[6], int wextent[6], vtkDataArray* scalar,
53 vtkTypeUInt64 offset, const vtkMultiBlockPLOT3DReaderRecord& currentRecord) override;
54 int ReadVector(void* vfp, int extent[6], int wextent[6], int numDims, vtkDataArray* vector,
55 vtkTypeUInt64 offset, const vtkMultiBlockPLOT3DReaderRecord& currentRecord) override;
57
58private:
60 void operator=(const vtkMPIMultiBlockPLOT3DReader&) = delete;
61};
62
63VTK_ABI_NAMESPACE_END
64#endif
abstract superclass for arrays of numeric data
a simple class to control print indentation
Definition vtkIndent.h:108
vtkMultiBlockPLOT3DReader subclass that uses MPI-IO to efficiently read binary files for 3D domains i...
void CloseFile(void *fp) override
int ReadIntScalar(void *vfp, int extent[6], int wextent[6], vtkDataArray *scalar, vtkTypeUInt64 offset, const vtkMultiBlockPLOT3DReaderRecord &currentRecord) override
static vtkMPIMultiBlockPLOT3DReader * New()
int OpenFileForDataRead(void *&fp, const char *fname) override
~vtkMPIMultiBlockPLOT3DReader() override
int ReadVector(void *vfp, int extent[6], int wextent[6], int numDims, vtkDataArray *vector, vtkTypeUInt64 offset, const vtkMultiBlockPLOT3DReaderRecord &currentRecord) override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int ReadScalar(void *vfp, int extent[6], int wextent[6], vtkDataArray *scalar, vtkTypeUInt64 offset, const vtkMultiBlockPLOT3DReaderRecord &currentRecord) override
bool CanUseMPIIO()
Determines we should use MPI-IO for the current file.