Classes | |
| class | CallbackLogger |
| class | CallbackQueue |
| struct | Channel |
| class | ChannelError |
| struct | ChannelWithoutId |
| class | Client |
| struct | ClientAdvertisement |
| class | ClientChannelError |
| class | ClientInterface |
| struct | ClientMessage |
| struct | DefinitionIdentifier |
| class | DefinitionNotFoundError |
| class | ExeptionWithId |
| class | MessageDefinitionCache |
| struct | MessageSpec |
| class | Parameter |
| class | ParameterValue |
| class | Server |
| class | ServerFactory |
| struct | ServerHandlers |
| class | ServerInterface |
| struct | ServerOptions |
| struct | Service |
| class | ServiceError |
| struct | ServiceResponse |
| struct | ServiceWithoutId |
| struct | WebSocketNoTls |
| struct | WebSocketTls |
Typedefs | |
| using | BinaryMessageHandler = std::function< void(const uint8_t *, size_t)> |
| using | ChannelId = uint32_t |
| using | ClientChannelId = uint32_t |
| using | ConnHandle = websocketpp::connection_hdl |
| using | json = nlohmann::json |
| using | LogCallback = std::function< void(WebSocketLogLevel, char const *)> |
| using | MapOfSets = std::unordered_map< std::string, std::unordered_set< std::string > > |
| using | OpCode = websocketpp::frame::opcode::value |
| using | ServiceId = uint32_t |
| using | ServiceRequest = ServiceResponse |
| using | SubscriptionId = uint32_t |
| using | TextMessageHandler = std::function< void(const std::string &)> |
Functions | |
| std::vector< unsigned char > | base64Decode (const std::string &input) |
| std::string | base64Encode (const std::string_view &input) |
| std::vector< uint8_t > | connectClientAndReceiveMsg (const std::string &uri, const std::string &topic_name) |
| static std::string | delimiter (const DefinitionIdentifier &definition_identifier) |
| bool | ends_with (const std::string &str, const std::string &suffix) |
| static const char * | extension_for_format (MessageDefinitionFormat format) |
| void | from_json (const nlohmann::json &j, Channel &c) |
| void | from_json (const nlohmann::json &j, ParameterValue &p) |
| void | from_json (const nlohmann::json &j, Parameter &p) |
| void | from_json (const nlohmann::json &j, Service &p) |
| constexpr uint32_t | Integer (const std::string_view str) |
| std::string | IPAddressToString (const asio::ip::address &addr) |
| bool | isWhitelisted (const std::string &name, const std::vector< std::regex > ®exPatterns) |
| void | NoOpLogCallback (WebSocketLogLevel, char const *) |
| std::set< std::string > | parse_dependencies (MessageDefinitionFormat format, const std::string &text, const std::string &package_context) |
| static std::set< std::string > | parse_idl_dependencies (const std::string &text) |
| static std::set< std::string > | parse_msg_dependencies (const std::string &text, const std::string &package_context) |
| uint32_t | ReadUint32LE (const uint8_t *buf) |
| std::string | remove_action_subtype (const std::string action_type) |
| static std::tuple< std::string, std::string, std::string > | split_action_msg_definition (const std::string &action_definition) |
| Split an action definition into individual goal, result and feedback definitions. More... | |
| static std::vector< std::string > | split_string (const std::string &str, const std::string &delimiter="\) |
| constexpr websocketpp::log::level | StatusLevelToLogLevel (StatusLevel level) |
| void | to_json (nlohmann::json &j, const ClientAdvertisement &p) |
| void | to_json (nlohmann::json &j, const Channel &c) |
| void | to_json (nlohmann::json &j, const ParameterValue &p) |
| void | to_json (nlohmann::json &j, const Parameter &p) |
| void | to_json (nlohmann::json &j, const Service &p) |
| std::future< std::vector< Parameter > > | waitForParameters (std::shared_ptr< ClientInterface > client, const std::string &requestId=std::string()) |
| std::future< Service > | waitForService (std::shared_ptr< ClientInterface > client, const std::string &serviceName) |
| std::future< ServiceResponse > | waitForServiceResponse (std::shared_ptr< ClientInterface > client) |
| const char * | WebSocketUserAgent () |
| void | WriteUint32LE (uint8_t *buf, uint32_t val) |
| void | WriteUint64LE (uint8_t *buf, uint64_t val) |
Variables | |
| constexpr char | ACTION_FEEDBACK_MESSAGE_SUFFIX [] = "_FeedbackMessage" |
| constexpr char | ACTION_GOAL_SERVICE_SUFFIX [] = "_SendGoal" |
| constexpr char | ACTION_RESULT_SERVICE_SUFFIX [] = "_GetResult" |
| static const websocketpp::log::level | APP = websocketpp::log::alevel::app |
| const std::unordered_map< ClientBinaryOpcode, std::string > | CAPABILITY_BY_CLIENT_BINARY_OPERATION |
| Map of required capability by client operation (binary). More... | |
| const std::unordered_map< std::string, std::string > | CAPABILITY_BY_CLIENT_OPERATION |
| Map of required capability by client operation (text). More... | |
| constexpr char | CAPABILITY_CLIENT_PUBLISH [] = "clientPublish" |
| constexpr char | CAPABILITY_CONNECTION_GRAPH [] = "connectionGraph" |
| constexpr char | CAPABILITY_PARAMETERS [] = "parameters" |
| constexpr char | CAPABILITY_PARAMETERS_SUBSCRIBE [] = "parametersSubscribe" |
| constexpr char | CAPABILITY_SERVICES [] = "services" |
| constexpr char | CAPABILITY_TIME [] = "time" |
| constexpr std::array< const char *, 5 > | DEFAULT_CAPABILITIES |
| constexpr size_t | DEFAULT_SEND_BUFFER_LIMIT_BYTES = 10000000UL |
| constexpr auto | DEFAULT_TIMEOUT = std::chrono::seconds(5) |
| const char | FOXGLOVE_BRIDGE_GIT_HASH [] |
| const char | FOXGLOVE_BRIDGE_VERSION [] |
| static const std::regex | IDL_FIELD_TYPE_REGEX |
| static const std::regex | MSG_FIELD_TYPE_REGEX {R"((?:^|\n)\s*([a-zA-Z0-9_/]+)(?:\[[^\]]*\])?\s+)"} |
| static const std::regex | PACKAGE_TYPENAME_REGEX |
| static const std::unordered_set< std::string > | PRIMITIVE_TYPES |
| static const websocketpp::log::level | RECOVERABLE = websocketpp::log::elevel::rerror |
| constexpr char | SERVICE_REQUEST_MESSAGE_SUFFIX [] = "_Request" |
| constexpr char | SERVICE_RESPONSE_MESSAGE_SUFFIX [] = "_Response" |
| constexpr char | SUPPORTED_SUBPROTOCOL [] = "foxglove.websocket.v1" |
| static const websocketpp::log::level | WARNING = websocketpp::log::elevel::warn |
| using foxglove::BinaryMessageHandler = typedef std::function<void(const uint8_t*, size_t)> |
Definition at line 29 of file websocket_client.hpp.
| using foxglove::ChannelId = typedef uint32_t |
Definition at line 25 of file common.hpp.
| using foxglove::ClientChannelId = typedef uint32_t |
Definition at line 26 of file common.hpp.
| using foxglove::ConnHandle = typedef websocketpp::connection_hdl |
Definition at line 45 of file websocket_server.hpp.
| using foxglove::json = typedef nlohmann::json |
Definition at line 43 of file websocket_server.hpp.
| using foxglove::LogCallback = typedef std::function<void(WebSocketLogLevel, char const*)> |
Definition at line 12 of file websocket_logging.hpp.
| using foxglove::MapOfSets = typedef std::unordered_map<std::string, std::unordered_set<std::string> > |
Definition at line 18 of file server_interface.hpp.
| typedef websocketpp::frame::opcode::value foxglove::OpCode |
Definition at line 30 of file websocket_client.hpp.
| using foxglove::ServiceId = typedef uint32_t |
Definition at line 28 of file common.hpp.
| using foxglove::ServiceRequest = typedef ServiceResponse |
Definition at line 146 of file common.hpp.
| using foxglove::SubscriptionId = typedef uint32_t |
Definition at line 27 of file common.hpp.
| using foxglove::TextMessageHandler = typedef std::function<void(const std::string&)> |
Definition at line 28 of file websocket_client.hpp.
|
strong |
| Enumerator | |
|---|---|
| MESSAGE_DATA | |
| TIME_DATA | |
| SERVICE_CALL_RESPONSE | |
Definition at line 30 of file common.hpp.
|
strong |
| Enumerator | |
|---|---|
| MESSAGE_DATA | |
| SERVICE_CALL_REQUEST | |
Definition at line 36 of file common.hpp.
|
strong |
| Enumerator | |
|---|---|
| IDL | |
| MSG | |
Definition at line 19 of file message_definition_cache.hpp.
|
strong |
| Enumerator | |
|---|---|
| SUBSCRIBE | |
| UNSUBSCRIBE | |
Definition at line 11 of file parameter.hpp.
|
strong |
| Enumerator | |
|---|---|
| PARAMETER_NOT_SET | |
| PARAMETER_BOOL | |
| PARAMETER_INTEGER | |
| PARAMETER_DOUBLE | |
| PARAMETER_STRING | |
| PARAMETER_ARRAY | |
| PARAMETER_STRUCT | |
| PARAMETER_BYTE_ARRAY | |
Definition at line 16 of file parameter.hpp.
|
strong |
| Enumerator | |
|---|---|
| Info | |
| Warning | |
| Error | |
Definition at line 80 of file websocket_server.hpp.
|
strong |
| Enumerator | |
|---|---|
| Debug | |
| Info | |
| Warn | |
| Error | |
| Critical | |
Definition at line 41 of file common.hpp.
| std::vector< unsigned char > foxglove::base64Decode | ( | const std::string & | input | ) |
Definition at line 47 of file base64.cpp.
| std::string foxglove::base64Encode | ( | const std::string_view & | input | ) |
Definition at line 10 of file base64.cpp.
| std::vector< uint8_t > foxglove::connectClientAndReceiveMsg | ( | const std::string & | uri, |
| const std::string & | topic_name | ||
| ) |
Definition at line 14 of file test_client.cpp.
|
static |
Definition at line 86 of file message_definition_cache.cpp.
|
inline |
Definition at line 136 of file message_definition_cache.cpp.
|
static |
Definition at line 75 of file message_definition_cache.cpp.
| void foxglove::from_json | ( | const nlohmann::json & | j, |
| Channel & | c | ||
| ) |
Definition at line 19 of file serialization.cpp.
| void foxglove::from_json | ( | const nlohmann::json & | j, |
| ParameterValue & | p | ||
| ) |
Definition at line 55 of file serialization.cpp.
| void foxglove::from_json | ( | const nlohmann::json & | j, |
| Parameter & | p | ||
| ) |
Definition at line 83 of file serialization.cpp.
| void foxglove::from_json | ( | const nlohmann::json & | j, |
| Service & | p | ||
| ) |
Definition at line 112 of file serialization.cpp.
| constexpr uint32_t foxglove::Integer | ( | const std::string_view | str | ) |
Definition at line 52 of file websocket_server.hpp.
|
inline |
Definition at line 14 of file websocket_logging.hpp.
|
inline |
Definition at line 10 of file regex_utils.hpp.
|
inline |
Definition at line 21 of file websocket_logging.hpp.
| std::set< std::string > foxglove::parse_dependencies | ( | MessageDefinitionFormat | format, |
| const std::string & | text, | ||
| const std::string & | package_context | ||
| ) |
Definition at line 63 of file message_definition_cache.cpp.
|
static |
Definition at line 53 of file message_definition_cache.cpp.
|
static |
Definition at line 34 of file message_definition_cache.cpp.
|
inline |
Definition at line 38 of file serialization.hpp.
| std::string foxglove::remove_action_subtype | ( | const std::string | action_type | ) |
Definition at line 141 of file message_definition_cache.cpp.
|
static |
Split an action definition into individual goal, result and feedback definitions.
| action_definition | The full action definition as read from a .action file |
Definition at line 124 of file message_definition_cache.cpp.
|
static |
Definition at line 104 of file message_definition_cache.cpp.
| constexpr websocketpp::log::level foxglove::StatusLevelToLogLevel | ( | StatusLevel | level | ) |
Definition at line 86 of file websocket_server.hpp.
|
inline |
Definition at line 21 of file websocket_client.hpp.
| void foxglove::to_json | ( | nlohmann::json & | j, |
| const Channel & | c | ||
| ) |
Definition at line 6 of file serialization.cpp.
| void foxglove::to_json | ( | nlohmann::json & | j, |
| const ParameterValue & | p | ||
| ) |
Definition at line 31 of file serialization.cpp.
| void foxglove::to_json | ( | nlohmann::json & | j, |
| const Parameter & | p | ||
| ) |
Definition at line 75 of file serialization.cpp.
| void foxglove::to_json | ( | nlohmann::json & | j, |
| const Service & | p | ||
| ) |
Definition at line 102 of file serialization.cpp.
| std::future< std::vector< Parameter > > foxglove::waitForParameters | ( | std::shared_ptr< ClientInterface > | client, |
| const std::string & | requestId = std::string() |
||
| ) |
Definition at line 60 of file test_client.cpp.
| std::future< Service > foxglove::waitForService | ( | std::shared_ptr< ClientInterface > | client, |
| const std::string & | serviceName | ||
| ) |
Definition at line 97 of file test_client.cpp.
| std::future< ServiceResponse > foxglove::waitForServiceResponse | ( | std::shared_ptr< ClientInterface > | client | ) |
Definition at line 80 of file test_client.cpp.
| const char * foxglove::WebSocketUserAgent | ( | ) |
Definition at line 7 of file foxglove_bridge.cpp.
|
inline |
Definition at line 27 of file serialization.hpp.
|
inline |
Definition at line 12 of file serialization.hpp.
| constexpr char foxglove::ACTION_FEEDBACK_MESSAGE_SUFFIX[] = "_FeedbackMessage" |
Definition at line 17 of file message_definition_cache.hpp.
| constexpr char foxglove::ACTION_GOAL_SERVICE_SUFFIX[] = "_SendGoal" |
Definition at line 15 of file message_definition_cache.hpp.
| constexpr char foxglove::ACTION_RESULT_SERVICE_SUFFIX[] = "_GetResult" |
Definition at line 16 of file message_definition_cache.hpp.
|
static |
Definition at line 48 of file websocket_server.hpp.
| const std::unordered_map<ClientBinaryOpcode, std::string> foxglove::CAPABILITY_BY_CLIENT_BINARY_OPERATION |
Map of required capability by client operation (binary).
Definition at line 75 of file websocket_server.hpp.
| const std::unordered_map<std::string, std::string> foxglove::CAPABILITY_BY_CLIENT_OPERATION |
Map of required capability by client operation (text).
Definition at line 61 of file websocket_server.hpp.
| constexpr char foxglove::CAPABILITY_CLIENT_PUBLISH[] = "clientPublish" |
Definition at line 13 of file common.hpp.
| constexpr char foxglove::CAPABILITY_CONNECTION_GRAPH[] = "connectionGraph" |
Definition at line 18 of file common.hpp.
| constexpr char foxglove::CAPABILITY_PARAMETERS[] = "parameters" |
Definition at line 15 of file common.hpp.
| constexpr char foxglove::CAPABILITY_PARAMETERS_SUBSCRIBE[] = "parametersSubscribe" |
Definition at line 16 of file common.hpp.
| constexpr char foxglove::CAPABILITY_SERVICES[] = "services" |
Definition at line 17 of file common.hpp.
| constexpr char foxglove::CAPABILITY_TIME[] = "time" |
Definition at line 14 of file common.hpp.
| constexpr std::array<const char*, 5> foxglove::DEFAULT_CAPABILITIES |
Definition at line 20 of file common.hpp.
| constexpr size_t foxglove::DEFAULT_SEND_BUFFER_LIMIT_BYTES = 10000000UL |
Definition at line 16 of file server_interface.hpp.
| constexpr auto foxglove::DEFAULT_TIMEOUT = std::chrono::seconds(5) |
Definition at line 12 of file test_client.cpp.
| const char foxglove::FOXGLOVE_BRIDGE_GIT_HASH[] |
| const char foxglove::FOXGLOVE_BRIDGE_VERSION[] |
|
static |
Definition at line 27 of file message_definition_cache.cpp.
|
static |
Definition at line 24 of file message_definition_cache.cpp.
|
static |
Definition at line 20 of file message_definition_cache.cpp.
|
static |
Definition at line 30 of file message_definition_cache.cpp.
|
static |
Definition at line 50 of file websocket_server.hpp.
| constexpr char foxglove::SERVICE_REQUEST_MESSAGE_SUFFIX[] = "_Request" |
Definition at line 13 of file message_definition_cache.hpp.
| constexpr char foxglove::SERVICE_RESPONSE_MESSAGE_SUFFIX[] = "_Response" |
Definition at line 14 of file message_definition_cache.hpp.
| constexpr char foxglove::SUPPORTED_SUBPROTOCOL[] = "foxglove.websocket.v1" |
Definition at line 12 of file common.hpp.
|
static |
Definition at line 49 of file websocket_server.hpp.