LRAUV  revA
StrValue Class Reference

Wraps a string (see Str) as a DataValue, so strings can be written to and read from the slate. More...

#include <StrValue.h>

Inheritance diagram for StrValue:
Collaboration diagram for StrValue:

Public Member Functions

 StrValue ()
 Default constructior. More...
 
 StrValue (const char *value, size_t length=Str::NO_POS, const Unit &unit=Units::NONE)
 Two value constructior. More...
 
 StrValue (const Str value)
 Single value constructior. More...
 
 StrValue (const StrValue &value)
 Copy Constructor. More...
 
 StrValue (const void *binary)
 Constructor from binary. More...
 
virtual ~StrValue ()
 Destructor. More...
 
void * operator new (size_t size)
 Override new. More...
 
void operator delete (void *p)
 Override delete. More...
 
StrValuecopy () const
 Return a pointer to a new copy. More...
 
virtual void minus (const DataValue *rhs, DataValue *assignTo) const
 Subtraction of another DataValue to yield another DataValue. More...
 
virtual void times (const double rhs, DataValue *assignTo) const
 Multiplication by a double to yield another DataValue. More...
 
virtual double absDiff (const DataValue *rhs) const
 Return the absolute value of this difference from another DataValue. More...
 
virtual bool copyTo (const Unit &unit, unsigned char &assignTo) const
 Copy value to unsigned char. More...
 
virtual bool copyTo (const Unit &unit, double &assignTo, unsigned int dim) const
 Copy n-dimensional value to double. More...
 
virtual bool copyTo (const Unit &unit, double &assignTo) const
 Copy value to double. More...
 
virtual bool copyTo (const Unit &unit, float &assignTo) const
 Copy value to float. More...
 
virtual bool copyTo (const Unit &unit, int &assignTo) const
 Copy value to unsigned int. More...
 
virtual int compare (const Unit &unit, const unsigned char &compareTo) const
 Comparison with unsigned char. More...
 
virtual int compare (const Unit &unit, const double &compareTo) const
 Comparison with double. More...
 
virtual int compare (const Unit &unit, const float &compareTo) const
 Comparison with float. More...
 
virtual int compare (const Unit &unit, const int &compareTo) const
 Comparison with int. More...
 
virtual int compare (const DataValue &compareTo) const
 Comparison with another DataValue. More...
 
virtual bool equals (const Unit &unit, const unsigned char &compareTo) const
 Equality test with with unsigned char. More...
 
virtual bool equals (const Unit &unit, const float &compareTo) const
 Equality test with float. More...
 
virtual bool equals (const Unit &unit, const double &compareTo) const
 Equality test with double. More...
 
virtual bool equals (const Unit &unit, const int &compareTo) const
 Equality test with int. More...
 
virtual bool equals (const DataValue &compareTo) const
 Equality test with another DataValue. More...
 
virtual bool setFrom (const Unit &unit, unsigned char value)
 set from unsigned char value More...
 
virtual bool setFrom (const Unit &unit, double value)
 set from double value More...
 
virtual bool setFrom (const Unit &unit, float value)
 set from float value More...
 
virtual bool setFrom (const Unit &unit, int value)
 set int value More...
 
virtual bool setFrom (const DataValue &value)
 set DataValue value More...
 
virtual const StrasString () const
 
void setString (const Str &str)
 
virtual Str toString () const
 
virtual Str toString (const Unit &unit) const
 
virtual unsigned int toStream (OutStream &outStream) const
 Send the data value to the indicated stream. More...
 
virtual void fromBinary (const void *buffer, unsigned short typeSize)
 Load the data from the a binary representation in the buffer Typically just a memcopy of the variable, though endianness may come into it. More...
 
virtual void fromBinary (const void *buffer)
 Load the data from the a binary representation in the buffer Typically just a memcopy of the variable, though endianness may come into it. More...
 
- Public Member Functions inherited from DataValue
virtual ~DataValue ()
 Destructor. More...
 
void operator delete (void *p)
 Override delete. More...
 
virtual bool copyTo (const Unit &unit, bool &assignTo) const
 Copy value to bool. More...
 
virtual bool copyTo (DataValue &assignTo) const
 Copy value to another dataValue. More...
 
virtual int compare (const Unit &unit, const bool &compareTo) const
 Comparison with bool. More...
 
virtual bool equals (const Unit &unit, const bool &compareTo) const
 Equality test with with bool. More...
 
virtual bool isNaN ()
 Returns true if the number is not a number. More...
 
virtual bool setFrom (const Unit &unit, bool value)
 set from bool value More...
 
virtual size_t getTypeSize () const
 Returns the size of the internal storage type (i.e. sizeof(type)) More...
 
virtual BinaryDataType getBinaryType (void) const
 Returns a constant (defined in BinaryDataType.h) representing the internal storage type. More...
 
const UnitgetUnit () const
 
const UnitgetBaseUnit () const
 
void setUnit (const Unit &unit)
 
void clearType ()
 

Protected Attributes

Str value_
 
- Protected Attributes inherited from DataValue
const Unitunit_
 
size_t typeSize_
 size of the internal storage type (i.e. sizeof(type)) More...
 
BinaryDataType binaryType_
 constant (defined in BinaryDataType.h) representing the internal storage type More...
 

Additional Inherited Members

- Protected Member Functions inherited from DataValue
 DataValue (const Unit &unit, const size_t &typeSize, const BinaryDataType &binaryType)
 Protected Constructor for abstract base class. More...
 
 DataValue (const size_t &typeSize, const BinaryDataType &binaryType)
 Protected unitless constructor for use via DataEntry class. More...
 

Detailed Description

Wraps a string (see Str) as a DataValue, so strings can be written to and read from the slate.

Also accommodates serialization of strings.

StrValues always have units of Units::NONE

Note: since these DataValues are created and destructed frequently, the new and delete operators have been overridden, so that objects can be re-used as needed.

StrValue::MallocRing_ stores deleted objects.

Constructor & Destructor Documentation

StrValue::StrValue ( )

Default constructior.

Referenced by copy().

StrValue::StrValue ( const char *  value,
size_t  length = Str::NO_POS,
const Unit unit = Units::NONE 
)

Two value constructior.

Two or three value constructior.

StrValue::StrValue ( const Str  value)

Single value constructior.

StrValue::StrValue ( const StrValue value)

Copy Constructor.

StrValue::StrValue ( const void *  binary)

Constructor from binary.

virtual StrValue::~StrValue ( )
inlinevirtual

Destructor.

Member Function Documentation

double StrValue::absDiff ( const DataValue rhs) const
virtual

Return the absolute value of this difference from another DataValue.

Implements DataValue.

virtual int StrValue::compare ( const Unit unit,
const unsigned char &  compareTo 
) const
inlinevirtual

Comparison with unsigned char.

Implements DataValue.

virtual int StrValue::compare ( const Unit unit,
const double &  compareTo 
) const
inlinevirtual

Comparison with double.

Implements DataValue.

virtual int StrValue::compare ( const Unit unit,
const float &  compareTo 
) const
inlinevirtual

Comparison with float.

Implements DataValue.

virtual int StrValue::compare ( const Unit unit,
const int &  compareTo 
) const
inlinevirtual

Comparison with int.

Implements DataValue.

int StrValue::compare ( const DataValue compareTo) const
virtual

Comparison with another DataValue.

Implements DataValue.

References DataValue::binaryType_, Str::compare(), DataValue::getBinaryType(), and value_.

StrValue * StrValue::copy ( ) const
virtual

Return a pointer to a new copy.

Implements DataValue.

References StrValue(), and value_.

Referenced by Config::ParseLine().

virtual bool StrValue::copyTo ( const Unit unit,
unsigned char &  assignTo 
) const
inlinevirtual

Copy value to unsigned char.

Implements DataValue.

bool StrValue::copyTo ( const Unit unit,
double &  assignTo,
unsigned int  dim 
) const
virtual

Copy n-dimensional value to double.

References Str::cStr(), Str::length(), and value_.

virtual bool StrValue::copyTo ( const Unit unit,
double &  assignTo 
) const
inlinevirtual

Copy value to double.

Implements DataValue.

virtual bool StrValue::copyTo ( const Unit unit,
float &  assignTo 
) const
inlinevirtual

Copy value to float.

Implements DataValue.

virtual bool StrValue::copyTo ( const Unit unit,
int &  assignTo 
) const
inlinevirtual

Copy value to unsigned int.

Implements DataValue.

virtual bool StrValue::equals ( const Unit unit,
const unsigned char &  compareTo 
) const
inlinevirtual

Equality test with with unsigned char.

Implements DataValue.

virtual bool StrValue::equals ( const Unit unit,
const float &  compareTo 
) const
inlinevirtual

Equality test with float.

Implements DataValue.

virtual bool StrValue::equals ( const Unit unit,
const double &  compareTo 
) const
inlinevirtual

Equality test with double.

Implements DataValue.

virtual bool StrValue::equals ( const Unit unit,
const int &  compareTo 
) const
inlinevirtual

Equality test with int.

Implements DataValue.

bool StrValue::equals ( const DataValue compareTo) const
virtual
void StrValue::fromBinary ( const void *  buffer,
unsigned short  typeSize 
)
virtual

Load the data from the a binary representation in the buffer Typically just a memcopy of the variable, though endianness may come into it.

References DataValue::typeSize_.

void StrValue::fromBinary ( const void *  buffer)
virtual

Load the data from the a binary representation in the buffer Typically just a memcopy of the variable, though endianness may come into it.

Implements DataValue.

References DataValue::typeSize_, and value_.

virtual void StrValue::minus ( const DataValue rhs,
DataValue assignTo 
) const
inlinevirtual

Subtraction of another DataValue to yield another DataValue.

Implements DataValue.

void StrValue::operator delete ( void *  p)

Override delete.

void * StrValue::operator new ( size_t  size)

Override new.

virtual bool StrValue::setFrom ( const Unit unit,
unsigned char  value 
)
inlinevirtual

set from unsigned char value

Implements DataValue.

Referenced by StrValue_Test::testSetFrom().

virtual bool StrValue::setFrom ( const Unit unit,
double  value 
)
inlinevirtual

set from double value

Implements DataValue.

virtual bool StrValue::setFrom ( const Unit unit,
float  value 
)
inlinevirtual

set from float value

Implements DataValue.

virtual bool StrValue::setFrom ( const Unit unit,
int  value 
)
inlinevirtual

set int value

Implements DataValue.

void StrValue::setString ( const Str str)
virtual void StrValue::times ( const double  rhs,
DataValue assignTo 
) const
inlinevirtual

Multiplication by a double to yield another DataValue.

Implements DataValue.

unsigned int StrValue::toStream ( OutStream outStream) const
virtual

Send the data value to the indicated stream.

Return the number of bytes written. For now, assume little-endian.

Implements DataValue.

References Str::cStr(), Str::length(), value_, OutStream::write(), and OutStream::writeShort().

Str StrValue::toString ( ) const
virtual
Str StrValue::toString ( const Unit unit) const
virtual

Implements DataValue.

Reimplemented in BlobValue.

References value_.

Member Data Documentation


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