70 [[nodiscard]]
virtual uint64_t
RecordId()
const = 0;
72 virtual void Name(
const std::string& name) = 0;
73 [[nodiscard]]
virtual std::string
Name()
const = 0;
83 [[nodiscard]]
virtual uint16_t
Flags()
const;
84 virtual void Flags(uint16_t flags);
90 [[nodiscard]]
virtual std::vector<IChannel*>
Channels()
const = 0;
109 const IChannel& reference)
const = 0;
138 mutable std::vector<uint8_t>
141 mutable size_t sample_ = 0;
Base class for all MDF blocks.
Definition iblock.h:19
Interface against a channel group (CG) block.
Definition ichannelgroup.h:66
virtual void PathSeparator(char16_t path_separator)
Path separator.
virtual std::string Description() const =0
Description.
virtual uint64_t NofSamples() const =0
Sets number of samples.
virtual char16_t PathSeparator()
Sets the path separator.
virtual std::vector< IChannel * > Channels() const =0
Returns a list of channels.
virtual IChannel * GetChannel(const std::string_view &name) const
Returns an existing channels part of name.
std::vector< uint8_t > sample_buffer_
Temporary record when saving samples.
Definition ichannelgroup.h:139
virtual void ClearData()
Resets all temporary stored samples.
virtual const IChannel * GetXChannel(const IChannel &reference) const =0
Returns an external reference channel.
void IncrementSample() const
Add a sample.
size_t Sample() const
Returns number of samples.
virtual uint64_t RecordId() const =0
Record identity.
SampleRecord GetSampleRecord() const
Support function that creates a sample record.
virtual void NofSamples(uint64_t nof_samples)=0
Number of samples.
virtual void Description(const std::string &description)=0
Sets a descriptive text.
virtual void RecordId(uint64_t record_id)=0
Sets the record identity.
virtual ISourceInformation * CreateSourceInformation()
Create a source information (SI) block.
virtual uint16_t Flags() const
Sets CgFlag.
virtual IChannel * CreateChannel(const std::string_view &name)
Creates a new channel or returns an existing channel.
virtual void Name(const std::string &name)=0
Sets the name.
virtual IChannel * CreateChannel()=0
Creates a new channel.
virtual void Flags(uint16_t flags)
Returns CgFlag.
virtual ISourceInformation * SourceInformation() const
Returns the source information (SI) block if it exist. */.
virtual std::string Name() const =0
CG name.
virtual IMetaData * CreateMetaData()
Creates a meta-data (MD) block.
virtual IMetaData * MetaData() const
Returns the meta-data (MD) block if it exist.
void ResetSampleCounter() const
Resets the internal sample counter. Internal use only.
Definition ichannelgroup.h:121
virtual const IDataGroup * DataGroup() const =0
Returns a pointer to data group (DG) block.
Defines a MDF channel (CN) block.
Definition ichannel.h:126
Interface to a data group (DG) block.
Definition idatagroup.h:42
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 uint16_t PlainBusEvent
Plain bus event flag.
Definition ichannelgroup.h:44
constexpr uint16_t BusEvent
Bus event flag.
Definition ichannelgroup.h:41
constexpr uint16_t EventSignal
Event signal group. The group store events not values.
Definition ichannelgroup.h:50
constexpr uint16_t VlsdChannel
Flag is used to indicate the this block is a variable length CG block.
Definition ichannelgroup.h:38
constexpr uint16_t RemoteMaster
Remote master flag.
Definition ichannelgroup.h:47
Main namespace for the MDF library.
Definition canmessage.h:17
Simple record buffer structure.
Definition samplerecord.h:20