Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
iv::comms::ixxat::IxxatCommunicationsDriver Class Referencefinal

#include <IxxatCommunicationsDriver.hpp>

Inheritance diagram for iv::comms::ixxat::IxxatCommunicationsDriver:
[legend]
Collaboration diagram for iv::comms::ixxat::IxxatCommunicationsDriver:
[legend]

Public Member Functions

 IxxatCommunicationsDriver ()
 
 IxxatCommunicationsDriver (const IxxatCommunicationsDriver &other)=delete
 
 ~IxxatCommunicationsDriver () override
 

Static Public Member Functions

static std::vector< std::string > listDevices (const std::shared_ptr< AbstractProgress > &progress)
 

Protected Attributes

iv::types::timestamp m_lastTimeReconnected {0}
 
std::shared_ptr< iv::comms::ICommunicationDriverm_driver
 

Private Member Functions

iv::comms::eResponse init () override
 
iv::comms::eResponse end () override
 
iv::comms::eResponse reconnect () override
 
iv::comms::eResponse start () override
 
iv::comms::eResponse stop () override
 
iv::comms::eResponse read (std::shared_ptr< CMessageCan > &message) override
 
iv::comms::eResponse send (const CMessageCan &message) override
 
bool isOnline () override
 
void configure (const iv::model::comms::NetworkData &commConfig) override
 
ECI_RESULT prvOpenCtrHandle ()
 
void prvEvaluateStatus ()
 
int64_t prvGetStatus () const
 

Private Attributes

iv::eState m_state
 
iv::types::timestamp m_timeLastStart
 
bool m_isOnline
 
bool m_needReconnect
 
iv::core::MonotonicTimerm_timerToReOpen
 
std::mutex m_mutex
 
uint16_t m_idSubnetwork
 
IIxxatInterfacem_interfaceOpt
 
std::string m_hwSerial
 
uint32_t m_hwPort
 
uint8_t m_operationMode
 
uint8_t m_busTimingRegister0
 
uint8_t m_busTimingRegister1
 
uint32_t m_dwHwIndex
 
uint32_t m_dwCtrlIndex
 
ECI_CTRL_HDL m_dwCtrlHandle
 
std::mutex m_checkOnlineMutex
 
iv::core::MonotonicTimerm_checkOnlineTimer
 

Constructor & Destructor Documentation

◆ IxxatCommunicationsDriver() [1/2]

iv::comms::ixxat::IxxatCommunicationsDriver::IxxatCommunicationsDriver ( )

◆ IxxatCommunicationsDriver() [2/2]

iv::comms::ixxat::IxxatCommunicationsDriver::IxxatCommunicationsDriver ( const IxxatCommunicationsDriver & other)
delete

◆ ~IxxatCommunicationsDriver()

iv::comms::ixxat::IxxatCommunicationsDriver::~IxxatCommunicationsDriver ( )
override

Member Function Documentation

◆ configure()

void iv::comms::ixxat::IxxatCommunicationsDriver::configure ( const iv::model::comms::NetworkData & commConfig)
overrideprivatevirtual

◆ end()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::end ( )
overrideprivatevirtual

◆ init()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::init ( )
overrideprivatevirtual

◆ isOnline()

bool iv::comms::ixxat::IxxatCommunicationsDriver::isOnline ( )
overrideprivatevirtual

◆ listDevices()

std::vector< std::string > iv::comms::ixxat::IxxatCommunicationsDriver::listDevices ( const std::shared_ptr< AbstractProgress > & progress)
static

◆ prvEvaluateStatus()

void iv::comms::ixxat::IxxatCommunicationsDriver::prvEvaluateStatus ( )
private

◆ prvGetStatus()

int64_t iv::comms::ixxat::IxxatCommunicationsDriver::prvGetStatus ( ) const
nodiscardprivate

◆ prvOpenCtrHandle()

ECI_RESULT iv::comms::ixxat::IxxatCommunicationsDriver::prvOpenCtrHandle ( )
private

◆ read()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::read ( std::shared_ptr< CMessageCan > & message)
overrideprivatevirtual

◆ reconnect()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::reconnect ( )
overrideprivatevirtual

◆ send()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::send ( const CMessageCan & message)
overrideprivatevirtual

◆ start()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::start ( )
overrideprivatevirtual

◆ stop()

iv::comms::eResponse iv::comms::ixxat::IxxatCommunicationsDriver::stop ( )
overrideprivatevirtual

Member Data Documentation

◆ m_busTimingRegister0

uint8_t iv::comms::ixxat::IxxatCommunicationsDriver::m_busTimingRegister0
private

◆ m_busTimingRegister1

uint8_t iv::comms::ixxat::IxxatCommunicationsDriver::m_busTimingRegister1
private

◆ m_checkOnlineMutex

std::mutex iv::comms::ixxat::IxxatCommunicationsDriver::m_checkOnlineMutex
private

◆ m_checkOnlineTimer

iv::core::MonotonicTimer* iv::comms::ixxat::IxxatCommunicationsDriver::m_checkOnlineTimer
private

◆ m_driver

std::shared_ptr<iv::comms::ICommunicationDriver> iv::comms::ICommunicationProtocol::m_driver
protectedinherited

◆ m_dwCtrlHandle

ECI_CTRL_HDL iv::comms::ixxat::IxxatCommunicationsDriver::m_dwCtrlHandle
private

◆ m_dwCtrlIndex

uint32_t iv::comms::ixxat::IxxatCommunicationsDriver::m_dwCtrlIndex
private

◆ m_dwHwIndex

uint32_t iv::comms::ixxat::IxxatCommunicationsDriver::m_dwHwIndex
private

◆ m_hwPort

uint32_t iv::comms::ixxat::IxxatCommunicationsDriver::m_hwPort
private

◆ m_hwSerial

std::string iv::comms::ixxat::IxxatCommunicationsDriver::m_hwSerial
private

◆ m_idSubnetwork

uint16_t iv::comms::ixxat::IxxatCommunicationsDriver::m_idSubnetwork
private

◆ m_interfaceOpt

IIxxatInterface* iv::comms::ixxat::IxxatCommunicationsDriver::m_interfaceOpt
private

◆ m_isOnline

bool iv::comms::ixxat::IxxatCommunicationsDriver::m_isOnline
private

◆ m_lastTimeReconnected

iv::types::timestamp iv::comms::ICommunicationDriver::m_lastTimeReconnected {0}
protectedinherited

◆ m_mutex

std::mutex iv::comms::ixxat::IxxatCommunicationsDriver::m_mutex
mutableprivate

◆ m_needReconnect

bool iv::comms::ixxat::IxxatCommunicationsDriver::m_needReconnect
private

◆ m_operationMode

uint8_t iv::comms::ixxat::IxxatCommunicationsDriver::m_operationMode
private

◆ m_state

iv::eState iv::comms::ixxat::IxxatCommunicationsDriver::m_state
private

◆ m_timeLastStart

iv::types::timestamp iv::comms::ixxat::IxxatCommunicationsDriver::m_timeLastStart
private

◆ m_timerToReOpen

iv::core::MonotonicTimer* iv::comms::ixxat::IxxatCommunicationsDriver::m_timerToReOpen
private

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