Public Member Functions | Public Attributes | List of all members
PairableCanDriver Struct Reference

#include <test_node.hpp>

Inheritance diagram for PairableCanDriver:
Inheritance graph
[legend]

Public Member Functions

virtual uavcan::int16_t configureFilters (const uavcan::CanFilterConfig *, uavcan::uint16_t)
 
virtual uavcan::uint64_t getErrorCount () const
 
virtual uavcan::ICanIfacegetIface (uavcan::uint8_t iface_index)
 
virtual const uavcan::ICanIfacegetIface (uavcan::uint8_t iface_index) const
 
virtual uavcan::uint16_t getNumFilters () const
 
virtual uavcan::uint8_t getNumIfaces () const
 
void linkTogether (PairableCanDriver *with)
 
 PairableCanDriver (uavcan::ISystemClock &clock)
 
void pushRxToAllIfaces (const uavcan::CanFrame &can_frame)
 
virtual uavcan::int16_t receive (uavcan::CanFrame &out_frame, uavcan::MonotonicTime &out_ts_monotonic, uavcan::UtcTime &out_ts_utc, uavcan::CanIOFlags &out_flags)
 
virtual uavcan::int16_t select (uavcan::CanSelectMasks &inout_masks, const uavcan::CanFrame *(&)[uavcan::MaxCanIfaces], uavcan::MonotonicTime blocking_deadline)
 
virtual uavcan::int16_t send (const uavcan::CanFrame &frame, uavcan::MonotonicTime, uavcan::CanIOFlags flags)
 
- Public Member Functions inherited from uavcan::ICanDriver
virtual int16_t select (CanSelectMasks &inout_masks, const CanFrame *(&pending_tx)[MaxCanIfaces], MonotonicTime blocking_deadline)=0
 
virtual ~ICanDriver ()
 
- Public Member Functions inherited from uavcan::ICanIface
virtual int16_t receive (CanFrame &out_frame, MonotonicTime &out_ts_monotonic, UtcTime &out_ts_utc, CanIOFlags &out_flags)=0
 
virtual int16_t send (const CanFrame &frame, MonotonicTime tx_deadline, CanIOFlags flags)=0
 
virtual ~ICanIface ()
 

Public Attributes

uavcan::ISystemClockclock
 
uint64_t error_count
 
std::queue< uavcan::CanFrameloopback_queue
 
std::set< PairableCanDriver * > others
 
std::queue< uavcan::CanFrameread_queue
 

Detailed Description

Definition at line 52 of file test_node.hpp.

Constructor & Destructor Documentation

◆ PairableCanDriver()

PairableCanDriver::PairableCanDriver ( uavcan::ISystemClock clock)
inline

Definition at line 60 of file test_node.hpp.

Member Function Documentation

◆ configureFilters()

virtual uavcan::int16_t PairableCanDriver::configureFilters ( const uavcan::CanFilterConfig filter_configs,
uavcan::uint16_t  num_configs 
)
inlinevirtual

Configure the hardware CAN filters. CanFilterConfig.

Returns
0 = success, negative for error.

Implements uavcan::ICanIface.

Definition at line 142 of file test_node.hpp.

◆ getErrorCount()

virtual uavcan::uint64_t PairableCanDriver::getErrorCount ( ) const
inlinevirtual

Continuously incrementing counter of hardware errors. Arbitration lost should not be treated as a hardware error.

Implements uavcan::ICanIface.

Definition at line 144 of file test_node.hpp.

◆ getIface() [1/2]

virtual uavcan::ICanIface* PairableCanDriver::getIface ( uavcan::uint8_t  iface_index)
inlinevirtual

Returns an interface by index, or null pointer if the index is out of range.

Implements uavcan::ICanDriver.

Definition at line 72 of file test_node.hpp.

◆ getIface() [2/2]

virtual const uavcan::ICanIface* PairableCanDriver::getIface ( uavcan::uint8_t  iface_index) const
inlinevirtual

Default implementation of this method calls the non-const overload of getIface(). Can be overriden by the application if necessary.

Reimplemented from uavcan::ICanDriver.

Definition at line 76 of file test_node.hpp.

◆ getNumFilters()

virtual uavcan::uint16_t PairableCanDriver::getNumFilters ( ) const
inlinevirtual

Number of available hardware filters.

Implements uavcan::ICanIface.

Definition at line 143 of file test_node.hpp.

◆ getNumIfaces()

virtual uavcan::uint8_t PairableCanDriver::getNumIfaces ( ) const
inlinevirtual

Total number of available CAN interfaces. This value shall not change after initialization.

Implements uavcan::ICanDriver.

Definition at line 81 of file test_node.hpp.

◆ linkTogether()

void PairableCanDriver::linkTogether ( PairableCanDriver with)
inline

Definition at line 65 of file test_node.hpp.

◆ pushRxToAllIfaces()

void PairableCanDriver::pushRxToAllIfaces ( const uavcan::CanFrame can_frame)
inline

Definition at line 137 of file test_node.hpp.

◆ receive()

virtual uavcan::int16_t PairableCanDriver::receive ( uavcan::CanFrame out_frame,
uavcan::MonotonicTime out_ts_monotonic,
uavcan::UtcTime out_ts_utc,
uavcan::CanIOFlags out_flags 
)
inlinevirtual

Definition at line 116 of file test_node.hpp.

◆ select()

virtual uavcan::int16_t PairableCanDriver::select ( uavcan::CanSelectMasks inout_masks,
const uavcan::CanFrame (&)[uavcan::MaxCanIfaces],
uavcan::MonotonicTime  blocking_deadline 
)
inlinevirtual

Definition at line 83 of file test_node.hpp.

◆ send()

virtual uavcan::int16_t PairableCanDriver::send ( const uavcan::CanFrame frame,
uavcan::MonotonicTime  ,
uavcan::CanIOFlags  flags 
)
inlinevirtual

Definition at line 102 of file test_node.hpp.

Member Data Documentation

◆ clock

uavcan::ISystemClock& PairableCanDriver::clock

Definition at line 54 of file test_node.hpp.

◆ error_count

uint64_t PairableCanDriver::error_count

Definition at line 58 of file test_node.hpp.

◆ loopback_queue

std::queue<uavcan::CanFrame> PairableCanDriver::loopback_queue

Definition at line 57 of file test_node.hpp.

◆ others

std::set<PairableCanDriver*> PairableCanDriver::others

Definition at line 55 of file test_node.hpp.

◆ read_queue

std::queue<uavcan::CanFrame> PairableCanDriver::read_queue

Definition at line 56 of file test_node.hpp.


The documentation for this struct was generated from the following file:


uavcan_communicator
Author(s):
autogenerated on Fri Dec 13 2024 03:10:04