libuav original

Dependents:   UAVCAN UAVCAN_Subscriber

Embed: (wiki syntax)

« Back to documentation index

NodeBase< NodeType > Class Template Reference

NodeBase< NodeType > Class Template Reference

Generic wrapper for node objects with some additional convenience functions. More...

#include <helpers.hpp>

Public Member Functions

 NodeBase (uavcan::ICanDriver &can_driver, uavcan::ISystemClock &clock)
 Simple forwarding constructor, compatible with uavcan::Node.
 NodeBase (DriverPackPtr driver_pack)
 Takes ownership of the driver container via the shared pointer.
template<typename DataType >
SubscriberPtr< DataType > makeSubscriber (const typename uavcan::Subscriber< DataType >::Callback &cb)
 Allocates uavcan::Subscriber in the heap using shared pointer.
template<typename DataType >
PublisherPtr< DataType > makePublisher (uavcan::MonotonicDuration tx_timeout=uavcan::Publisher< DataType >::getDefaultTxTimeout())
 Allocates uavcan::Publisher in the heap using shared pointer.
template<typename DataType >
ServiceServerPtr< DataType > makeServiceServer (const typename uavcan::ServiceServer< DataType >::Callback &cb)
 Allocates uavcan::ServiceServer in the heap using shared pointer.
template<typename DataType >
ServiceClientPtr< DataType > makeServiceClient (const typename uavcan::ServiceClient< DataType >::Callback &cb)
 Allocates uavcan::ServiceClient in the heap using shared pointer.
template<typename DataType >
BlockingServiceClientPtr
< DataType > 
makeBlockingServiceClient ()
 Allocates uavcan_linux::BlockingServiceClient in the heap using shared pointer.
TimerPtr makeTimer (uavcan::MonotonicTime deadline, const typename uavcan::Timer::Callback &cb)
 Allocates uavcan::Timer in the heap using shared pointer.
TimerPtr makeTimer (uavcan::MonotonicDuration period, const typename uavcan::Timer::Callback &cb)
 Allocates uavcan::Timer in the heap using shared pointer.

Detailed Description

template<typename NodeType>
class uavcan_linux::NodeBase< NodeType >

Generic wrapper for node objects with some additional convenience functions.

Definition at line 170 of file drivers/linux/include/uavcan_linux/helpers.hpp.


Constructor & Destructor Documentation

NodeBase ( uavcan::ICanDriver can_driver,
uavcan::ISystemClock clock 
)

Simple forwarding constructor, compatible with uavcan::Node.

Definition at line 195 of file drivers/linux/include/uavcan_linux/helpers.hpp.

NodeBase ( DriverPackPtr  driver_pack ) [explicit]

Takes ownership of the driver container via the shared pointer.

Definition at line 202 of file drivers/linux/include/uavcan_linux/helpers.hpp.


Member Function Documentation

BlockingServiceClientPtr<DataType> makeBlockingServiceClient (  )

Allocates uavcan_linux::BlockingServiceClient in the heap using shared pointer.

The service client will be initialized immediately.

Exceptions:
uavcan_linux::Exception.

Definition at line 268 of file drivers/linux/include/uavcan_linux/helpers.hpp.

PublisherPtr<DataType> makePublisher ( uavcan::MonotonicDuration  tx_timeout = uavcan::Publisher<DataType>::getDefaultTxTimeout() )

Allocates uavcan::Publisher in the heap using shared pointer.

The publisher will be initialized immediately.

Exceptions:
uavcan_linux::Exception.

Definition at line 226 of file drivers/linux/include/uavcan_linux/helpers.hpp.

ServiceClientPtr<DataType> makeServiceClient ( const typename uavcan::ServiceClient< DataType >::Callback &  cb )

Allocates uavcan::ServiceClient in the heap using shared pointer.

The service client will be initialized immediately.

Exceptions:
uavcan_linux::Exception.

Definition at line 254 of file drivers/linux/include/uavcan_linux/helpers.hpp.

ServiceServerPtr<DataType> makeServiceServer ( const typename uavcan::ServiceServer< DataType >::Callback &  cb )

Allocates uavcan::ServiceServer in the heap using shared pointer.

The server will be started immediately.

Exceptions:
uavcan_linux::Exception.

Definition at line 241 of file drivers/linux/include/uavcan_linux/helpers.hpp.

SubscriberPtr<DataType> makeSubscriber ( const typename uavcan::Subscriber< DataType >::Callback &  cb )

Allocates uavcan::Subscriber in the heap using shared pointer.

The subscriber will be started immediately.

Exceptions:
uavcan_linux::Exception.

Definition at line 213 of file drivers/linux/include/uavcan_linux/helpers.hpp.

TimerPtr makeTimer ( uavcan::MonotonicDuration  period,
const typename uavcan::Timer::Callback &  cb 
)

Allocates uavcan::Timer in the heap using shared pointer.

The timer will be started immediately in periodic mode.

Definition at line 291 of file drivers/linux/include/uavcan_linux/helpers.hpp.

TimerPtr makeTimer ( uavcan::MonotonicTime  deadline,
const typename uavcan::Timer::Callback &  cb 
)

Allocates uavcan::Timer in the heap using shared pointer.

The timer will be started immediately in one-shot mode.

Definition at line 279 of file drivers/linux/include/uavcan_linux/helpers.hpp.