84 [[nodiscard]]
virtual double Interval()
const = 0;
95 virtual void Flags(uint8_t flags);
96 [[nodiscard]]
virtual uint8_t
Flags()
const;
109 template <
typename T>
111 uint64_t array_index,
SrValue<T>& value )
const;
121 template <
typename T>
123 uint64_t array_index,
SrValue<T>& value )
const;
142 uint64_t array_index,
SrValue<T>& value )
const {
198 uint64_t array_index,
SrValue<T>& value )
const {
208 if (channel_conversion != 0) {
210 const bool min_valid = channel_conversion->Convert(temp.
MinValue, value.
MinValue);
211 const bool max_valid = channel_conversion->Convert(temp.
MaxValue, value.
MaxValue);
230 if (channel_conversion != 0) {
232 const bool min_valid = channel_conversion->Convert(temp.
MinValue, value.
MinValue);
233 const bool max_valid = channel_conversion->Convert(temp.
MaxValue, value.
MaxValue);
252 if (channel_conversion != 0) {
254 const bool min_valid = channel_conversion->Convert(temp.
MinValue, value.
MinValue);
255 const bool max_valid = channel_conversion->Convert(temp.
MaxValue, value.
MaxValue);
Base class for all MDF blocks.
Definition iblock.h:19
Interface against a channel group (CG) block.
Definition ichannelgroup.h:66
Defines a MDF channel (CN) block.
Definition ichannel.h:126
virtual IChannelConversion * ChannelConversion() const =0
Returns the conversion block, if any.
virtual void DataType(ChannelDataType type)=0
Sets the data type.
Defines an interface to a sample reduction (SR) block.
Definition isamplereduction.h:58
virtual void NofSamples(uint64_t nof_samples)=0
Sets number of samples in the block.
virtual void Flags(uint8_t flags)
Sets SR flags.
virtual double Interval() const =0
Returns the interval value.
virtual uint8_t Flags() const
Returns the SR flags.
virtual void Interval(double interval)=0
Sets the interval value.
virtual void GetChannelValueUint(const IChannel &channel, uint64_t sample, uint64_t array_index, SrValue< uint64_t > &value) const =0
virtual void ClearData()=0
Resets the internal SR data bytes.
virtual void SyncType(SrSyncType type)
Synchronization type. Example Time or number of samples.
virtual SrSyncType SyncType() const
return type of synchronization.
virtual const IChannelGroup * ChannelGroup() const =0
Returns its channel group.
void GetEngValue(const IChannel &channel, uint64_t sample, uint64_t array_index, SrValue< T > &value) const
Returns the scaled SR value.
Definition isamplereduction.h:197
void GetChannelValue(const IChannel &channel, uint64_t sample, uint64_t array_index, SrValue< T > &value) const
Returns the channel value for a specific sample.
Definition isamplereduction.h:141
virtual uint64_t NofSamples() const =0
Returns number of samples.
virtual void GetChannelValueDouble(const IChannel &channel, uint64_t sample, uint64_t array_index, SrValue< double > &value) const =0
virtual void GetChannelValueInt(const IChannel &channel, uint64_t sample, uint64_t array_index, SrValue< int64_t > &value) const =0
All MDF blocks inherits from the IBlock class. The interface class is used internally in lists....
The define an interface against a channel block (CN).
constexpr uint8_t InvalidationByte
The block contains an invalidation byte.
Definition isamplereduction.h:33
constexpr uint8_t DominantBit
Dominant invalidation flag.
Definition isamplereduction.h:34
Main namespace for the MDF library.
Definition canmessage.h:17
@ SignedIntegerBe
Signed integer, big endian.
@ UnsignedIntegerLe
Unsigned integer, little endian.
@ FloatLe
Float, little endian.
@ FloatBe
Float, big endian.
@ SignedIntegerLe
Signed integer, little endian.
@ UnsignedIntegerBe
Unsigned integer, big endian.
SrSyncType
Type of master for a sample reduction (SR) block.
Definition isamplereduction.h:23
Template class that is used to handle reduction sample.
Definition isamplereduction.h:43
T MeanValue
Mean value.
Definition isamplereduction.h:44
T MinValue
Min value.
Definition isamplereduction.h:45
bool MaxValid
Max value valid.
Definition isamplereduction.h:49
T MaxValue
Max value.
Definition isamplereduction.h:46
bool MeanValid
Mean value valid.
Definition isamplereduction.h:47
bool MinValid
Min value valid.
Definition isamplereduction.h:48