Skip to content

iox::capro🔗

Classes🔗

Name
class iox::capro::CaproMessage
C'tors for CaPro messages.
class iox::capro::ServiceDescription
class for the identification of a communication event including information on the service, the service instance and the event id. In order to support different communication protocols, two types of members exist: integer and string identifiers. If string IDs are used, the integers are initialized to an invalid number. A class object can be serialized/deserialized, so it is possible to send the information e.g. over a IPC channel.

Types🔗

Name
enum uint16_t Interfaces { INTERNAL = 0, ESOC, SOMEIP, AMQP, MQTT, DDS, SIGNAL, MTA, ROS1, INTERFACE_END }
Describes from which interface the service is coming from.
enum uint16_t Scope { WORLDWIDE, INTERNAL, INVALID }
Scope of a service description.
enum uint8_t CaproMessageType { NOTYPE = 0, FIND, OFFER, STOP_OFFER, SUB, UNSUB, ACK, NACK, PUB, REQ, RES, PING, PONG, MESSGAGE_TYPE_END }
Enum for service message types which are used in CaPro for service-oriented communication.
enum uint8_t CaproMessageSubType
using cxx::string< 100 > IdString_t

Functions🔗

Name
bool serviceMatch(const ServiceDescription & first, const ServiceDescription & second)
Compare two service descriptions via their values in member variables and return bool if match.

Attributes🔗

Name
constexpr uint16_t InvalidID
const IdString_t InvalidIDString
constexpr uint16_t AnyService
constexpr uint16_t AnyInstance
constexpr uint16_t AnyEvent
constexpr char AnyServiceString
constexpr char AnyInstanceString
constexpr char AnyEventString
constexpr int32_t MAX_NUMBER_OF_CHARS
constexpr size_t CLASS_HASH_ELEMENT_COUNT
constexpr const char * INTERFACE_NAMES
constexpr char ScopeTypeString
constexpr int32_t MAX_ENUM_STRING_SIZE
constexpr char CaproMessageTypeString

Types Documentation🔗

enum Interfaces🔗

Enumerator Value Description
INTERNAL 0 Used for services, which are locally on this system and not coming over a gateway.
ESOC Canonical protocol for CAN Bus.
SOMEIP SOME/IP.
AMQP Advanced Message Queuing Protocol.
MQTT Message Queuing Telemetry Transport.
DDS Data Distribution Service.
SIGNAL Universal Measurement and Calibration Protocol (XCP)
MTA Measurement technology adapter.
ROS1 Robot Operating System 1.
INTERFACE_END End of enum.

Describes from which interface the service is coming from.

enum Scope🔗

Enumerator Value Description
WORLDWIDE
INTERNAL
INVALID

Scope of a service description.

enum CaproMessageType🔗

Enumerator Value Description
NOTYPE 0
FIND
OFFER
STOP_OFFER
SUB
UNSUB
ACK
NACK
PUB
REQ
RES
PING
PONG
MESSGAGE_TYPE_END

Enum for service message types which are used in CaPro for service-oriented communication.

enum CaproMessageSubType🔗

Enumerator Value Description
NOSUBTYPE 0
SERVICE
EVENT
FIELD

using IdString_t🔗

using iox::capro::IdString_t = typedef cxx::string<100>;

Functions Documentation🔗

function serviceMatch🔗

bool serviceMatch(
    const ServiceDescription & first,
    const ServiceDescription & second
)

Compare two service descriptions via their values in member variables and return bool if match.

Parameters:

Return: Bool if comparison match or not

Attributes Documentation🔗

variable InvalidID🔗

static constexpr uint16_t InvalidID = 0u;

variable InvalidIDString🔗

static const IdString_t InvalidIDString {"0"};

variable AnyService🔗

static constexpr uint16_t AnyService = 0xFFFFu;

variable AnyInstance🔗

static constexpr uint16_t AnyInstance = 0xFFFFu;

variable AnyEvent🔗

static constexpr uint16_t AnyEvent = 0xFFFFu;

variable AnyServiceString🔗

static constexpr char AnyServiceString {"65535"};

variable AnyInstanceString🔗

static constexpr char AnyInstanceString {"65535"};

variable AnyEventString🔗

static constexpr char AnyEventString {"65535"};

variable MAX_NUMBER_OF_CHARS🔗

static constexpr int32_t MAX_NUMBER_OF_CHARS = 64;

variable CLASS_HASH_ELEMENT_COUNT🔗

static constexpr size_t CLASS_HASH_ELEMENT_COUNT {4u};

variable INTERFACE_NAMES🔗

constexpr const char * INTERFACE_NAMES = {"INTERNAL", "ESOC", "SOMEIP", "AMQP", "DDS", "SIGNAL", "MTA", "ROS1", "END"};

variable ScopeTypeString🔗

constexpr char ScopeTypeString = {"WORLDWIDE", "INTERNAL", "INVALID"};

variable MAX_ENUM_STRING_SIZE🔗

constexpr int32_t MAX_ENUM_STRING_SIZE = 64;

variable CaproMessageTypeString🔗

constexpr char CaproMessageTypeString = {
    "NOTYPE", "FIND", "OFFER", "STOP_OFFER", "SUB", "UNSUB", "ACK", "NACK", "PUB", "REQ", "RES", "PING", "PONG"};

Updated on 17 June 2021 at 11:15:27 CEST