libuav original

Dependents:   UAVCAN UAVCAN_Subscriber

Auto generated API documentation and code listings for libuavcan

Classes

_dontescape
ADC_CLOCK_SETUP_T Clock setup structure for ADC controller passed to the initialize function
AllIfacesDownException This exception is thrown when all available interfaces become down
AllocationRequestManager This class manages communication with allocation clients
APSR_Type Union type to access the Application Program Status Register (APSR)
Array< T, ArrayMode, MaxSize_ > Generic array implementation
ArrayImpl< T, ArrayMode, MaxSize > Common functionality for both static and dynamic arrays
ArrayImpl< IntegerSpec< 1, SignednessUnsigned, CastMode >, ArrayMode, MaxSize > Memory-efficient specialization for bit arrays (each element maps to a single bit rather than single byte)
BasicFileServer Basic file server implements only the following services: uavcan.protocol.file.GetInfo uavcan.protocol.file.Read Also see IFileServerBackend
BasicFileServerBackend This interface implements a POSIX compliant IFileServerBackend interface
BitLenToByteLen< BitLen > Compile-time: Returns the number of bytes needed to contain the given number of bits
BitSet< NumBits > STL-like bitset
BitStream This class treats a chunk of memory as an array of bits
BlockingServiceClient< DataType > Wrapper over uavcan::ServiceClient<> for blocking calls
BooleanType< bool > Value types
BusEvent All bus events are reported as POLLIN
CanAcceptanceFilterConfigurator This class configures hardware acceptance filters (if this feature is present on the particular CAN driver) to preclude reception of irrelevant CAN frames on the hardware level
CanDriver This class implements CAN driver interface for libuavcan
CanDriver CAN driver, incorporates all available CAN ifaces
CanFilterConfig CAN hardware filter config struct
CanFrame Raw CAN frame, as passed to/from the CAN driver
CanIface Single CAN iface
CanInitHelper< RxQueueCapacity > Helper class
CanRxItem RX queue item
CanSelectMasks Events to look for during ICanDriver::select() call
ClusterManager This class maintains the cluster state
CoerceOrFallbackImpl< From, To > CoerceOrFallback<To>(From) coerceOrFallback<To>(From, To)
CONTROL_Type Union type to access the Control Registers (CONTROL)
CriticalSectionLocker Locks UAVCAN driver interrupts
DataTypeDescriptor This class contains complete description of a data type
DataTypeInfoProvider This class implements the standard services for data type introspection
DataTypeSignatureCRC CRC-64-WE Description: http://reveng.sourceforge.net/crc-catalogue/17plus.htm#crc.cat-bits.64 Initial value: 0xFFFFFFFFFFFFFFFF Poly: 0x42F0E1EBA9EA3693 Reverse: no Output xor: 0xFFFFFFFFFFFFFFFF Check: 0x62EC59E3F1A4F00A
DefaultDataTypeRegistrator< Type > This class is used by autogenerated data types to register with the data type registry automatically before main() is called
DefaultLogSink Default log sink will dump everything into stderr
Dispatcher This class performs low-level CAN frame routing
DriverPack Contains all drivers needed for uavcan::Node
DynamicNodeIDClient This class implements client-side logic of dynamic node ID allocation procedure
EnableIf< B, T > Compile time conditions
EnableIfType< T, R > Lightweight type categorization
EnumMax< A, B > Selects larger value
EnumMin< A, B > Selects smaller value
EvalPseudoSandbox
Exception This is the root exception class for all exceptions that can be thrown from the libuavcan Linux driver
FileEventTracer This interface implements a POSIX compliant file based IEventTracer interface
FileServer Full file server implements all file services: uavcan.protocol.file.GetInfo uavcan.protocol.file.Read uavcan.protocol.file.Write uavcan.protocol.file.Delete uavcan.protocol.file.GetDirectoryEntryInfo Also see IFileServerBackend
FileStorageBackend This interface implements a POSIX compliant IStorageBackend interface
FirmwareUpdateTrigger This class subscribes to updates from NodeInfoRetriever in order to detect nodes that need firmware updates
FirmwareVersionChecker Firmware version checking logic
GenericPublisher< DataSpec, DataStruct > Generic publisher, suitable for messages and services
GenericSubscriber< DataSpec, DataStruct, TransferListenerType > Please note that the reference passed to the RX callback points to a stack-allocated object, which means that it gets invalidated shortly after the callback returns
GlobalDataTypeRegistry This singleton is shared among all existing node instances
GlobalTimeSyncMaster Please read the specs to learn how the time synchronization works
GlobalTimeSyncSlave Please read the specs to learn how the time synchronization works
HeapBasedPoolAllocator< BlockSize, RaiiSynchronizer > A special-purpose implementation of a pool allocator that keeps the pool in the heap using malloc()/free()
I2C_XFER_T Master transfer data structure definitions
IAdHocNodeStatusUpdater This optional interface can be implemented by the user in order to update the node status as necessary, immediately before the next NodeStatus message is emitted by NodeStatusProvider
IAllocationRequestHandler The main allocator must implement this interface
ICanDriver Generic CAN driver
ICanIface Single non-blocking CAN interface
IEventTracer This interface allows the application to trace events that happen in the server
IFileServerBackend The file server backend should implement this interface
IFirmwareVersionChecker Application-specific firmware version checking logic
ILogSink External log sink interface
IncomingTransfer Container for received transfer
INode Abstract node class
INodeDiscoveryHandler The allocator must implement this interface
INodeInfoListener Classes that need to receive GetNodeInfo responses should implement this interface
IntegerBitLen< Num > Compile-time: Returns the number of bits needed to represent an integer value
IntegerSpec< BitLen_, Signedness, CastMode > This template will be used for signed and unsigned integers more than 1 bit long
IntegerSpec< 1, SignednessUnsigned, CastMode > Boolean specialization
IParamManager Implement this interface in the application to support the standard remote reconfiguration services
IPoolAllocator This interface is used by other library components that need dynamic memory
IPSR_Type Union type to access the Interrupt Program Status Register (IPSR)
IRaftLeaderMonitor Allocator has to implement this interface so the RaftCore can inform it when a new entry gets committed to the log
IRestartRequestHandler Implement this interface in the application to support the standard node restart service
IRxFrameListener Implement this interface to receive notifications about all incoming CAN frames, including loopback
IsDynamicallyAllocatable< T > This class that allows to check at compile time whether type T can be allocated using the memory pool
IsImplicitlyConvertibleFromTo< T1, T2 > Relations
IsPrimitiveType< T > Compile-time: Whether T is a primitive type on this platform
IsSameType< T, U > Checks if two identifiers refer to the same type
IStorageBackend This interface is used by the server to read and write stable storage
ISystemClock System clock interface - monotonic and UTC
ITransferAcceptanceFilter This class is used by transfer listener to decide if the frame should be accepted or ignored
ITransferBuffer API for transfer buffer users
LazyConstructor< T > This class allows to postpone the object contruction
LibuavcanErrorException This type is thrown when a Libuavcan API method exits with error
LimitedPoolAllocator Limits the maximum number of blocks that can be allocated in a given allocator
LinkedListNode< T > Classes that are supposed to be linked-listed should derive this
LinkedListRoot< T > Linked list root
LoaderFile
LoaderString
Log Raft log
RaftCore::LogEntryInfo This class is used to perform log searches
Logger Node logging convenience class
LoopbackFrameListenerBase Inherit this class to receive notifications about all TX CAN frames that were transmitted with the loopback flag
LPC_ADC_T 10 or 12-bit ADC register block structure
LPC_FMC_T FLASH Memory Controller Unit register block structure
LPC_GPIO_T GPIO port register block structure
LPC_GPIOGROUPINT_T GPIO grouped interrupt register block structure
LPC_I2C_T I2C register block structure
LPC_IOCON_T IO Configuration Unit register block structure
LPC_PIN_INT_T LPC11xx Pin Interrupt and Pattern Match register block structure
LPC_PMU_T LPC11xx Power Management Unit register block structure
LPC_ROM_API_T LPC11XX High level ROM API structure
LPC_SSP_T SSP register block structure
LPC_SYSCTL_T LPC11XX System Control block structure
LPC_TIMER_T 32-bit Standard timer register block structure
LPC_USART_T USART register block structure
LPC_WWDT_T Windowed Watchdog register block structure
MachineIDReader This class can find and read machine ID from a text file, represented as 32-char (16-byte) long hexadecimal string, possibly with separators (like dashes or colons)
MakeString< MaxSize > Shortcut for string-like array type instantiation
Map< Key, Value > Slow but memory efficient KV container
MethodBinder< ObjectPtr, MemFunPtr > Use this to call member functions as callbacks in C++03 mode
MultiFrameIncomingTransfer Internal
Multiset< T > Slow but memory efficient unordered multiset
Node< MemPoolSize > This is the top-level node API
Node Wrapper for uavcan::Node with some additional convenience functions
NodeBase< NodeType > Generic wrapper for node objects with some additional convenience functions
NodeDiscoverer This class listens to NodeStatus messages from other nodes and retrieves their unique ID if they are not known to the allocator
NodeIDSelector< Owner > Node ID allocation logic
NodeInfoRetriever This class automatically retrieves a response to GetNodeInfo once a node appears online or restarts
NodeStatusMonitor This class implements the core functionality of a network monitor
NodeStatusProvider Provides the status and basic information about this node to other network participants
Noncopyable Prevents copying when inherited
NullAllocator Zero allocator - always fails
NumericTraits< bool > Bool
NumericTraits< char > Char
NumericTraits< double > Double
NumericTraits< float > Float
NumericTraits< int > Int
NumericTraits< long > Long
NumericTraits< long double > Long double
NumericTraits< long long > Long long
NumericTraits< short > Short
NVIC_Type Structure type to access the Nested Vectored Interrupt Controller (NVIC)
OStream Compact replacement for std::ostream for use on embedded systems
OutgoingTransferRegistry Outgoing transfer registry keeps track of Transfer ID values for all currently existing local transfer senders
PanicBroadcaster Helper for broadcasting the message uavcan.protocol.Panic
ParameterType< U > Parameter types
ParamServer Convenience class for supporting the standard configuration services
Parser
PersistentState This class is a convenient container for persistent state variables defined by Raft
PoolAllocator< PoolSize, BlockSize, RaiiSynchronizer > Classic implementation of a pool allocator (Meyers)
Publisher< DataType_ > Use this class to publish messages to the bus (broadcast, unicast, or both)
RaftCore This class implements log replication and voting
ReceivedDataStructure< DataType_ > This class extends the data structure with extra information obtained from the transport layer, such as Source Node ID, timestamps, Transfer ID, index of the interface this transfer was picked up from, etc
RemoveReference< T > Remove reference as in <type_traits>
Renderer
RestartRequestServer Convenience class for supporting the standard node restart service
RINGBUFF_T Ring buffer structure
ScalarCodec This class implements fast encoding/decoding of primitive type scalars into/from bit arrays
SCB_Type Structure type to access the System Control Block (SCB)
Scheduler This class distributes processing time between library components (IO handling, deadline callbacks, ...)
Server This server is an alternative to DistributedServer with the following differences:

  • It is not distributed, so using it means introducing a single point of failure into the system
Server This class implements the top-level allocation logic and server API
ServiceCallID This struct describes a pending service call
ServiceCallResult< DataType > Object of this type will be returned to the application as a result of service call
ServiceClientBase Do not use directly
ServiceResponseDataStructure< ResponseDataType_ > This type can be used in place of the response type in a service server callback to get more advanced control of service request processing
SingleFrameIncomingTransfer Internal
SocketCanDriver Multiplexing container for multiple SocketCAN sockets
SocketCanIface Single SocketCAN socket interface
SquareMatrixAnalyzer< ElementIterator, NumElements > This class can be used to detect properties of square matrices
SquareMatrixTraits< NumElements_ > Properties of a square matrix; assuming row-major representation
StateReport This structure represents immediate state of the server
StaticTransferBufferImpl Standalone static buffer
Storage This class transparently replicates its state to the storage backend, keeping the most recent state in memory
StorageMarshaller This class extends the storage backend interface with serialization/deserialization functionality
StorageType< T, Enable > Compile-time: Helper for integer and float specialization classes
SubNode< MemPoolSize > This node object can be used in multiprocess UAVCAN nodes
SubNode Wrapper for uavcan::SubNode with some additional convenience functions
SystemClock Adapter for uavcan::ISystemClock
SystemClock Linux system clock driver
SystemClock Adapter for uavcan::ISystemClock
SysTick_Type Structure type to access the System Timer (SysTick)
Template
TemplateBase
TemplateException
TemplateIncludeError
TemplateParseError
TemplateRenderError
TemplateSyntaxError
TestListener This subscriber accepts any types of transfers - this makes testing easier
TimerBase Inherit this class if you need a timer callback method in your class
TimerEvent Objects of this type will be supplied into timer callbacks
TimerEventForwarder< Callback_ > Wrapper over TimerBase that forwards callbacks into arbitrary handlers, like functor objects, member functions or static functions
Transfer UAVCAN transfer representation used in various tests
TransferBufferAccessor Convinience class
TransferBufferManager Buffer manager implementation
TransferBufferManagerEntry Resizable gather/scatter storage
TransferBufferManagerKey Internal for TransferBufferManager
TransferCRC CRC-16-CCITT Initial value: 0xFFFF Poly: 0x1021 Reverse: no Output xor: 0
TransferListener Internal, refer to the transport dispatcher class
TransferListenerWithFilter This class should be derived by callers
TransferPerfCounter The class is declared noncopyable for two reasons:

  • to prevent accidental pass-by-value into a mutator
  • to make the addresses of the counters fixed and exposable to the user of the library
TransportStatsProvider This class provides statistics about the transport layer performance on the local node
UtcSyncParams UTC clock synchronization parameters
UtcTime Implicitly convertible to/from uavcan.Timestamp
xPSR_Type Union type to access the Special-Purpose Program Status Registers (xPSR)
YamlStreamer< Array< T, ArrayMode, MaxSize > > YAML streamer specification for any Array<>

Code

__init__.py [code]
abstract_node.hpp [code]
abstract_server.hpp [code]
abstract_transfer_buffer.hpp [code]
adc_11xx.h [code]
allocation_request_manager.cpp [code]
allocation_request_manager.hpp [code]
array.cpp [code]
array.hpp [code]
basic_file_server_backend.hpp [code]
bit_stream.cpp [code]
bit_stream.hpp [code]
bitset.hpp [code]
lpc11c24/test_olimex_lpc_p11c24/src/sys/board.cpp [code]
stm32/test_stm32f107/src/board/board.cpp [code]
board.h [code]
lpc11c24/test_olimex_lpc_p11c24/src/sys/board.hpp [code]
stm32/test_stm32f107/src/board/board.hpp [code]
include/uavcan/build_config.hpp [code]
drivers/stm32/driver/include/uavcan_stm32/build_config.hpp [code]
bxcan.hpp [code]
c_can.hpp [code]
can.cpp [code]
include/uavcan/driver/can.hpp [code]
test/transport/can/can.hpp [code]
drivers/lpc11c24/driver/include/uavcan_lpc11c24/can.hpp [code]
drivers/stm32/driver/include/uavcan_stm32/can.hpp [code]
can_acceptance_filter_configurator.cpp [code]
can_acceptance_filter_configurator.hpp [code]
can_driver.cpp [code]
can_io.hpp [code]
ccand_11xx.h [code]
centralized.hpp [code]
char_array_formatter.cpp [code]
char_array_formatter.hpp [code]
chconf.h [code]
chip.h [code]
clock.cpp [code]
test/clock.hpp [code]
drivers/linux/include/uavcan_linux/clock.hpp [code]
drivers/lpc11c24/driver/include/uavcan_lpc11c24/clock.hpp [code]
drivers/stm32/driver/include/uavcan_stm32/clock.hpp [code]
clock_11xx.c [code]
clock_11xx.h [code]
cluster_manager.cpp [code]
cluster_manager.hpp [code]
cmsis.h [code]
cmsis_11cxx.h [code]
comparison.cpp [code]
comparison.hpp [code]
core_cm0.h [code] CMSIS Cortex-M0 Core Peripheral Access Layer Header File
core_cmFunc.h [code] CMSIS Cortex-M Core Function Access Header File
core_cmInstr.h [code] CMSIS Cortex-M Core Instruction Access Header File
coverity_scan_model.cpp [code]
crc.cpp [code]
crc.hpp [code]
crt0.c [code]
data_type.cpp [code]
data_type.hpp [code]
data_type_info_provider.cpp [code]
data_type_info_provider.hpp [code]
include/uavcan/debug.hpp [code]
drivers/linux/apps/debug.hpp [code]
dispatcher.cpp [code]
dispatcher.hpp [code]
distributed.hpp [code]
dsdl_const_1.cpp [code]
dsdl_const_2.cpp [code]
dsdl_test.cpp [code]
dsdl_uavcan_compilability.cpp [code]
dummy.cpp [code]
dynamic_memory.cpp [code]
dynamic_memory.hpp [code]
dynamic_node_id_client.cpp [code]
dynamic_node_id_client.hpp [code]
error.h [code]
error.hpp [code]
event.cpp [code]
event.hpp [code]
event_tracer.hpp [code]
exception.hpp [code]
file_event_tracer.hpp [code]
file_server.cpp [code]
file_server.hpp [code]
file_storage_backend.hpp [code]
firmware_update_trigger.cpp [code]
firmware_update_trigger.hpp [code]
firmware_version_checker.hpp [code]
float_spec.cpp [code]
float_spec.hpp [code]
fmc_11xx.h [code]
frame.cpp [code]
frame.hpp [code]
generic_publisher.hpp [code]
generic_subscriber.hpp [code]
get_node_info_mock_server.hpp [code]
global_data_type_registry.cpp [code]
global_data_type_registry.hpp [code]
global_time_sync_master.cpp [code]
global_time_sync_master.hpp [code]
global_time_sync_slave.cpp [code]
global_time_sync_slave.hpp [code]
gpio_11xx_2.h [code]
gpiogroup_11xx.h [code]
halconf.h [code]
heap_based_pool_allocator.cpp [code]
heap_based_pool_allocator.hpp [code]
test/protocol/helpers.hpp [code]
drivers/linux/include/uavcan_linux/helpers.hpp [code]
i2c_11xx.h [code]
iface_mock.cpp [code]
incoming_transfer.cpp [code]
integer_spec.cpp [code]
integer_spec.hpp [code]
lpc11c24/driver/src/internal.hpp [code]
stm32/driver/src/internal.hpp [code]
io.cpp [code]
iocon_11xx.h [code]
lazy_constructor.cpp [code]
lazy_constructor.hpp [code]
libstubs.cpp [code]
linked_list.cpp [code]
linked_list.hpp [code]
log.cpp [code]
log.hpp [code]
logger.cpp [code]
logger.hpp [code]
lpc_types.h [code]
lpc11c24/test_olimex_lpc_p11c24/src/main.cpp [code]
stm32/test_stm32f107/src/main.cpp [code]
map.cpp [code]
map.hpp [code]
mcuconf.h [code]
memory_storage_backend.hpp [code]
method_binder.hpp [code]
multiset.cpp [code]
multiset.hpp [code]
node.cpp [code]
node.hpp [code]
node_discoverer.cpp [code]
node_discoverer.hpp [code]
node_id_selector.hpp [code]
node_info_retriever.cpp [code]
node_info_retriever.hpp [code]
node_status_monitor.cpp [code]
node_status_monitor.hpp [code]
node_status_provider.cpp [code]
node_status_provider.hpp [code]
ostream.hpp [code]
outgoing_transfer_registry.cpp [code]
outgoing_transfer_registry.hpp [code]
panic_broadcaster.cpp [code]
panic_broadcaster.hpp [code]
panic_listener.cpp [code]
panic_listener.hpp [code]
param_server.cpp [code]
param_server.hpp [code]
perf_counter.hpp [code]
persistent_state.cpp [code]
persistent_state.hpp [code]
pinint_11xx.h [code]
placement_new.hpp [code]
pmu_11xx.h [code]
publisher.cpp [code]
publisher.hpp [code]
pyratemp.py [code]
raft_core.hpp [code]
restart_request_server.cpp [code]
restart_request_server.hpp [code]
ring_buffer.h [code]
romapi_11xx.h [code]
scalar_codec.cpp [code]
scalar_codec.hpp [code]
scheduler.cpp [code]
scheduler.hpp [code]
centralized/server.cpp [code]
distributed/server.cpp [code]
centralized/server.hpp [code]
distributed/server.hpp [code]
service_client.cpp [code]
service_client.hpp [code]
service_server.cpp [code]
service_server.hpp [code]
setup.py [code]
socketcan.hpp [code]
ssp_11xx.h [code]
std.hpp [code]
storage.cpp [code]
storage.hpp [code]
storage_backend.hpp [code]
storage_marshaller.cpp [code]
storage_marshaller.hpp [code]
sub_node.cpp [code]
sub_node.hpp [code]
subscriber.cpp [code]
subscriber.hpp [code]
sys_config.h [code]
sysctl_11xx.h [code]
system_clock.hpp [code]
system_utils.hpp [code]
templates.cpp [code]
templates.hpp [code]
test_clock.cpp [code]
test_dynamic_node_id_client.cpp [code]
test_file_server.cpp [code]
test_main.cpp [code]
test_multithreading.cpp [code]
test_node.cpp [code]
test_node.hpp [code]
test_node_test.cpp [code]
test_posix.cpp [code]
test_socket.cpp [code]
test_system_utils.cpp [code]
test_time_sync.cpp [code]
thread.hpp [code]
time.cpp [code]
time.hpp [code]
timer.hpp [code]
timer_11xx.h [code]
transfer.cpp [code]
transfer.hpp [code]
transfer_buffer.cpp [code]
transfer_buffer.hpp [code]
transfer_listener.cpp [code]
transfer_listener.hpp [code]
transfer_receiver.cpp [code]
transfer_receiver.hpp [code]
transfer_sender.cpp [code]
transfer_sender.hpp [code]
transfer_test_helpers.cpp [code]
transfer_test_helpers.hpp [code]
transport_stats_provider.cpp [code]
transport_stats_provider.hpp [code]
tx_queue.cpp [code]
type_util.cpp [code]
type_util.hpp [code]
marshal/types.hpp [code]
protocol/dynamic_node_id_server/distributed/types.hpp [code]
protocol/dynamic_node_id_server/types.hpp [code]
uart_11xx.c [code]
uart_11xx.h [code]
uavcan.hpp [code]
uavcan_dynamic_node_id_server.cpp [code]
uavcan_linux.hpp [code]
uavcan_lpc11c24.hpp [code]
uavcan_monitor.cpp [code]
uavcan_nodetool.cpp [code]
uavcan_stm32.hpp [code]
uc_bit_array_copy.cpp [code]
uc_bit_stream.cpp [code]
uc_can.cpp [code]
uc_can_acceptance_filter_configurator.cpp [code]
uc_can_io.cpp [code]
uc_crc.cpp [code]
uc_data_type.cpp [code]
uc_dispatcher.cpp [code]
uc_dynamic_memory.cpp [code]
uc_dynamic_node_id_client.cpp [code]
uc_error.cpp [code]
uc_float_spec.cpp [code]
uc_frame.cpp [code]
uc_generic_publisher.cpp [code]
uc_generic_subscriber.cpp [code]
uc_global_data_type_registry.cpp [code]
uc_node_status_provider.cpp [code]
uc_outgoing_transfer_registry.cpp [code]
uc_scalar_codec.cpp [code]
uc_scheduler.cpp [code]
uc_service_client.cpp [code]
uc_stm32_can.cpp [code]
uc_stm32_clock.cpp [code]
uc_stm32_thread.cpp [code]
uc_timer.cpp [code]
uc_transfer.cpp [code]
uc_transfer_buffer.cpp [code]
uc_transfer_listener.cpp [code]
uc_transfer_receiver.cpp [code]
uc_transfer_sender.cpp [code]
wwdt_11xx.c [code]
wwdt_11xx.h [code]

Namespaces