Ignition Transport

API Reference

Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1234]
 CBatchHolds the result of a query for messages
 CDescriptorMeta-information about what a log contains. This may be useful for determining QueryOptions or for generating a high-level overview of a Log's contents
 CLogInterface to a log file
 CMessageRepresents a message in a bag file
 CMsgIterImplements iterator for reading messages
 CPlaybackInitiates playback of ignition transport topics This class makes it easy to play topics from a log file
 CPlaybackHandleHandles the playback of ignition transport topics. This class allows you to manage a log playback once it has started. You must hang onto the PlaybackHandle or else the playback will end early
 CQualifiedTimeSince time is continuous, it may be difficult to know the exact time stamp of a desired message. The QualifiedTime class provides a way to tailor how a time stamp is interpreted by the message query
 CQualifiedTimeRangePair of qualified times that represent a range. This is used to specify a desired time range to the BasicQueryOptions class
 CRecorderRecords ignition transport topics This class makes it easy to record topics to a log file. Responsibilities: topic name matching, time received tracking, multiple thread safety, subscribing to topics
 CSqlParameterA class which contains a SQL statement parameter. SqlParameter can be useful for keeping SQL queries sanitized and avoid SQL injection. With C++17, it may be desirable to replace this class with std::variant
 CSqlStatementA statement for a SQL query. These are generated by the QueryOptions class to control how messages get queried from the log
 CAdvertiseMessageAdvertise packet used in the discovery protocol to broadcast information about the node advertising a topic. The information sent contains the name of the protobuf message type advertised. This message is used for advertising messages and services. 'T' is the Publisher type used inside this AdvertiseMessage object
 CAdvertiseMessageOptionsA class for customizing the publication options for a topic advertised. E.g.: Set the rate of messages per second published
 CAdvertiseOptionsA class for customizing the publication options for a topic or service advertised. E.g.: Set the scope of a topic/service
 CAdvertiseServiceOptionsA class for customizing the publication options for a service advertised
 CClockA Clock interface for time tracking
 CDiscoveryA discovery class that implements a distributed topic discovery protocol. It uses UDP multicast for sending/receiving messages and stores updated topic information. The discovery clients can request the discovery of a topic or the advertisement of a local topic. The discovery uses heartbeats to track the state of other peers in the network. The discovery clients can register callbacks to detect when new topics are discovered or topics are no longer available
 CHandlerStorageClass to store and manage service call handlers
 CHeaderHeader included in each discovery message containing the version of the discovery protocol, the process UUID of the sender node, the type of message (ADV, SUB, ... ) and optional flags
 CIRepHandlerInterface class used to manage a replier handler
 CIReqHandlerInterface class used to manage a request handler
 CISubscriptionHandlerInterface class used to manage generic protobuf messages
 CMessageInfoA class that provides information about the message received
 CMessagePublisherThis class stores all the information about a message publisher
 CNetworkClockA Clock interface implementation that uses ignition::msgs::Clock messages distributed across the network
 CNodeA class that allows a client to communicate with other peers. There are two main communication modes: pub/sub messages and service calls
 CPublisherA class that is used to store information about an advertised publisher. An instance of this class is returned from Node::Advertise, and should be used in subsequent Node::Publisher::Publish calls
 CNodeOptionsA class for customizing the behavior of the Node. E.g.: Set a custom namespace or a partition name
 CNodeSharedPrivate data for the Node class. This class should not be directly used. You should use the Node class
 CHandlerInfoHandlerInfo contains information about callback handlers which is useful for local publishers and message receivers. You should only retrieve a HandlerInfo by calling CheckHandlerInfo(const std::string &_topic) const
 CHandlerWrapperThis struct wraps up the two different types of subscription handlers: normal (deserialized) and raw (serialized). This wrapper keeps the two sets of subscription handlers coordinated while allowing them to act independently when necessary
 CSubscriberInfoThis struct provides information about the Subscribers of a Publisher. It should only be retrieved using CheckSubscriberInfo(const std::string&, const std::string&) const. The relevant subscriber info is a superset of the relevant HandlerInfo so we extend that struct
 CPublisherThis class stores all the information about a publisher. It stores the topic name that publishes, addresses, UUIDs, scope, etc
 CRepHandlerWith the service response
 CReqHandlerIt creates a reply handler for the specific protobuf messages used. 'Req' is a protobuf message type containing the input parameters of the service request. 'Rep' is a protobuf message type that will be filled with the service response
 CReqHandler< google::protobuf::Message, google::protobuf::Message >
 CServicePublisherThis class stores all the information about a service publisher
 CSubscribeOptionsA class to provide different options for a subscription
 CSubscriptionHandlerIt creates a subscription handler for a specific protobuf message. 'T' is the Protobuf message type that will be used for this particular handler
 CSubscriptionHandler< ProtoMsg >Specialized template when the user prefers a callbacks that accepts a generic google::protobuf::message instead of a specific type
 CSubscriptionHandlerBaseSubscriptionHandlerBase contains functions and data which are common to all SubscriptionHandler types
 CSubscriptionMsgSubscription packet used in the discovery protocol for requesting information about a given topic
 CTopicStorageStore address information about topics and provide convenient methods for adding new topics, removing them, etc
 CTopicUtilsThis class provides different utilities related with topics
 CUuidA portable class for representing a Universally Unique Identifier
 CWallClockA Clock implementation that leverages host OS time APIs
 CReqHandler< google::protobuf::Message >Template specialization for google::protobuf::Message. This is only used by some ign command line tools