Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CMessageCan Class Referencefinal

#include <CMessageCan.hpp>

Inheritance diagram for CMessageCan:
[legend]
Collaboration diagram for CMessageCan:
[legend]

Public Member Functions

void getValuesDataMessageAlarm (iv::types::indexChannel *indexChannelOpt, uint8_t *idGroupForLomsOpt, uint8_t *typeAlarmOpt, float *valueAlarmOpt) const
 
void getValuesDataMessageAlarmTimestamp (iv::types::indexChannel *indexChannelOpt, uint16_t *numDaysSince1984Opt, uint32_t *millisecondsOpt) const
 
void getValuesDataMessageTimestamp (uint16_t *numDaysSince1984Opt, uint32_t *numMilliseconds1984Opt) const
 
void getValuesDataMessageAnalogInput (iv::types::unitId *idUnitOpt, iv::types::indexChannel *indexChannelOpt, uint8_t *typeDataOpt, uint32_t *valueOpt) const
 
void getValuesDataMessageText (iv::types::unitId *idUnitOpt, iv::types::indexChannel *indexChannelOpt, std::string *valueStringOpt, uint8_t *segmentPositionOpt, bool *isFirstSegmentOpt, bool *isLastSegmentOpt) const
 
void getValuesDataMessageCommand (iv::types::unitId *idUnitLocalDestOpt, iv::types::indexChannel *indexChannelOpt, uint8_t *commandOpt, uint32_t *valueOpt) const
 
void getValuesDataMessageCommandBool (iv::types::unitId *idUnitLocalDestOpt, iv::types::indexChannel *indexChannelOpt, uint8_t *commandOpt, bool *valueOpt) const
 
void getValuesDataMessageCommandChar (iv::types::unitId *idUnitLocalDestOpt, iv::types::indexChannel *indexChannelOpt, uint8_t *commandOpt, uint8_t *valueOpt) const
 
void getValuesDataMessageGmtSync (iv::types::unitId *idUnitStationOpt, int8_t *offsetGMTOpt, uint32_t *timeUTCOpt) const
 
void getValuesDataMessageHeartbeat (iv::comms::eHeartbeatState *heartbeatStateOpt, uint8_t *heartbeatTypeOpt) const
 
void getValuesDataMessageHistorySync (uint32_t *idStationOpt, iv::types::indexChannel *indexChannelOpt, uint8_t *typeAlarmAndStatusOpt, iv::types::timestamp *timeOpt) const
 
 CMessageCan ()=default
 
 CMessageCan (std::string_view source, uint32_t msgId, const uint8_t bytes_[8], uint32_t timeStamp, uint32_t lengthData, bool isRTR, iv::types::subnetwork idSubnetwork, uint32_t lengthDataExtra, uint8_t **bytesDataExtra, bool isExtended)
 
 CMessageCan (const CMessageCan &other)=default
 
 CMessageCan (CMessageCan &&other)=default
 
 ~CMessageCan () override
 
CMessageCanoperator= (const CMessageCan &other)=delete
 
CMessageCanoperator= (CMessageCan &&other)=delete
 
uint64_t lengthMessage () const
 
iv::comms::IMessageCommclone () const
 
const std::string & getMessageSource () const
 
iv::comms::can::eMessageType getMessageType () const
 
void getData (uint8_t *bytes_, uint32_t *lengthData) const
 
const uint8_t * getDataExtra (uint32_t *lengthDataExtra) const
 
uint32_t getId () const
 
uint32_t getIdUnit () const
 
uint16_t getIdUnitLocal () const
 
uint16_t getIdSubnetwork () const
 
std::shared_ptr< iv::streams::IInputStreamgetInputData () const
 
std::shared_ptr< iv::streams::IInputStreamgetInputStream () const
 
uint32_t getLengthData () const
 
bool getRtr () const
 
bool getIsExtended () const
 
uint32_t getTimeStamp () const
 
bool getTextInfo (bool &isInit, bool &isFinish, uint8_t &position) const
 gets text segment msg info
 
bool isCan () const
 
bool isCommand () const
 
bool isCommandAck () const
 
bool isEqual (const iv::comms::IMessageComm *message) const
 
bool isOkMessage () const
 
std::vector< std::byte > toPcanGatewayPacket () const
 
bool deserialize (const std::vector< std::byte > &buffer) override
 
std::vector< std::byte > serialize () const override
 
bool fromCanFrame (can_frame canFrame)
 
std::string toString () const
 
void getDigitalInputs (std::vector< bool > &inputs, uint32_t numBytes=8) const
 

Static Public Member Functions

template<typename T >
requires std::is_base_of_v<ISerializable, T>
static std::vector< std::byte > serialize (const T &object)
 

Public Attributes

std::string m_sourceRef
 
iv::comms::can::CanDataMessagem_messageDataCan {}
 
std::vector< std::byte > bytes
 

Constructor & Destructor Documentation

◆ CMessageCan() [1/4]

CMessageCan::CMessageCan ( )
default

◆ CMessageCan() [2/4]

CMessageCan::CMessageCan ( std::string_view source,
uint32_t msgId,
const uint8_t bytes_[8],
uint32_t timeStamp,
uint32_t lengthData,
bool isRTR,
iv::types::subnetwork idSubnetwork,
uint32_t lengthDataExtra,
uint8_t ** bytesDataExtra,
bool isExtended )

◆ CMessageCan() [3/4]

CMessageCan::CMessageCan ( const CMessageCan & other)
default

◆ CMessageCan() [4/4]

CMessageCan::CMessageCan ( CMessageCan && other)
default

◆ ~CMessageCan()

CMessageCan::~CMessageCan ( )
override

Member Function Documentation

◆ clone()

iv::comms::IMessageComm * CMessageCan::clone ( ) const
nodiscard

◆ deserialize()

bool CMessageCan::deserialize ( const std::vector< std::byte > & buffer)
overridevirtual

◆ fromCanFrame()

bool CMessageCan::fromCanFrame ( can_frame canFrame)

◆ getData()

void CMessageCan::getData ( uint8_t * bytes_,
uint32_t * lengthData ) const

◆ getDataExtra()

const uint8_t * CMessageCan::getDataExtra ( uint32_t * lengthDataExtra) const

◆ getDigitalInputs()

void CMessageCan::getDigitalInputs ( std::vector< bool > & inputs,
uint32_t numBytes = 8 ) const

◆ getId()

uint32_t CMessageCan::getId ( ) const
nodiscard

◆ getIdSubnetwork()

uint16_t CMessageCan::getIdSubnetwork ( ) const
nodiscard

◆ getIdUnit()

uint32_t CMessageCan::getIdUnit ( ) const
nodiscard

◆ getIdUnitLocal()

uint16_t CMessageCan::getIdUnitLocal ( ) const
nodiscard

◆ getInputData()

std::shared_ptr< iv::streams::IInputStream > CMessageCan::getInputData ( ) const
nodiscard

◆ getInputStream()

std::shared_ptr< iv::streams::IInputStream > CMessageCan::getInputStream ( ) const
nodiscard

◆ getIsExtended()

bool CMessageCan::getIsExtended ( ) const
nodiscard

◆ getLengthData()

uint32_t CMessageCan::getLengthData ( ) const
nodiscard

◆ getMessageSource()

const std::string & CMessageCan::getMessageSource ( ) const
nodiscard

◆ getMessageType()

iv::comms::can::eMessageType CMessageCan::getMessageType ( ) const
nodiscard

◆ getRtr()

bool CMessageCan::getRtr ( ) const
nodiscard

◆ getTextInfo()

bool CMessageCan::getTextInfo ( bool & isInit,
bool & isFinish,
uint8_t & position ) const

gets text segment msg info

Parameters
isInitreference to set if it's first segment
isFinishreference to set if it's final segment
positionreference to set position of the segment
Returns
if the info was correctly extracted

◆ getTimeStamp()

uint32_t CMessageCan::getTimeStamp ( ) const
nodiscard

◆ getValuesDataMessageAlarm()

void CMessageCan::getValuesDataMessageAlarm ( iv::types::indexChannel * indexChannelOpt,
uint8_t * idGroupForLomsOpt,
uint8_t * typeAlarmOpt,
float * valueAlarmOpt ) const

◆ getValuesDataMessageAlarmTimestamp()

void CMessageCan::getValuesDataMessageAlarmTimestamp ( iv::types::indexChannel * indexChannelOpt,
uint16_t * numDaysSince1984Opt,
uint32_t * millisecondsOpt ) const

◆ getValuesDataMessageAnalogInput()

void CMessageCan::getValuesDataMessageAnalogInput ( iv::types::unitId * idUnitOpt,
iv::types::indexChannel * indexChannelOpt,
uint8_t * typeDataOpt,
uint32_t * valueOpt ) const

◆ getValuesDataMessageCommand()

void CMessageCan::getValuesDataMessageCommand ( iv::types::unitId * idUnitLocalDestOpt,
iv::types::indexChannel * indexChannelOpt,
uint8_t * commandOpt,
uint32_t * valueOpt ) const

◆ getValuesDataMessageCommandBool()

void CMessageCan::getValuesDataMessageCommandBool ( iv::types::unitId * idUnitLocalDestOpt,
iv::types::indexChannel * indexChannelOpt,
uint8_t * commandOpt,
bool * valueOpt ) const

◆ getValuesDataMessageCommandChar()

void CMessageCan::getValuesDataMessageCommandChar ( iv::types::unitId * idUnitLocalDestOpt,
iv::types::indexChannel * indexChannelOpt,
uint8_t * commandOpt,
uint8_t * valueOpt ) const

◆ getValuesDataMessageGmtSync()

void CMessageCan::getValuesDataMessageGmtSync ( iv::types::unitId * idUnitStationOpt,
int8_t * offsetGMTOpt,
uint32_t * timeUTCOpt ) const

◆ getValuesDataMessageHeartbeat()

void CMessageCan::getValuesDataMessageHeartbeat ( iv::comms::eHeartbeatState * heartbeatStateOpt,
uint8_t * heartbeatTypeOpt ) const

◆ getValuesDataMessageHistorySync()

void CMessageCan::getValuesDataMessageHistorySync ( uint32_t * idStationOpt,
iv::types::indexChannel * indexChannelOpt,
uint8_t * typeAlarmAndStatusOpt,
iv::types::timestamp * timeOpt ) const

◆ getValuesDataMessageText()

void CMessageCan::getValuesDataMessageText ( iv::types::unitId * idUnitOpt,
iv::types::indexChannel * indexChannelOpt,
std::string * valueStringOpt,
uint8_t * segmentPositionOpt,
bool * isFirstSegmentOpt,
bool * isLastSegmentOpt ) const

◆ getValuesDataMessageTimestamp()

void CMessageCan::getValuesDataMessageTimestamp ( uint16_t * numDaysSince1984Opt,
uint32_t * numMilliseconds1984Opt ) const

◆ isCan()

bool CMessageCan::isCan ( ) const
nodiscard

◆ isCommand()

bool CMessageCan::isCommand ( ) const
nodiscard

◆ isCommandAck()

bool CMessageCan::isCommandAck ( ) const
nodiscard

◆ isEqual()

bool CMessageCan::isEqual ( const iv::comms::IMessageComm * message) const

◆ isOkMessage()

bool CMessageCan::isOkMessage ( ) const
nodiscard

◆ lengthMessage()

uint64_t CMessageCan::lengthMessage ( ) const
nodiscard

◆ operator=() [1/2]

CMessageCan & CMessageCan::operator= ( CMessageCan && other)
delete

◆ operator=() [2/2]

CMessageCan & CMessageCan::operator= ( const CMessageCan & other)
delete

◆ serialize() [1/2]

std::vector< std::byte > CMessageCan::serialize ( ) const
inlinenodiscardoverridevirtual

◆ serialize() [2/2]

template<typename T >
requires std::is_base_of_v<ISerializable, T>
static std::vector< std::byte > iv::core::ISerializable::serialize ( const T & object)
inlinestaticinherited

◆ toPcanGatewayPacket()

std::vector< std::byte > CMessageCan::toPcanGatewayPacket ( ) const
nodiscard

◆ toString()

std::string CMessageCan::toString ( ) const
nodiscard

Member Data Documentation

◆ bytes

std::vector<std::byte> iv::comms::IMessageComm::bytes
inherited

◆ m_messageDataCan

iv::comms::can::CanDataMessage* CMessageCan::m_messageDataCan {}

◆ m_sourceRef

std::string CMessageCan::m_sourceRef

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