Pointwise Plugin SDK
|
Handles the delayed updating of a value in a PwpFile object. More...
#include <PwpAnchoredFileValue.h>
Public Member Functions | |
bool | anchor (const char *suffix=0, const char *prefix=0, PWP_INT fldWidth=0) |
Anchors the value to the associated file's current file position and writes a placeholder value to the file. More... | |
bool | anchor (PWP_INT fldWidth, const char *suffix=0, const char *prefix=0) |
Anchors the value to the associated file's current file position and writes a placeholder value to the file. More... | |
bool | commit () |
Writes the value to the associated file's anchored file position. More... | |
PwpFile & | f () const |
Gets the file associated with the anchored value. More... | |
PWP_INT | fldWidth () const |
Gets the current value field width. More... | |
bool | isAnchored () const |
Gets the current value anchoring status. More... | |
operator const ValType & () const | |
const ValType& cast operator. More... | |
operator ValType & () | |
ValType& cast operator. More... | |
ValType & | operator= (const ValType &rhs) |
ValType assignment operator. More... | |
const ValType & | operator= (const ValType &rhs) const |
const ValType assignment operator. More... | |
const sysFILEPOS & | pos () const |
Gets the anchor position associated with the file. More... | |
const char * | prefix () const |
Gets the current value prefix. More... | |
PwpAnchoredFileValue (PwpFile &f) | |
Constructor. More... | |
PwpAnchoredFileValue (PwpFile &f, const ValType &initV, const char *suffix=0, const char *prefix=0, PWP_INT fldWidth=-1) | |
Constructor. More... | |
PwpAnchoredFileValue (PwpFile &f, const ValType &initV, PWP_INT fldWidth, const char *suffix=0, const char *prefix=0) | |
Constructor. More... | |
bool | rollback () |
Moves the associated file to the anchored file position and unanchors the value. More... | |
const char * | suffix () const |
Gets the current value suffix. More... | |
ValType & | val () |
Gets the current data value. More... | |
const ValType & | val () const |
Gets the current data value. More... | |
~PwpAnchoredFileValue () | |
Private Member Functions | |
PwpAnchoredFileValue< ValType, ValWriter > & | operator= (const PwpAnchoredFileValue< ValType, ValWriter > &) |
bool | write () |
Private Attributes | |
bool | anchored_ |
PwpFile & | f_ |
PWP_INT | fldWidth_ |
sysFILEPOS | pos_ |
const char * | prefix_ |
const char * | suffix_ |
ValType | v_ |
Handles the delayed updating of a value in a PwpFile object.
The PwpAnchoredFileValue template class implements the delayed updating of an anchored value in a PwpFile object. The file's format, precision, and byte-order are respected when the final value is committed.
Sometimes a value must be written to a file that is not know at the time it needs to be written out. Often, this value can be quickly computed by pre-processing the grid model. However, sometimes the pre-processing would be too time or memory intensive to perform on a large grid. In this case, a placeholder can be written to the file. Then, at some later stage of the export when the unknown value has been determined, the placeholder is updated with the correct value.
The ValType template parameter specifies the type of the data value written to the file.
The ValWriter template parameter specifies the type of the writer object that handles the interaction with the file.
ValType | Specifies the anchored value's data type. |
ValWriter | Specifies the value writer type. It defaults to PwpAnchoredFileValueWriter<ValType> |
Definition at line 169 of file PwpAnchoredFileValue.h.
|
inline |
Constructor.
Constructs an anchorable value for the specified file.
When the final value is committed to the file, the value will be written by the template ValWriter.
f | The file containing the anchored value. |
Definition at line 181 of file PwpAnchoredFileValue.h.
|
inline |
Constructor.
Constructs an anchorable value for the specified file.
When the final value is committed to the file, the value will be written by the template ValWriter using the specified suffix, prefix, and fldWidth.
f | The file containing the anchored value. |
initV | The initial, placeholder value. |
suffix | The value suffix used when writing to file. |
prefix | The value prefix used when writing to file. |
fldWidth | The value width used when writing to file. |
Definition at line 206 of file PwpAnchoredFileValue.h.
|
inline |
Constructor.
Constructs an anchorable value for the specified file.
When the final value is committed to the file, the value will be written by the template ValWriter using the specified suffix, prefix, and fldWidth.
f | The file containing the anchored value. |
fldWidth | The value width used when writing to file. |
initV | The initial, placeholder value. |
suffix | The value suffix used when writing to file. |
prefix | The value prefix used when writing to file. |
Definition at line 233 of file PwpAnchoredFileValue.h.
|
inline |
Definition at line 245 of file PwpAnchoredFileValue.h.
|
inline |
Anchors the value to the associated file's current file position and writes a placeholder value to the file.
suffix | The value suffix. If not specified, uses ctor value. |
prefix | The value prefix. If not specified, uses ctor value. |
fldWidth | The values width. If not specified, uses ctor value. |
Definition at line 258 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::anchored_, PwpAnchoredFileValue< ValType, ValWriter >::f_, PwpAnchoredFileValue< ValType, ValWriter >::fldWidth(), PwpAnchoredFileValue< ValType, ValWriter >::fldWidth_, PwpFile::getPos(), PwpAnchoredFileValue< ValType, ValWriter >::pos_, PwpAnchoredFileValue< ValType, ValWriter >::prefix(), PwpAnchoredFileValue< ValType, ValWriter >::prefix_, PwpAnchoredFileValue< ValType, ValWriter >::suffix(), PwpAnchoredFileValue< ValType, ValWriter >::suffix_, and PwpAnchoredFileValue< ValType, ValWriter >::write().
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor().
|
inline |
Anchors the value to the associated file's current file position and writes a placeholder value to the file.
fldWidth | The values width. |
suffix | The value suffix. If not specified, uses ctor value. |
prefix | The value prefix. If not specified, uses ctor value. |
Definition at line 283 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::anchor(), PwpAnchoredFileValue< ValType, ValWriter >::fldWidth(), PwpAnchoredFileValue< ValType, ValWriter >::prefix(), and PwpAnchoredFileValue< ValType, ValWriter >::suffix().
|
inline |
Writes the value to the associated file's anchored file position.
The current file position is restored after the value is updated.
Definition at line 295 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::anchored_, PwpAnchoredFileValue< ValType, ValWriter >::f_, PwpFile::getPos(), PwpAnchoredFileValue< ValType, ValWriter >::pos_, PwpFile::setPos(), and PwpAnchoredFileValue< ValType, ValWriter >::write().
|
inline |
Gets the file associated with the anchored value.
Definition at line 402 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::f_.
|
inline |
Gets the current value field width.
Definition at line 422 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::fldWidth_.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor().
|
inline |
Gets the current value anchoring status.
Definition at line 432 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::anchored_.
|
inline |
const ValType& cast operator.
Definition at line 340 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::v_.
|
inline |
ValType& cast operator.
Definition at line 350 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::v_.
|
inlineprivate |
Definition at line 458 of file PwpAnchoredFileValue.h.
|
inline |
ValType assignment operator.
Definition at line 371 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::v_.
|
inline |
const ValType assignment operator.
Definition at line 360 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::v_.
|
inline |
Gets the anchor position associated with the file.
Definition at line 412 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::pos_.
|
inline |
Gets the current value prefix.
Definition at line 382 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::prefix_.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor().
|
inline |
Moves the associated file to the anchored file position and unanchors the value.
The current value is NOT written to the file.
Definition at line 308 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::anchored_, PwpAnchoredFileValue< ValType, ValWriter >::f_, PwpAnchoredFileValue< ValType, ValWriter >::pos_, and PwpFile::setPos().
|
inline |
Gets the current value suffix.
Definition at line 392 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::suffix_.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor().
|
inline |
Gets the current data value.
Definition at line 320 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::v_.
|
inline |
Gets the current data value.
Definition at line 330 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::v_.
|
inlineprivate |
Definition at line 440 of file PwpAnchoredFileValue.h.
References PwpAnchoredFileValue< ValType, ValWriter >::anchored_, PwpAnchoredFileValue< ValType, ValWriter >::f_, PwpAnchoredFileValue< ValType, ValWriter >::fldWidth_, PwpFile::isAscii(), PwpFile::isBinary(), PwpFile::isUnformatted(), PwpAnchoredFileValue< ValType, ValWriter >::prefix_, PwpAnchoredFileValue< ValType, ValWriter >::suffix_, and PwpAnchoredFileValue< ValType, ValWriter >::v_.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor(), and PwpAnchoredFileValue< ValType, ValWriter >::commit().
|
private |
Definition at line 467 of file PwpAnchoredFileValue.h.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor(), PwpAnchoredFileValue< ValType, ValWriter >::commit(), PwpAnchoredFileValue< ValType, ValWriter >::isAnchored(), PwpAnchoredFileValue< ValType, ValWriter >::rollback(), and PwpAnchoredFileValue< ValType, ValWriter >::write().
|
private |
Definition at line 472 of file PwpAnchoredFileValue.h.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor(), PwpAnchoredFileValue< ValType, ValWriter >::commit(), PwpAnchoredFileValue< ValType, ValWriter >::f(), PwpAnchoredFileValue< ValType, ValWriter >::rollback(), and PwpAnchoredFileValue< ValType, ValWriter >::write().
|
private |
Definition at line 473 of file PwpAnchoredFileValue.h.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor(), PwpAnchoredFileValue< ValType, ValWriter >::fldWidth(), and PwpAnchoredFileValue< ValType, ValWriter >::write().
|
private |
|
private |
Definition at line 471 of file PwpAnchoredFileValue.h.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor(), PwpAnchoredFileValue< ValType, ValWriter >::prefix(), and PwpAnchoredFileValue< ValType, ValWriter >::write().
|
private |
Definition at line 470 of file PwpAnchoredFileValue.h.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::anchor(), PwpAnchoredFileValue< ValType, ValWriter >::suffix(), and PwpAnchoredFileValue< ValType, ValWriter >::write().
|
private |
Definition at line 468 of file PwpAnchoredFileValue.h.
Referenced by PwpAnchoredFileValue< ValType, ValWriter >::operator const ValType &(), PwpAnchoredFileValue< ValType, ValWriter >::operator ValType &(), PwpAnchoredFileValue< ValType, ValWriter >::operator=(), PwpAnchoredFileValue< ValType, ValWriter >::val(), and PwpAnchoredFileValue< ValType, ValWriter >::write().