|
|
| IChannelObserver (const IDataGroup &dataGroup, const IChannel &channel) |
| | Constructor.
|
| |
|
| ~IChannelObserver () override=default |
| | Default destructor.
|
| |
|
| IChannelObserver (const IChannelObserver &)=delete |
| |
|
| IChannelObserver (IChannelObserver &&)=delete |
| |
|
IChannelObserver & | operator= (const IChannelObserver &)=delete |
| |
|
IChannelObserver & | operator= (IChannelObserver &&)=delete |
| |
|
virtual uint64_t | NofSamples () const =0 |
| | Returns number of samples.
|
| |
|
std::string | Name () const |
| | Channel name.
|
| |
|
std::string | Unit () const |
| | Channel unit.
|
| |
| const IChannel & | Channel () const |
| | Returns the channel object.
|
| |
|
bool | IsMaster () const |
| | True if this is the master channel.
|
| |
|
bool | IsArray () const |
| | True if this channel is an array channel.
|
| |
| std::vector< uint64_t > | Shape () const |
| | Returns a shape vector that describes an array dimension.
|
| |
| void | ReadVlsdData (bool read_vlsd_data) |
| | Property interface that defines if the VLSD raw data should be read or not.
|
| |
|
bool | ReadVlsdData () const |
| | Returns the read VLSD bytes property.
|
| |
| uint64_t | ArraySize () const |
| | If this is an array channel, this function returns the array size.
|
| |
| template<typename V > |
| bool | GetChannelValue (uint64_t sample, V &value, uint64_t array_index=0) const |
| | Returns the channel value for a sample.
|
| |
| template<typename V > |
| std::vector< bool > | GetChannelSamples (std::vector< V > &values) const |
| | Simple function that returns all non-scaled samples.
|
| |
| template<typename V > |
| std::vector< bool > | GetChannelValues (uint64_t sample, std::vector< V > &values) const |
| | Returns a vector of array channel values for a specific sample.
|
| |
| template<typename V > |
| bool | GetEngValue (uint64_t sample, V &value, uint64_t array_index=0) const |
| | Returns the engineering value for a specific value.
|
| |
| template<typename V > |
| std::vector< bool > | GetEngSamples (std::vector< V > &values) const |
| | Simple function that returns all scaled samples.
|
| |
| template<typename V > |
| std::vector< bool > | GetEngValues (uint64_t sample, std::vector< V > &values) const |
| | Returns a vector of array values for a specific sample.
|
| |
| std::string | EngValueToString (uint64_t sample) const |
| | Support function that convert a sample value to a user friendly string.
|
| |
| const std::vector< uint64_t > & | GetOffsetList () const |
| | Returns the sample to VLSD offset list.
|
| |
|
const std::vector< bool > & | GetValidList () const |
| | Returns the sample to valid list.
|
| |
|
template<> |
| bool | GetChannelValue (uint64_t sample, std::string &value, uint64_t array_index) const |
| | Returns the sample channel value as a string.
|
| |
|
template<> |
| bool | GetChannelValue (uint64_t sample, std::vector< uint8_t > &value, uint64_t array_index) const |
| | Returns the sample channel value as a byte array.
|
| |
|
template<> |
| bool | GetEngValue (uint64_t sample, std::vector< uint8_t > &value, uint64_t array_index) const |
| | Returns the sample engineering (channel) value as a byte array.
|
| |
|
| ISampleObserver (const IDataGroup &data_group) |
| | Sample observer constructor.
|
| |
|
virtual | ~ISampleObserver () |
| | Destructor.
|
| |
| virtual void | AttachObserver () |
| | Attach the observer to an observer list (publisher).
|
| |
| virtual void | DetachObserver () |
| | Detach the observer from an observer list.
|
| |
| virtual bool | OnSample (uint64_t sample, uint64_t record_id, const std::vector< uint8_t > &record) |
| | Observer function that receives the sample record and parse out a channel value.
|
| |
| bool | IsRecordIdNeeded (uint64_t record_id) const |
| | Function that test if this observer needs to read a specific record.
|
| |
| template<typename V > |
| bool | GetChannelValue (const IChannel &channel, uint64_t sample, const std::vector< uint8_t > &record, V &value, uint64_t array_index=0) const |
| | The function returns a channel value.
|
| |
| template<typename V > |
| bool | GetEngValue (const IChannel &channel, uint64_t sample, const std::vector< uint8_t > &record, V &value, uint64_t array_index=0) const |
| | Returns the scaled sample value for the channel with the record bytes as input. This function is mainly for internal use but is used together with sample observers.
|
| |
|
|
virtual bool | GetSampleUnsigned (uint64_t sample, uint64_t &value, uint64_t array_index) const =0 |
| | Returns a unsigned sample value.
|
| |
|
virtual bool | GetSampleSigned (uint64_t sample, int64_t &value, uint64_t array_index) const =0 |
| | Returns a signed sample value.
|
| |
|
virtual bool | GetSampleFloat (uint64_t sample, double &value, uint64_t array_index) const =0 |
| | Returns a float sample value.
|
| |
|
virtual bool | GetSampleText (uint64_t sample, std::string &value, uint64_t array_index) const =0 |
| | Returns a string sample value.
|
| |
|
virtual bool | GetSampleByteArray (uint64_t sample, std::vector< uint8_t > &value) const =0 |
| | Returns a byte array sample value.
|
| |
The main purpose for a channel observer is to store all channel samples for a channel. This object is used when reading data from a MDF file.