Unstructured grid decoder for a series of xl vtk files. (implementation)
Inherits Rx::FileIO::IFileDataFramesDecode.
Public Member Functions | |
CUVTKDecode_Impl () | |
Default constructor. More... | |
~CUVTKDecode_Impl () | |
Destructor. More... | |
virtual void | Close () |
Closes this object. More... | |
virtual void | Destroy () |
Destroys this object. More... | |
virtual void | GetData (size_t nDataId, double &dData) |
Gets the time step for the current open frame as double. Supported data cases are: More... | |
virtual void | GetData (size_t nDataId, Rx::Interop::Runtime30::IMemory *pTrgMem) |
Not supported for this file type. Will throw an exception if called with any case. More... | |
virtual void | GetData (size_t nDataId, Rx::Interop::Runtime30::IMemory2D *pTrgMem) |
Gets a Rx::CRxMatrix<double> as IMemory2D block from the current frame. The memory block contains either the point or the vector data. Supported data cases are: More... | |
virtual void | JumpToFrame (size_t nFrameNbr) |
Opens the specified frame and reads it. When the frame not exists an exception will be thrown. More... | |
virtual bool | NextFrame () |
When there is a next frame, this function opens and reads it. Because Open() already opens the first frame all following frames need to be processed via do-while. More... | |
virtual void | Open (const Rx::CRxString &sxFullPath) |
Opens this object. Input folder for the files is the given path. This function will open the first frame. Because of that all following frames need to be processed via do-while. More... | |
Protected Member Functions | |
void | GetPointsFromXmlNode (xmlNode *pxPieceNode, Rx::Interop::Runtime30::IMemory2D *pTrgMem) |
Gets the points from a XML node. More... | |
void | GetVectorsFromXmlNode (xmlNode *pxPieceNode, Rx::Interop::Runtime30::IMemory2D *pTrgMem) |
Gets the vectors from a XML node. More... | |
xmlDoc * | ReadXmlDocFromFile (const Rx::CRxString &sxFilePath) |
Reads an XML document from file. More... | |
Rx::FileIO::CUVTKDecode_Impl::CUVTKDecode_Impl | ( | ) |
Default constructor.
Rx::FileIO::CUVTKDecode_Impl::~CUVTKDecode_Impl | ( | ) |
Destructor.
|
virtual |
Closes this object.
Implements Rx::FileIO::IFileDataFramesDecode.
|
virtual |
Destroys this object.
Implements Rx::FileIO::IFileDataFramesDecode.
|
virtual |
Gets the time step for the current open frame as double. Supported data cases are:
Rx::FileIO::EDataTypeVtk::TimestepData - current time step data
All other cases will throw an exception.
nDataId | [in] Identifier for the data. |
dData | [out] The time step data. |
Implements Rx::FileIO::IFileDataFramesDecode.
|
virtual |
Not supported for this file type. Will throw an exception if called with any case.
nDataId | [in] Identifier for the data. |
pTrgMem | [out] Target memory. |
Implements Rx::FileIO::IFileDataFramesDecode.
|
virtual |
Gets a Rx::CRxMatrix<double> as IMemory2D block from the current frame. The memory block contains either the point or the vector data. Supported data cases are:
Rx::FileIO::EDataTypeVtk::PointData - 3d point data
Rx::FileIO::EDataTypeVtk::VectorData - 3d vector data
All other cases will throw an exception.
nDataId | [in] Identifier for the data. |
pTrgMem | [out] Target memory. |
Implements Rx::FileIO::IFileDataFramesDecode.
|
protected |
Gets the points from a XML node.
pxPieceNode | [in] The Piece node containing the data tags. |
pTrgMem | [out] The IMemory2D block containing the point data. |
|
protected |
Gets the vectors from a XML node.
pxPieceNode | [in] The Piece node containing the vector data tags. |
pTrgMem | [out] The IMemory2D block containing the vector data. |
|
virtual |
Opens the specified frame and reads it. When the frame not exists an exception will be thrown.
nFrameNbr | [in] The frame number. |
Implements Rx::FileIO::IFileDataFramesDecode.
|
virtual |
When there is a next frame, this function opens and reads it. Because Open() already opens the first frame all following frames need to be processed via do-while.
Implements Rx::FileIO::IFileDataFramesDecode.
|
virtual |
Opens this object. Input folder for the files is the given path. This function will open the first frame. Because of that all following frames need to be processed via do-while.
sxFullPath | [in] Full pathname where all files are located. |
Implements Rx::FileIO::IFileDataFramesDecode.
|
protected |
Reads an XML document from file.
sxFilePath | [in] Full pathname of the file. |