Pointwise Plugin SDK
Public Member Functions | Private Member Functions | List of all members
PwpBinaryWriter Class Reference
+ Inheritance diagram for PwpBinaryWriter:
+ Collaboration diagram for PwpBinaryWriter:

Public Member Functions

 PwpBinaryWriter (PwpFile &file)
 
virtual bool write (const char *val, PWP_INT size=-1, char pad=0)
 Writes a string value. More...
 
virtual bool write (PWP_FLOAT val, const char *suffix=0, const char *prefix=0)
 Writes a floating point value with proper precision, encoding and byte order. More...
 
virtual bool write (PWP_INT16 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_INT32 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_INT64 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_INT8 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_REAL val, const char *suffix=0, const char *prefix=0)
 Writes a floating point value with proper precision, encoding and byte order. More...
 
virtual bool write (PWP_UINT16 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_UINT32 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_UINT64 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual bool write (PWP_UINT8 val, const char *suffix=0, const char *prefix=0)
 Writes a integer value with proper encoding and byte order. More...
 
virtual ~PwpBinaryWriter ()
 
- Public Member Functions inherited from PwpFileWriter
virtual FormatType getFmtType () const
 default implementation. More...
 
 PwpFileWriter (PwpFile &file)
 PwpFile constructor. More...
 
virtual void setFmtType (FormatType type)
 default implementation. More...
 
virtual ~PwpFileWriter ()
 Destructor. More...
 
virtual void setFmtFieldSingle (const int width, const int prec)
 default implementation. More...
 
virtual void getFmtFieldSingle (int &width, int &prec) const
 default implementation. More...
 
virtual void setFmtFieldDouble (const int width, const int prec)
 default implementation. More...
 
virtual void getFmtFieldDouble (int &width, int &prec) const
 default implementation. More...
 
virtual bool beginRecord ()
 NOP default implementation. More...
 
virtual bool beginRecord (PWP_UINT32, PWP_UINT32=1)
 NOP default implementation. More...
 
virtual bool endRecord ()
 NOP default implementation. More...
 
- Public Member Functions inherited from PwpWriterInterface
bool writef (const char *fmt,...)
 Writes a formatted string value. More...
 
bool writef (PWP_INT size, char pad, const char *fmt,...)
 Writes a formatted string value. More...
 
virtual ~PwpWriterInterface ()
 Destructor. More...
 

Private Member Functions

bool writeOrdered (const void *buf, size_t size)
 
template<typename T >
bool writeOrdered (T val)
 

Additional Inherited Members

- Public Types inherited from PwpWriterInterface
enum  FormatType {
  FormatG = G_,
  FormatWdPrecG = G_ | Wd_ | Prec_,
  FormatWdG = G_ | Wd_,
  FormatPrecG = G_ | Prec_,
  FormatF = F_,
  FormatWdPrecF = F_ | Wd_ | Prec_,
  FormatWdF = F_ | Wd_,
  FormatPrecF = F_ | Prec_,
  FormatE = E_,
  FormatWdPrecE = E_ | Wd_ | Prec_,
  FormatWdE = E_ | Wd_,
  FormatPrecE = E_ | Prec_
}
 Formatted output types for floating point values. More...
 
- Protected Types inherited from PwpWriterInterface
enum  {
  G_ = 0x00,
  F_ = 0x01,
  E_ = 0x02,
  GFEMask_ = 0x0F,
  Wd_ = 0x10,
  Prec_ = 0x20,
  WdPrec_ = Wd_ | Prec_,
  WPMask_ = 0xF0
}
 Bit flags use to build public FormatX enums. More...
 
- Protected Attributes inherited from PwpFileWriter
PwpFilefile_
 The file being written. More...
 
int fmtFieldWdDouble_
 Double precision format field width. More...
 
int fmtFieldWdSingle_
 Single precision format field width. More...
 
int fmtPrecDouble_
 Double precision format decimals. More...
 
int fmtPrecSingle_
 Single precision format decimals. More...
 
FormatType fmtType_
 Formatting flags. More...
 

Detailed Description

Definition at line 180 of file PwpFile.cxx.

Constructor & Destructor Documentation

◆ PwpBinaryWriter()

PwpBinaryWriter::PwpBinaryWriter ( PwpFile file)
inline

Definition at line 189 of file PwpFile.cxx.

◆ ~PwpBinaryWriter()

virtual PwpBinaryWriter::~PwpBinaryWriter ( )
inlinevirtual

Definition at line 195 of file PwpFile.cxx.

Member Function Documentation

◆ write() [1/11]

virtual bool PwpBinaryWriter::write ( const char *  val,
PWP_INT  size = -1,
char  pad = 0 
)
inlinevirtual

Writes a string value.

Parameters
valThe string to write.
sizeThe number of string characters to write. If -1, strlen(val) is used.
padIf size > strlen(val), the pad value will be used to fill the remaining characters.
Returns
true on success.
Note
For pwpUnformatted mode, the record byte count is incremented by size or strlen(val) if size is -1.

Implements PwpWriterInterface.

Definition at line 286 of file PwpFile.cxx.

References PwpFileWriter::file_, PwpFile::fp(), and pwpFileWrite().

◆ write() [2/11]

virtual bool PwpBinaryWriter::write ( PWP_FLOAT  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a floating point value with proper precision, encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, precision and byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof((precision)val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 264 of file PwpFile.cxx.

References PwpFileWriter::file_, PwpFile::isDouble(), and writeOrdered().

◆ write() [3/11]

virtual bool PwpBinaryWriter::write ( PWP_INT16  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 216 of file PwpFile.cxx.

References writeOrdered().

◆ write() [4/11]

virtual bool PwpBinaryWriter::write ( PWP_INT32  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 208 of file PwpFile.cxx.

References writeOrdered().

◆ write() [5/11]

virtual bool PwpBinaryWriter::write ( PWP_INT64  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 200 of file PwpFile.cxx.

References writeOrdered().

◆ write() [6/11]

virtual bool PwpBinaryWriter::write ( PWP_INT8  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 224 of file PwpFile.cxx.

References writeOrdered().

◆ write() [7/11]

virtual bool PwpBinaryWriter::write ( PWP_REAL  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a floating point value with proper precision, encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, precision and byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof((precision)val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 275 of file PwpFile.cxx.

References PwpFileWriter::file_, PwpFile::isSingle(), and writeOrdered().

◆ write() [8/11]

virtual bool PwpBinaryWriter::write ( PWP_UINT16  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 248 of file PwpFile.cxx.

References writeOrdered().

◆ write() [9/11]

virtual bool PwpBinaryWriter::write ( PWP_UINT32  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 240 of file PwpFile.cxx.

References writeOrdered().

◆ write() [10/11]

virtual bool PwpBinaryWriter::write ( PWP_UINT64  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 232 of file PwpFile.cxx.

References writeOrdered().

◆ write() [11/11]

virtual bool PwpBinaryWriter::write ( PWP_UINT8  val,
const char *  suffix = 0,
const char *  prefix = 0 
)
inlinevirtual

Writes a integer value with proper encoding and byte order.

Parameters
valThe value to write.
suffixString written after val (pwpAscii mode only).
prefixString written before val (pwpAscii mode only).
Returns
true on success.
Note
For pwpBinary and pwpUnformatted modes, byte ordering is enforced.
For pwpUnformatted mode, the record byte count is incremented by sizeof(val).
suffix and prefix are ignored by all modes except pwpAscii.

Implements PwpWriterInterface.

Definition at line 256 of file PwpFile.cxx.

References writeOrdered().

◆ writeOrdered() [1/2]

bool PwpBinaryWriter::writeOrdered ( const void *  buf,
size_t  size 
)
inlineprivate

◆ writeOrdered() [2/2]

template<typename T >
bool PwpBinaryWriter::writeOrdered ( val)
inlineprivate

Definition at line 183 of file PwpFile.cxx.

Referenced by write().


The documentation for this class was generated from the following file: