VAPoR
0.1
|
A slice-based reader for VDF files. More...
#include <WaveletBlock3DBufWriter.h>
Public Member Functions | |
WaveletBlock3DBufWriter (const MetadataVDC &metadata) | |
WaveletBlock3DBufWriter (const string &metafile) | |
virtual | ~WaveletBlock3DBufWriter () |
virtual int | OpenVariableWrite (size_t timestep, const char *varname, int reflevel=-1, int lod=-1) |
virtual int | CloseVariable () |
int | WriteSlice (const float *slice) |
virtual const float * | GetDataRange () const |
Public Member Functions inherited from VAPoR::WaveletBlock3DWriter | |
WaveletBlock3DWriter (const MetadataVDC &metadata) | |
WaveletBlock3DWriter (const string &metafile) | |
virtual | ~WaveletBlock3DWriter () |
virtual int | OpenVariableRead (size_t timestep, const char *varname, int reflevel=0, int lod=0) |
int | WriteSlabs (float *two_slabs) |
Public Member Functions inherited from VAPoR::WaveletBlockIOBase | |
WaveletBlockIOBase (const MetadataVDC &metadata) | |
WaveletBlockIOBase (const string &metafile) | |
virtual | ~WaveletBlockIOBase () |
virtual int | VariableExists (size_t ts, const char *varname, int reflevel=0, int lod=0) const |
virtual int | BlockWriteRegion (const float *region, const size_t bmin[3], const size_t bmax[3], bool block=true) |
virtual int | WriteRegion (const float *region, const size_t min[3], const size_t max[3]) |
virtual int | WriteRegion (const float *region) |
virtual int | BlockReadRegion (const size_t bmin[3], const size_t bmax[3], float *region, bool unblock=true) |
virtual int | ReadRegion (const size_t min[3], const size_t max[3], float *region) |
virtual int | ReadRegion (float *region) |
virtual int | ReadSlice (float *slice) |
int | GetBlockMins (const float **mins, int reflevel) |
int | GetBlockMaxs (const float **maxs, int reflevel) |
void | Tile2NonTile (const float *blk, const size_t bcoord[2], const size_t min[2], const size_t max[2], VarType_T vtype, float *voxels) const |
void | Block2NonBlock (const float *blk, const size_t bcoord[3], const size_t min[3], const size_t max[3], float *voxels) const |
void | GetValidRegion (size_t min[3], size_t max[3], int reflevel) const |
virtual void | GetDim (size_t dim[3], int reflevel=0) const |
virtual void | GetDimBlk (size_t bdim[3], int reflevel=0) const |
Public Member Functions inherited from VAPoR::VDFIOBase | |
VDFIOBase (const MetadataVDC &metadata) | |
VDFIOBase (const string &metafile) | |
virtual | ~VDFIOBase () |
double | GetReadTimer () const |
double | GetSeekTimer () const |
void | SeekTimerReset () |
void | SeekTimerStart () |
void | SeekTimerStop () |
double | GetWriteTimer () const |
double | GetXFormTimer () const |
Public Member Functions inherited from VAPoR::MetadataVDC | |
MetadataVDC (const size_t dim[3], size_t numTransforms, const size_t bs[3], int nFilterCoef=1, int nLiftingCoef=1, int msbFirst=1, int vdfVersion=VDF_VERSION) | |
MetadataVDC (const size_t dim[3], const size_t bs[3], const vector< size_t > &cratios, string wname, string wmode) | |
MetadataVDC (const string &metafile) | |
MetadataVDC (const MetadataVDC &node) | |
virtual | ~MetadataVDC () |
int | Merge (const MetadataVDC &metadata, size_t ts=0) |
int | Merge (const string &path, size_t ts=0) |
int | MakeCurrent () const |
const string & | GetParentDir () const |
const string & | GetMetafileName () const |
const string & | GetDataDirName () const |
int | ConstructFullVBase (size_t ts, const string &var, string *path) const |
int | ConstructFullAuxBase (size_t ts, string *path) const |
int | Write (const string &path, int relative_path=1) |
virtual const size_t * | GetBlockSize () const |
virtual void | GetBlockSize (size_t bs[3], int) const |
virtual void | GetGridDim (size_t dim[3]) const |
const size_t * | GetDimension () const |
int | GetFilterCoef () const |
int | GetLiftingCoef () const |
virtual int | GetNumTransforms () const |
int | GetMSBFirst () const |
int | GetVDFVersion () const |
string | GetWaveName () const |
string | GetBoundaryMode () const |
virtual vector< size_t > | GetCRatios () const |
int | GetVDCType () const |
int | SetGridType (const string &value) |
string | GetGridType () const |
int | IsValidGridType (const string &value) const |
int | SetCoordSystemType (const string &value) |
string | GetCoordSystemType () const |
int | IsValidCoordSystemType (const string &value) const |
int | SetExtents (const vector< double > &value) |
vector< double > | GetExtents (size_t ts=0) const |
int | IsValidExtents (const vector< double > &value) const |
int | SetNumTimeSteps (long value) |
long | GetNumTimeSteps () const |
int | IsValidTimeStep (long value) const |
int | SetVariableNames (const vector< string > &value) |
int | SetVariables3D (const vector< string > &value) |
vector< string > | GetVariables3D () const |
vector< string > | GetCoordinateVariables () const |
int | SetCoordinateVariables (const vector< string > &value) |
int | SetVariables2DXY (const vector< string > &value) |
int | SetVariables2DXZ (const vector< string > &value) |
int | SetVariables2DYZ (const vector< string > &value) |
vector< string > | GetVariables2DXY () const |
vector< string > | GetVariables2DXZ () const |
vector< string > | GetVariables2DYZ () const |
int | SetComment (const string &value) |
string | GetComment () const |
int | SetPeriodicBoundary (const vector< long > &value) |
vector< long > | GetPeriodicBoundary () const |
int | SetGridPermutation (const vector< long > &value) |
int | SetMissingValue (double value) |
int | SetMissingValue () |
vector< double > | GetMissingValue () const |
vector< long > | GetGridPermutation () const |
int | SetMapProjection (const string &value) |
virtual string | GetMapProjection () const |
int | SetTSUserTime (size_t ts, const vector< double > &value) |
double | GetTSUserTime (size_t ts) const |
int | SetTSUserTimeStamp (size_t ts, const string &s) |
void | GetTSUserTimeStamp (size_t ts, string &s) const |
string | GetTSAuxBasePath (size_t ts) const |
int | HasTSUserTime (size_t ts) const |
int | IsValidUserTime (const vector< double > &value) const |
int | SetTSXCoords (size_t ts, const vector< double > &value) |
vector< double > | GetTSXCoords (size_t ts) const |
int | SetTSYCoords (size_t ts, const vector< double > &value) |
vector< double > | GetTSYCoords (size_t ts) const |
int | SetTSZCoords (size_t ts, const vector< double > &value) |
vector< double > | GetTSZCoords (size_t ts) const |
int | SetTSComment (size_t ts, const string &value) |
Set a comment for the time step indicated by ts . More... | |
string | GetTSComment (size_t ts) const |
Return the comment for the indicated time step, ts , if it exists. More... | |
int | SetTSExtents (size_t ts, const vector< double > &value) |
vector< double > | GetTSExtents (size_t ts) const |
int | SetTSMissingValue (size_t ts, double v) |
vector< double > | GetTSMissingValue (size_t ts) const |
Returns the time-varying missing value, if any. More... | |
int | SetVComment (size_t ts, const string &var, const string &value) |
string | GetVComment (size_t ts, const string &var) const |
string | GetVBasePath (size_t ts, const string &var) const |
int | SetVBasePath (size_t ts, const string &var, const string &value) |
int | SetVDataRange (size_t ts, const string &var, const vector< double > &value) |
vector< double > | GetVDataRange (size_t ts, const string &var) const |
int | IsValidVDataRange (const vector< double > &value) const |
int | SetVMissingValue (size_t ts, const string &var, double v) |
vector< double > | GetVMissingValue (size_t ts, const string &var) const |
vector< string > | GetUserDataLongTags () const |
int | SetUserDataLong (const string &tag, const vector< long > &value) |
vector< long > | GetUserDataLong (const string &tag) const |
vector< string > | GetUserDataDoubleTags () const |
int | SetUserDataDouble (const string &tag, const vector< double > &value) |
vector< double > | GetUserDataDouble (const string &tag) const |
vector< string > | GetUserDataStringTags () const |
int | SetUserDataString (const string &tag, const string &value) |
string | GetUserDataString (const string &tag) const |
int | SetUserDataStringVec (const string &tag, const vector< string > &value) |
vector< string > | GetUserDataStringVec (const string &tag) const |
vector< string > | GetTSUserDataLongTags () const |
int | SetTSUserDataLong (size_t ts, const string &tag, const vector< long > &value) |
vector< long > | GetTSUserDataLong (size_t ts, const string &tag) const |
int | SetTSUserDataDouble (size_t ts, const string &tag, const vector< double > &value) |
vector< double > | GetTSUserDataDouble (size_t ts, const string &tag) const |
vector< string > | GetTSUserDataDoubleTags () const |
int | SetTSUserDataString (size_t ts, const string &tag, const string &value) |
string | GetTSUserDataString (size_t ts, const string &tag) const |
vector< string > | GetTSUserDataStringTags () const |
vector< string > | GetVUserDataLongTags () const |
int | SetVUserDataLong (size_t ts, const string &var, const string &tag, const vector< long > &value) |
vector< long > | GetVUserDataLong (size_t ts, const string &var, const string &tag) const |
vector< string > | GetVUserDataDoubleTags () const |
int | SetVUserDataDouble (size_t ts, const string &var, const string &tag, const vector< double > &value) |
vector< double > | GetVUserDataDouble (size_t ts, const string &var, const string &tag) const |
int | SetVUserDataString (size_t ts, const string &var, const string &tag, const string &value) |
string | GetVUserDataString (size_t ts, const string &var, const string &tag) const |
vector< string > | GetVUserDataStringTags () const |
Public Member Functions inherited from VAPoR::Metadata | |
Metadata () | |
virtual | ~Metadata () |
virtual std::vector< std::string > | GetVariableNames () const |
virtual void | GetTSUserTimeStamp (size_t ts, std::string &s) const =0 |
virtual bool | GetMissingValue (std::string varname, float &value) const |
virtual void | MapVoxToBlk (const size_t vcoord[3], size_t bcoord[3], int reflevel=-1) const |
virtual void | MapVoxToUser (size_t timestep, const size_t vcoord0[3], double vcoord1[3], int ref_level=0) const |
void | MapUserToVox (size_t timestep, const double vcoord0[3], size_t vcoord1[3], int reflevel) const |
virtual VarType_T | GetVarType (const std::string &varname) const |
virtual int | IsValidRegion (const size_t min[3], const size_t max[3], int reflevel=0) const |
virtual int | IsValidRegionBlk (const size_t min[3], const size_t max[3], int reflevel=0) const |
virtual bool | IsCoordinateVariable (std::string varname) const |
Public Member Functions inherited from VetsUtil::MyBase | |
MyBase () | |
const string & | getClassName () const |
Public Member Functions inherited from VAPoR::ParsedXml | |
virtual | ~ParsedXml () |
virtual bool | charHandler (ExpatParseMgr *, const XML_Char *, int) |
Additional Inherited Members | |
Public Types inherited from VAPoR::Metadata | |
enum | VarType_T { VARUNKNOWN = -1, VAR3D, VAR2D_XY, VAR2D_XZ, VAR2D_YZ } |
Public Types inherited from VetsUtil::MyBase | |
typedef void(* | ErrMsgCB_T) (const char *msg, int err_code) |
typedef void(* | DiagMsgCB_T) (const char *msg) |
Static Public Member Functions inherited from VetsUtil::MyBase | |
static void | SetErrMsg (const char *format,...) |
Record a formatted error message. More... | |
static void | SetErrMsg (int errcode, const char *format,...) |
Record a formatted error message and an error code. More... | |
static const char * | GetErrMsg () |
static void | SetErrCode (int err_code) |
Record an error code. More... | |
static int | GetErrCode () |
Retrieve the current error code. More... | |
static void | SetErrMsgCB (ErrMsgCB_T cb) |
static ErrMsgCB_T | GetErrMsgCB () |
static void | SetErrMsgFilePtr (FILE *fp) |
static const FILE * | SetErrMsgFilePtr () |
static void | SetDiagMsg (const char *format,...) |
Record a formatted diagnostic message. More... | |
static const char * | GetDiagMsg () |
static void | SetDiagMsgCB (DiagMsgCB_T cb) |
static DiagMsgCB_T | GetDiagMsgCB () |
static void | SetDiagMsgFilePtr (FILE *fp) |
static bool | EnableErrMsg (bool enable) |
Public Attributes inherited from VAPoR::ParsedXml | |
ParsedXml * | previousClass |
Static Public Attributes inherited from VetsUtil::MyBase | |
static char * | ErrMsg |
static int | ErrCode |
static int | ErrMsgSize |
static FILE * | ErrMsgFilePtr |
static ErrMsgCB_T | ErrMsgCB |
static char * | DiagMsg |
static int | DiagMsgSize |
static FILE * | DiagMsgFilePtr |
static DiagMsgCB_T | DiagMsgCB |
static bool | Enabled |
Protected Member Functions inherited from VAPoR::WaveletBlock3DWriter | |
void | _GetDataRange (float range[2]) const |
Protected Member Functions inherited from VAPoR::WaveletBlockIOBase | |
int | seekBlocks (unsigned int offset, int reflevel=0) |
int | seekLambdaBlocks (const size_t bcoord[3]) |
int | seekGammaBlocks (const size_t bcoord[3], int reflevel) |
int | readBlocks (size_t n, float *blks, int reflevel) |
int | readLambdaBlocks (size_t n, float *blks) |
int | readGammaBlocks (size_t n, float *blks, int reflevel) |
int | writeBlocks (const float *blks, size_t n, int reflevel) |
int | writeLambdaBlocks (const float *blks, size_t n) |
int | writeGammaBlocks (const float *blks, size_t n, int reflevel) |
virtual void | _GetValidRegion (size_t minreg[3], size_t maxreg[3]) const |
Protected Member Functions inherited from VAPoR::VDFIOBase | |
void | _ReadTimerReset () |
void | _ReadTimerStart () |
void | _ReadTimerStop () |
void | _WriteTimerReset () |
void | _WriteTimerStart () |
void | _WriteTimerStop () |
void | _XFormTimerReset () |
void | _XFormTimerStart () |
void | _XFormTimerStop () |
int | _MaskOpenWrite (size_t timestep, string varname, int reflevel) |
int | _MaskOpenRead (size_t timestep, string varname, int reflevel) |
int | _MaskClose () |
int | _MaskWrite (const float *srcblk, const size_t bmin_p[3], const size_t bmax_p[3], bool block) |
int | _MaskRead (const size_t bmin_p[3], const size_t bmax_p[3]) |
void | _MaskRemove (float *blk, bool &valid_data) const |
void | _MaskReplace (size_t bx, size_t by, size_t bz, float *blk) const |
Protected Member Functions inherited from VetsUtil::MyBase | |
void | SetClassName (const string &name) |
Static Protected Member Functions inherited from VAPoR::VDFIOBase | |
static void | _UnpackCoord (VarType_T vtype, const size_t src[3], size_t dst[3], size_t fill) |
static void | _PackCoord (VarType_T vtype, const size_t src[3], size_t dst[3], size_t fill) |
static void | _FillPackedCoord (VarType_T vtype, const size_t src[3], size_t dst[3], size_t fill) |
Protected Attributes inherited from VAPoR::WaveletBlock3DWriter | |
float | _dataRange [2] |
Protected Attributes inherited from VAPoR::WaveletBlockIOBase | |
int | _reflevel |
size_t | _timeStep |
string | _varName |
float * | _super_block |
float * | _super_tile |
VarType_T | _vtype |
WaveletBlock2D * | _wb2dXY |
WaveletBlock2D * | _wb2dXZ |
WaveletBlock2D * | _wb2dYZ |
WaveletBlock3D * | _wb3d |
float * | _mins3d [MAX_LEVELS] |
float * | _maxs3d [MAX_LEVELS] |
float * | _mins2d [MAX_LEVELS] |
float * | _maxs2d [MAX_LEVELS] |
Protected Attributes inherited from VAPoR::Metadata | |
bool | _deprecated_get_dim |
Static Protected Attributes inherited from VAPoR::WaveletBlockIOBase | |
static const int | MAX_LEVELS = 16 |
Static Protected Attributes inherited from VAPoR::ParsedXml | |
static const string | _stringType |
static const string | _longType |
static const string | _doubleType |
static const string | _typeAttr |
A slice-based reader for VDF files.
This class provides an API for reading volumes from a VDF file one slice at a time.
Definition at line 24 of file WaveletBlock3DBufWriter.h.
VAPoR::WaveletBlock3DBufWriter::WaveletBlock3DBufWriter | ( | const MetadataVDC & | metadata | ) |
Constructor for the WaveletBlock3DBufWriter class.
[in,out] | metadata | A pointer to a Metadata structure identifying the data set upon which all future operations will apply. |
VAPoR::WaveletBlock3DBufWriter::WaveletBlock3DBufWriter | ( | const string & | metafile | ) |
Constructor for the WaveletBlock3DBufWriter class.
[in] | metafile | Path to a metadata file for which all future class operations will apply |
|
virtual |
|
virtual |
Close the currently opened variable.
Reimplemented from VAPoR::WaveletBlock3DWriter.
|
inlinevirtual |
Reimplemented from VAPoR::WaveletBlockIOBase.
Definition at line 108 of file WaveletBlock3DBufWriter.h.
|
virtual |
Open the named variable for writing
Prepare a vapor data file for the creation of a multiresolution data volume via subsequent write operations by other methods of this classes derived from this class. The data volume is identified by the specfied time step and variable name. The number of forward transforms applied to the volume is determined by the Metadata object used to initialize the class. The number of refinement levels actually saved to the data collection are determined by reflevels
. If reflevels
is zero, the default, only the coarsest approximation is saved. If reflevels
is one, all the coarsest and first refinement level is saved, and so on. A value of -1 indicates the maximum refinment level permitted by the VDF
[in] | timestep | Time step of the variable to read |
[in] | varname | Name of the variable to read |
[in] | reflevel | Refinement level of the variable. A value of -1 indicates the maximum refinment level. |
status | Returns a non-negative value on success |
Reimplemented from VAPoR::WaveletBlock3DWriter.
|
virtual |
Transform and write a single slice of voxels to the current file
Transform and write a single slice (2D array) of voxels to the variable indicated by the most recent call to OpenVariableWrite(). The number of transforms applied is determined by the contents of the Metadata structure used to initialize this class. If zero, the slices are not transformed and are written at their full resolution. The dimensions of a slices is NX by NY, where NX is the dimesion of the volume along the X axis, specified in voxels, and NY is the Y axis dimension.
This method should be called exactly NZ times for each opened variable, where NZ is the dimension of the volume in voxels along the Z axis. Each invocation should pass a successive slice of volume data.
[in] | slice | A slices of volume data |
status | Returns a non-negative value on success |
Reimplemented from VAPoR::WaveletBlockIOBase.