Go to the documentation of this file.
25 #ifndef vtkXMLWriter_h
26 #define vtkXMLWriter_h
28 #include "vtkIOXMLModule.h"
62 enum { BigEndian, LittleEndian };
77 enum { Int32=32, Int64=64 };
84 enum { UInt32=32, UInt64=64 };
92 vtkGetMacro(ByteOrder,
int);
103 vtkGetMacro(HeaderType,
int);
114 vtkGetMacro(IdType,
int);
123 vtkSetStringMacro(FileName);
132 vtkGetMacro(WriteToOutputString,
int);
159 this->SetCompressorType(NONE);
163 this->SetCompressorType(ZLIB);
175 vtkGetMacro(BlockSize,
size_t);
185 vtkGetMacro(DataMode,
int);
200 vtkGetMacro(EncodeAppendedData,
int);
236 vtkGetMacro(NumberOfTimeSteps,
int);
299 # if VTK_SIZEOF_SHORT == 4
300 typedef short Int32IdType;
301 # elif VTK_SIZEOF_INT == 4
302 typedef int Int32IdType;
303 # elif VTK_SIZEOF_LONG == 4
304 typedef long Int32IdType;
306 # error "No native data type can represent a signed 32-bit integer."
368 vtkTypeInt64 &lastoffset,
380 #ifdef VTK_USE_64BIT_IDS
387 #ifdef VTK_USE_64BIT_IDS
399 const char* alternateName,
int writeNumTuples,
int timestep);
402 const char* alternateName=0,
int writeNumTuples=0);
406 OffsetsManager &offs,
const char* alternateName=0,
int writeNumTuples=0,
412 vtkTypeInt64 &lastoffset);
447 const char* alternateName=0);
471 float ProgressRange[2];
501 friend class vtkXMLWriterHelper;
505 void operator=(
const vtkXMLWriter&) VTK_DELETE_FUNCTION;
represent and manipulate 3D points
void PerformByteSwap(void *data, size_t numWords, size_t wordSize)
int WriteVectorAttribute(const char *name, int length, int *data)
size_t CompressionBlockNumber
void WriteCellDataAppended(vtkCellData *cd, vtkIndent indent, OffsetsManagerGroup *cdManager)
virtual void SetIdType(int)
Get/Set the size of the vtkIdType values stored in the file.
vtkDataObject * GetInput(int port)
std::string GetOutputString()
std::ostringstream * OutStringStream
virtual const char * GetDefaultFileExtension()=0
Get the default file extension for files written by this writer.
const char * GetWordTypeName(int dataType)
void SetCompressorTypeToZLib()
int CreateCompressionHeader(size_t size)
bool WriteInformation(vtkInformation *info, vtkIndent indent)
void WritePCellData(vtkCellData *cd, vtkIndent indent)
void WritePointDataAppendedData(vtkPointData *pd, int timestep, OffsetsManagerGroup *pdManager)
void WriteFieldDataInline(vtkFieldData *fd, vtkIndent indent)
represent and manipulate point attribute data
virtual int ProcessRequest(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
void WriteAttributeIndices(vtkDataSetAttributes *dsa, char **names)
void SetByteOrderToLittleEndian()
virtual void WritePrimaryElementAttributes(ostream &os, vtkIndent indent)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Superclass for all sources, filters, and sinks in VTK.
represent and manipulate attribute data in a dataset
vtkXMLDataHeader * CompressionHeader
void SetDataModeToAppended()
size_t GetOutputWordTypeSize(int dataType)
virtual int WritePrimaryElement(ostream &os, vtkIndent indent)
Implementation template for a array iterator.
int WriteBinaryDataInternal(vtkAbstractArray *a)
int Write()
Invoke the writer.
void SetDataModeToAscii()
char ** CreateStringArray(int numStrings)
void WriteAppendedDataOffset(vtkTypeInt64 streamPos, vtkTypeInt64 &lastoffset, const char *attr=0)
void SetByteOrderToBigEndian()
int WriteStringAttribute(const char *name, const char *value)
abstract superclass for arrays of numeric data
virtual int GetDataSetMinorVersion()
virtual void SetDataStream(vtkOutputStream *)
virtual int WriteInternal()
represent and manipulate fields of data
virtual void SetProgressRange(const float range[2], int curStep, const float *fractions)
virtual void WriteArrayFooter(ostream &os, vtkIndent indent, vtkAbstractArray *a, int shortFormat)
int WriteVectorAttribute(const char *name, int length, float *data)
void Start()
API to interface an outside the VTK pipeline control.
virtual void SetProgressPartial(float fraction)
OffsetsManagerGroup * FieldDataOM
vtkDataCompressor * Compressor
void WritePointsAppended(vtkPoints *points, vtkIndent indent, OffsetsManager *manager)
int WriteVectorAttribute(const char *name, int length, double *data)
int WriteScalarAttribute(const char *name, int data)
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Int32IdType * Int32IdTypeBuffer
void WritePointDataAppended(vtkPointData *pd, vtkIndent indent, OffsetsManagerGroup *pdManager)
Superclass for VTK's XML file writers.
virtual void UpdateProgressDiscrete(float progress)
int WriteWordTypeAttribute(const char *name, int dataType)
virtual void WriteArrayInline(vtkAbstractArray *a, vtkIndent indent, const char *alternateName=0, int writeNumTuples=0)
virtual void SetBlockSize(size_t blockSize)
Get/Set the block size used in compression.
int WriteBinaryData(vtkAbstractArray *a)
void WriteArrayHeader(vtkAbstractArray *a, vtkIndent indent, const char *alternateName, int writeNumTuples, int timestep)
represent and manipulate cell attribute data
void WritePCoordinates(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, vtkIndent indent)
void WritePointDataInline(vtkPointData *pd, vtkIndent indent)
int UserContinueExecuting
a simple class to control print indentation
virtual int GetDataSetMajorVersion()
void SetCompressorTypeToNone()
void WriteCoordinatesInline(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, vtkIndent indent)
void SetDataModeToBinary()
virtual const char * GetDataSetName()=0
void WriteCellDataAppendedData(vtkCellData *cd, int timestep, OffsetsManagerGroup *cdManager)
virtual void GetProgressRange(float range[2])
void WriteArrayAppended(vtkAbstractArray *a, vtkIndent indent, OffsetsManager &offs, const char *alternateName=0, int writeNumTuples=0, int timestep=0)
vtkTypeInt64 * NumberOfTimeValues
Abstract interface for data compression classes.
vtkTypeInt64 AppendedDataPosition
void WriteCoordinatesAppendedData(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, int timestep, OffsetsManagerGroup *coordManager)
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
void DeleteAFile(const char *name)
void ForwardAppendedDataOffset(vtkTypeInt64 streamPos, vtkTypeInt64 offset, const char *attr=0)
void WriteCellDataInline(vtkCellData *cd, vtkIndent indent)
vtkDataObject * GetInput()
int WriteCompressionHeader()
virtual void WriteFileAttributes()
int WriteAsciiData(vtkAbstractArray *a, vtkIndent indent)
abstract class to specify dataset behavior
Abstract superclass for all arrays.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
void WriteFieldData(vtkIndent indent)
void SetInputData(int, vtkDataObject *)
int WriteScalarAttribute(const char *name, double data)
void WritePointsAppendedData(vtkPoints *points, int timestep, OffsetsManager *pdManager)
vtkTypeInt64 ReserveAttributeSpace(const char *attr, size_t length=20)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
unsigned char * ByteSwapBuffer
void WritePPointData(vtkPointData *pd, vtkIndent indent)
void WriteNextTime(double time)
void WriteFieldDataAppended(vtkFieldData *fd, vtkIndent indent, OffsetsManagerGroup *fdManager)
void WriteFieldDataAppendedData(vtkFieldData *fd, int timestep, OffsetsManagerGroup *fdManager)
int WriteCompressionBlock(unsigned char *data, size_t size)
Abstract superclass to iterate over elements in an vtkAbstractArray.
void SetHeaderTypeToUInt32()
void WriteCoordinatesAppended(vtkDataArray *xc, vtkDataArray *yc, vtkDataArray *zc, vtkIndent indent, OffsetsManagerGroup *coordManager)
int WriteScalarAttribute(const char *name, float data)
void SetCompressorType(int compressorType)
Convenience functions to set the compressor to certain known types.
vtkTypeInt64 GetAppendedDataOffset()
size_t GetWordTypeSize(int dataType)
void WritePPoints(vtkPoints *points, vtkIndent indent)
Wraps a binary output stream with a VTK interface.
void WriteArrayAppendedData(vtkAbstractArray *a, vtkTypeInt64 pos, vtkTypeInt64 &lastoffset)
vtkOutputStream * DataStream
void SetInputData(vtkDataObject *)
Assign a data object as input.
void WritePointsInline(vtkPoints *points, vtkIndent indent)
Helper class due to PIMPL excess.
virtual void SetHeaderType(int)
Get/Set the binary data header word type.
void WritePArray(vtkAbstractArray *a, vtkIndent indent, const char *alternateName=0)
void ForwardAppendedDataDouble(vtkTypeInt64 streamPos, double value, const char *attr)
Wrapper around std::string to keep symbols short.
virtual void SetProgressRange(const float range[2], int curStep, int numSteps)
vtkDataSet * GetInputAsDataSet()
vtkTypeInt64 CompressionHeaderPosition
virtual void WriteInlineData(vtkAbstractArray *a, vtkIndent indent)
general representation of visualization data
virtual void SetCompressor(vtkDataCompressor *)
Get/Set the compressor used to compress binary and appended data before writing to the file.
void DestroyStringArray(int numStrings, char **strings)
void SetHeaderTypeToUInt64()
int WriteDataModeAttribute(const char *name)
int WriteBinaryDataBlock(unsigned char *in_data, size_t numWords, int wordType)