30 #ifndef vtkXMLWriter_h
31 #define vtkXMLWriter_h
34 #include "vtkIOXMLModule.h"
116 vtkSetMacro(ByteOrder,
int);
117 vtkGetMacro(ByteOrder,
int);
128 vtkGetMacro(HeaderType,
int);
139 vtkGetMacro(IdType,
int);
148 vtkSetStringMacro(FileName);
149 vtkGetStringMacro(FileName);
190 vtkGetMacro(CompressionLevel,
int);
201 vtkGetMacro(BlockSize,
size_t);
210 vtkSetMacro(DataMode,
int);
211 vtkGetMacro(DataMode,
int);
260 vtkGetMacro(NumberOfTimeSteps,
int);
261 vtkSetMacro(NumberOfTimeSteps,
int);
320 #if VTK_SIZEOF_SHORT == 4
321 typedef short Int32IdType;
322 #elif VTK_SIZEOF_INT == 4
323 typedef int Int32IdType;
324 #elif VTK_SIZEOF_LONG == 4
325 typedef long Int32IdType;
327 #error "No native data type can represent a signed 32-bit integer."
344 int CompressionLevel = 5;
392 vtkTypeInt64 streamPos, vtkTypeInt64& lastoffset,
const char* attr =
nullptr);
394 vtkTypeInt64 streamPos, vtkTypeInt64
offset,
const char* attr =
nullptr);
400 #ifdef VTK_USE_64BIT_IDS
407 #ifdef VTK_USE_64BIT_IDS
419 int writeNumTuples,
int timestep);
423 const char* alternateName =
nullptr,
int writeNumTuples = 0);
427 const char* alternateName =
nullptr,
int writeNumTuples = 0,
int timestep = 0);
480 float ProgressRange[2];
514 friend class vtkXMLWriterHelper;
Helper class due to PIMPL excess.
Abstract superclass for all arrays.
Superclass for all sources, filters, and sinks in VTK.
Implementation template for a array iterator.
Abstract superclass to iterate over elements in an vtkAbstractArray.
represent and manipulate cell attribute data
abstract superclass for arrays of numeric data
Abstract interface for data compression classes.
general representation of visualization data
represent and manipulate attribute data in a dataset
abstract class to specify dataset behavior
represent and manipulate fields of data
a simple class to control print indentation
Wraps a binary output stream with a VTK interface.
represent and manipulate point attribute data
represent and manipulate 3D points
Wrapper around std::string to keep symbols short.
Superclass for VTK's XML file writers.
virtual int GetDataSetMajorVersion()
int WriteBinaryDataInternal(vtkAbstractArray *a)
int WriteBinaryDataBlock(unsigned char *in_data, size_t numWords, int wordType)
void WriteFieldData(vtkIndent indent)
void SetInputData(vtkDataObject *)
Assign a data object as input.
void SetCompressorTypeToLZ4()
virtual int GetDataSetMinorVersion()
virtual void SetCompressor(vtkDataCompressor *)
Get/Set the compressor used to compress binary and appended data before writing to the file.
vtkTypeBool WriteToOutputString
void SetByteOrderToLittleEndian()
void SetCompressorTypeToZLib()
int WriteBinaryData(vtkAbstractArray *a)
unsigned char * ByteSwapBuffer
void WritePCellData(vtkCellData *cd, vtkIndent indent)
vtkDataObject * GetInput(int port)
int UserContinueExecuting
void SetCompressorTypeToLZMA()
vtkTypeBool EncodeAppendedData
vtkDataObject * GetInput()
void WriteArrayAppendedData(vtkAbstractArray *a, vtkTypeInt64 pos, vtkTypeInt64 &lastoffset)
int WriteCompressionHeader()
void WriteFieldDataAppendedData(vtkFieldData *fd, int timestep, OffsetsManagerGroup *fdManager)
int WriteScalarAttribute(const char *name, int data)
void DestroyStringArray(int numStrings, char **strings)
vtkXMLDataHeader * CompressionHeader
void ForwardAppendedDataDouble(vtkTypeInt64 streamPos, double value, const char *attr)
void WritePointDataAppended(vtkPointData *pd, vtkIndent indent, OffsetsManagerGroup *pdManager)
int Write()
Invoke the writer.
void WritePPointData(vtkPointData *pd, vtkIndent indent)
void WritePPoints(vtkPoints *points, vtkIndent indent)
vtkTypeInt64 AppendedDataPosition
void SetCompressorTypeToNone()
void WriteFieldDataAppended(vtkFieldData *fd, vtkIndent indent, OffsetsManagerGroup *fdManager)
int WriteStringAttribute(const char *name, const char *value)
bool WriteInformation(vtkInformation *info, vtkIndent indent)
int WriteCompressionBlock(unsigned char *data, size_t size)
void SetDataModeToBinary()
size_t GetOutputWordTypeSize(int dataType)
void UpdateFieldData(vtkFieldData *)
std::ostringstream * OutStringStream
int WriteVectorAttribute(const char *name, int length, int *data)
void SetInputData(int, vtkDataObject *)
virtual void UpdateProgressDiscrete(float progress)
void ForwardAppendedDataOffset(vtkTypeInt64 streamPos, vtkTypeInt64 offset, const char *attr=nullptr)
void WritePointsAppended(vtkPoints *points, vtkIndent indent, OffsetsManager *manager)
int WriteVectorAttribute(const char *name, int length, float *data)
int WriteDataModeAttribute(const char *name)
void WritePArray(vtkAbstractArray *a, vtkIndent indent, const char *alternateName=nullptr)
void Start()
API to interface an outside the VTK pipeline control.
void WritePointsAppendedData(vtkPoints *points, int timestep, OffsetsManager *pdManager)
void WriteCoordinatesAppendedData(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, int timestep, OffsetsManagerGroup *coordManager)
Int32IdType * Int32IdTypeBuffer
void SetDataModeToAppended()
void SetCompressorType(int compressorType)
Convenience functions to set the compressor to certain known types.
void WriteArrayHeader(vtkAbstractArray *a, vtkIndent indent, const char *alternateName, int writeNumTuples, int timestep)
virtual void WriteArrayInline(vtkAbstractArray *a, vtkIndent indent, const char *alternateName=nullptr, int writeNumTuples=0)
void WritePointsInline(vtkPoints *points, vtkIndent indent)
virtual void SetProgressRange(const float range[2], int curStep, const float *fractions)
void SetHeaderTypeToUInt32()
vtkTypeInt64 GetAppendedDataOffset()
void WriteCellDataAppendedData(vtkCellData *cd, int timestep, OffsetsManagerGroup *cdManager)
virtual void SetDataStream(vtkOutputStream *)
int WriteVectorAttribute(const char *name, int length, double *data)
vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
void SetHeaderTypeToUInt64()
int WriteScalarAttribute(const char *name, double data)
void WriteCellDataAppended(vtkCellData *cd, vtkIndent indent, OffsetsManagerGroup *cdManager)
virtual void WriteFileAttributes()
vtkDataSet * GetInputAsDataSet()
void WritePCoordinates(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, vtkIndent indent)
void WriteCoordinatesInline(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, vtkIndent indent)
void SetByteOrderToBigEndian()
vtkTypeInt64 * NumberOfTimeValues
void WriteCoordinatesAppended(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, vtkIndent indent, OffsetsManagerGroup *coordManager)
size_t CompressionBlockNumber
vtkOutputStream * DataStream
void WriteFieldDataInline(vtkFieldData *fd, vtkIndent indent)
void WritePointDataInline(vtkPointData *pd, vtkIndent indent)
std::string GetOutputString()
void WriteArrayAppended(vtkAbstractArray *a, vtkIndent indent, OffsetsManager &offs, const char *alternateName=nullptr, int writeNumTuples=0, int timestep=0)
OffsetsManagerGroup * FieldDataOM
const char * GetWordTypeName(int dataType)
virtual void GetProgressRange(float range[2])
vtkTypeInt64 ReserveAttributeSpace(const char *attr, size_t length=20)
void SetCompressionLevel(int compressorLevel)
virtual void SetProgressRange(const float range[2], int curStep, int numSteps)
virtual void WriteInlineData(vtkAbstractArray *a, vtkIndent indent)
int CreateCompressionHeader(size_t size)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkDataCompressor * Compressor
virtual const char * GetDataSetName()=0
virtual int WritePrimaryElement(ostream &os, vtkIndent indent)
virtual const char * GetDefaultFileExtension()=0
Get the default file extension for files written by this writer.
virtual void SetProgressPartial(float fraction)
int WriteScalarAttribute(const char *name, float data)
void WriteNextTime(double time)
void DeleteAFile(const char *name)
void WritePointDataAppendedData(vtkPointData *pd, int timestep, OffsetsManagerGroup *pdManager)
virtual void SetBlockSize(size_t blockSize)
Get/Set the block size used in compression.
virtual void SetIdType(int)
Get/Set the size of the vtkIdType values stored in the file.
vtkTypeInt64 CompressionHeaderPosition
void SetDataModeToAscii()
void WriteAppendedDataOffset(vtkTypeInt64 streamPos, vtkTypeInt64 &lastoffset, const char *attr=nullptr)
void WriteAttributeIndices(vtkDataSetAttributes *dsa, char **names)
int WriteAsciiData(vtkAbstractArray *a, vtkIndent indent)
char ** CreateStringArray(int numStrings)
virtual void WriteArrayFooter(ostream &os, vtkIndent indent, vtkAbstractArray *a, int shortFormat)
size_t GetWordTypeSize(int dataType)
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual void WritePrimaryElementAttributes(ostream &os, vtkIndent indent)
virtual void SetHeaderType(int)
Get/Set the binary data header word type.
virtual int WriteInternal()
void WriteCellDataInline(vtkCellData *cd, vtkIndent indent)
int WriteWordTypeAttribute(const char *name, int dataType)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
void PerformByteSwap(void *data, size_t numWords, size_t wordSize)