LRAUV  revA
UniversalBlobWriter Class Reference

#include <UniversalDataWriter.h>

Inheritance diagram for UniversalBlobWriter:
Collaboration diagram for UniversalBlobWriter:

Public Member Functions

virtual ~UniversalBlobWriter ()
 
virtual bool write (const DataValue &value, const Timestamp &timestamp)
 
virtual const ElementURIgetUri (void) const
 
- Public Member Functions inherited from UniversalDataWriter
 UniversalDataWriter (Component *owner, DataElement &element, UniversalDataElement *universal, Logger::TimePrecisionType timePrecision)
 
virtual ~UniversalDataWriter ()
 
virtual bool writeWithAccuracy (const Unit &unit, const unsigned char value, const float accuracy, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Sets the Component's DataValue, with precision and an optional timestamp. More...
 
virtual bool writeWithAccuracy (const Unit &unit, const double value, const float accuracy, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 
virtual bool writeWithAccuracy (const Unit &unit, const int value, const float accuracy, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 
virtual bool writeWithAccuracy (const DataValue &value, const float accuracy, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 
virtual bool setAccuracy (const Unit &unit, const float value)
 Set accuracy function. More...
 
virtual float getAccuracy (const Unit &unit)
 Get accuracy function For recalling the current accuracy... More...
 
bool isAnyDataRequested ()
 Returns true if one of the registered readers is requesting data. More...
 
- Public Member Functions inherited from DataWriter
 DataWriter (Component *owner, DataElement &element, UniversalDataElement *universal, Logger::TimePrecisionType timePrecisionType)
 
virtual ~DataWriter ()
 
bool setUnavailable (bool unavailable=true)
 
bool isUnavailable ()
 
bool setInvalid (bool invalid=true)
 
bool isInvalid ()
 
void registerChange (void)
 
virtual bool write (const Unit &unit, const unsigned char value, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Sets the Component's DataValue, with an optional timestamp. More...
 
virtual bool write (const Unit &unit, const double value, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 
virtual bool write (const Unit &unit, const int value, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Set functions. More...
 
const TimestampgetTimestamp ()
 Returns the Timestamp of the last write. More...
 
bool isDataRequested ()
 Returns true if one of the readers registered with this writer's dataElement is requesting data. More...
 
bool isImplemented ()
 Returns true if there is a non-failed "implementor" reader of this writer. More...
 
void componentRequestData (bool requestingData)
 
- Public Member Functions inherited from DataAccessor
virtual ~DataAccessor ()
 
virtual DataElementgetElement (void) const
 
virtual ComponentgetOwner (void) const
 
AccessorType getAccessorType () const
 
DataAccessgetDataAccess () const
 
Logger::TimePrecisionType getTimePrecision () const
 
- Public Member Functions inherited from AbstractBlobWriter
virtual ~AbstractBlobWriter ()
 A DataWriter for writing BlobValues, normally created via Component::newBlobWriter() See below for implementation in BlobWriter Also implemented in UniversalWriter::UniversalBlobWriter. More...
 
virtual bool writeBlob (const void *bytes, size_t elements, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Simply writes the binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T , size_t M>
bool write1DArray (const Unit &unit, T(&x)[M], const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes the array as a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T >
bool write1DClass (const Unit &unit, I1D< T > &i1d, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes data from the class that implements as I1D a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T >
bool write1DPtr (const Unit &unit, const T *values, int m, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes data from the 1-d pointer as a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T , size_t M, size_t N>
bool write2DArray (const Unit &unit, T(&x)[M][N], const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes the array as a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T >
bool write2DClass (const Unit &unit, I2D< T > &i2d, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes data from the class that implements as I2D a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T >
bool write2DPtr (const Unit &unit, const T **values, int m, int n, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes data from the 2-d pointer as a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T , size_t M, size_t N, size_t O>
bool write3DArray (const Unit &unit, T(&x)[M][N][O], const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes the array as a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T >
bool write3DClass (const Unit &unit, I3D< T > &i3d, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes data from the class that implements as I3D a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 
template<typename T >
bool write3DPtr (const Unit &unit, const T ***values, int m, int n, int o, const Timestamp &timestamp=Timestamp::NOT_SET_TIME)
 Writes data from the 3-d pointer as a binary blob ElementURI used to declare this DataWriter should have a BLOB TYPE;. More...
 

Protected Member Functions

 UniversalBlobWriter (Component *owner, DataElement &element, UniversalDataElement *universal, Logger::TimePrecisionType timePrecisionType)
 
- Protected Member Functions inherited from DataAccessor
 DataAccessor (Component *owner, DataElement &element, AccessorType accessorType, UniversalDataElement *universal, Logger::TimePrecisionType timePrecision=Logger::TIME_PRECISION_MILLIS)
 Protected Constructor. More...
 
- Protected Member Functions inherited from AbstractBlobWriter
 AbstractBlobWriter (const ElementURI &elementUri)
 

Friends

class Component
 

Additional Inherited Members

- Public Types inherited from DataAccessor
enum  AccessorType { DATA_READER = 0, DATA_WRITER = 1 }
 
enum  RequestStrategy {
  NO_STRATEGY = -1, MIN_POWER, MIN_ERROR, MIN_LATENCY,
  MAX_FREQUENCY, ALL_DEVICES, STRATEGY_COUNT
}
 
- Static Public Member Functions inherited from DataAccessor
static RequestStrategy Str2RequestStrategy (const char *const strategyStr)
 
static const char * RequestStrategy2Str (DataAccessor::RequestStrategy strategy)
 
- Static Public Attributes inherited from DataAccessor
static const char *const REQUEST_STRATEGY_STRS [STRATEGY_COUNT]
 
- Protected Attributes inherited from DataWriter
bool componentRequestingData_
 
- Protected Attributes inherited from DataAccessor
Componentowner_
 
DataElementelement_
 
AccessorType accessorType_
 
Logger::TimePrecisionType timePrecision_
 
DataAccessdataAccess_
 
- Protected Attributes inherited from AbstractBlobWriter
BlobValue blobValue_
 

Constructor & Destructor Documentation

virtual UniversalBlobWriter::~UniversalBlobWriter ( )
inlinevirtual
UniversalBlobWriter::UniversalBlobWriter ( Component owner,
DataElement element,
UniversalDataElement universal,
Logger::TimePrecisionType  timePrecisionType 
)
inlineprotected

Member Function Documentation

virtual const ElementURI& UniversalBlobWriter::getUri ( void  ) const
inlinevirtual

Implements AbstractBlobWriter.

References DataAccessor::getUri().

virtual bool UniversalBlobWriter::write ( const DataValue value,
const Timestamp timestamp 
)
inlinevirtual

Implements AbstractBlobWriter.

References DataWriter::write().

Friends And Related Function Documentation

friend class Component
friend

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