11#ifndef routingservice_service_h
12#define routingservice_service_h
15#include "routingservice/routingservice_dll.h"
16#include "ndds/ndds_transport_c.h"
20#include "ndds/ndds_config_c.h"
22#include "routingservice/ServiceAdmin.h"
23#include "routingservice/ServiceAdminPlugin.h"
24#include "routingservice/ServiceAdminSupport.h"
41typedef void (*RTI_RoutingServiceRemoteShutdownHook_OnShutdownFunction)(
42 void *shutdownHookData);
49struct RTI_RoutingServiceRemoteShutdownHook {
51 void *shutdown_hook_data;
53 RTI_RoutingServiceRemoteShutdownHook_OnShutdownFunction on_shutdown;
56#define RTI_RoutingServiceRemoteShutdownHook_INITIALIZER {NULL, NULL}
128#ifdef DOXYGEN_DOCUMENTATION_ONLY
443#define RTI_RoutingServiceProperty_INITIALIZER {\
450 RTI_LOG_BIT_FATAL_ERROR | RTI_LOG_BIT_EXCEPTION, \
451 RTI_LOG_BIT_FATAL_ERROR | RTI_LOG_BIT_EXCEPTION, \
477extern ROUTERDllVariable
480extern ROUTERDllExport
481DDS_Boolean RTI_RoutingServiceProperty_initialize(
484extern ROUTERDllExport
489extern ROUTERDllExport
490void RTI_RoutingServiceProperty_finalize(
496extern ROUTERDllVariable
502extern ROUTERDllVariable
508extern ROUTERDllVariable
514extern ROUTERDllVariable
520extern ROUTERDllVariable
526extern ROUTERDllVariable
544extern ROUTERDllExport
563extern ROUTERDllExport
577extern ROUTERDllExport
595extern ROUTERDllExport
655extern ROUTERDllExport
659 const char * plugin_name);
668extern ROUTERDllExport
672 const char *plugin_name);
681extern ROUTERDllExport
684 void * processor_plugin,
685 const char * plugin_name);
696extern ROUTERDllExport
699 const struct RTI_RoutingServiceRemoteShutdownHook * shutdown_hook);
718extern ROUTERDllExport
721 struct RTI_Service_Admin_CommandReply ** reply,
722 const struct RTI_Service_Admin_CommandRequest * request);
735extern ROUTERDllExport
738 struct RTI_Service_Admin_CommandReply * reply);
748extern ROUTERDllExport
758extern ROUTERDllExport
768extern ROUTERDllExport
775extern ROUTERDllExport
797extern ROUTERDllExport
799 NDDS_Config_LogLevel log_level,
void RTI_RoutingServiceLogger_log(NDDS_Config_LogLevel log_level, const char *format,...)
Logs as message with the specified level.
DDS_Boolean RTI_RoutingService_set_remote_shutdown_hook(struct RTI_RoutingService *self, const struct RTI_RoutingServiceRemoteShutdownHook *shutdown_hook)
Set the remote shutdown hook in this Routing Service instance.
struct RTI_RoutingService * RTI_RoutingService_new(const struct RTI_RoutingServiceProperty *property)
Create a new RTI Routing Service instance.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_INFO
Verbosity level: exceptions + warnings + info.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_WARNINGS
Verbosity level: exceptions + warnings.
const char * RTI_RoutingService_get_build_number_string(void)
Return the build ID of this library.
DDS_Boolean RTI_RoutingService_attach_transformation_plugin(struct RTI_RoutingService *self, struct RTI_RoutingServiceTransformationPlugin *transformation_plugin, const char *plugin_name)
Attach a transformation plugin to be used by Routing Service when it is started.
DDS_Boolean RTI_RoutingService_start(struct RTI_RoutingService *self)
Start RTI Routing Service.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_SILENT
Verbosity level: silent.
void RTI_RoutingService_execute_command(struct RTI_RoutingService *self, struct RTI_Service_Admin_CommandReply **reply, const struct RTI_Service_Admin_CommandRequest *request)
Executes an Administration command on this service.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_EXCEPTIONS
Verbosity level: exceptions.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_ALL
Verbosity level: exceptions + warnings + info + periodic.
void RTI_RoutingService_delete(struct RTI_RoutingService *self)
Stop and delete an RTI Routing Service instance.
const int RTI_ROUTING_SERVICE_LOG_VERBOSITY_DEBUG
Verbosity level: exceptions + warnings + info + periodic + content.
void RTI_RoutingService_return_reply(struct RTI_RoutingService *self, struct RTI_Service_Admin_CommandReply *reply)
Returns the reply object that is obtained as result of executing a command.
DDS_Boolean RTI_RoutingService_attach_adapter_plugin(struct RTI_RoutingService *self, void *adapter, const char *plugin_name)
Attach an adapter to be used by routing service when it is started.
DDS_Boolean RTI_RoutingService_stop(struct RTI_RoutingService *self)
Stop RTI Routing Service.
DDS_Boolean RTI_RoutingService_attach_processor_plugin(struct RTI_RoutingService *self, void *processor_plugin, const char *plugin_name)
Attach a processor to be used by Routing Service when it is started.
DDS_Boolean RTI_RoutingService_initialize_globals(void)
DDS_Boolean RTI_RoutingService_is_started(struct RTI_RoutingService *self)
Query whether this Routing Service is currently started.
DDS_Boolean RTI_RoutingService_finalize_globals(void)
RTI Routing Service C Adapter API.
RTI Routing Service Processor API.
Set of configuration properties.
Definition: routingservice_infrastructure.h:77
Configuration of RTI Routing Service.
Definition: routingservice_service.h:170
char * internal_clock
Clock value that is set as Routing Service internal clock. The clock must be defined as a comma-delim...
Definition: routingservice_service.h:376
char * service_name
The name of the Routing Service instance to run.
Definition: routingservice_service.h:241
DDS_Boolean skip_default_files
Set it to true to avoid loading the standard files usually loaded by RTI Routing Service.
Definition: routingservice_service.h:386
int monitoring_domain_id
If enable_monitoring is true, this is the domain ID to use for remote monitoring.
Definition: routingservice_service.h:364
DDS_Boolean enable_monitoring
Set it to true to enable remote monitoring or false to disable it.
Definition: routingservice_service.h:352
DDS_Boolean enable_administration
Set this to true to enable remote administration or false to disable it.
Definition: routingservice_service.h:332
DDS_Boolean enforce_xsd_validation
Controls whether the service applies XSD validation to the loaded configuration.
Definition: routingservice_service.h:263
char * license_file_name
Path to an RTI Routing Service license file.
Definition: routingservice_service.h:426
int service_verbosity
The verbosity of the service.
Definition: routingservice_service.h:278
int registered_transports_count
Number of transports configured in registered_transports.
Definition: routingservice_service.h:414
int cfg_strings_count
Size of the array cfg_strings.
Definition: routingservice_service.h:229
struct RTI_RoutingServiceProperties user_environment
Dictionary of user variables. The dictionary provides a parallel way to expand XML configuration vari...
Definition: routingservice_service.h:436
int administration_domain_id
If enable_administration is true, this is the domain ID to use for remote administration.
Definition: routingservice_service.h:344
struct RTI_RoutingServiceTransportConfig registered_transports[8]
Transports to be loaded by RTI Connext.
Definition: routingservice_service.h:405
DDS_Boolean identify_execution
Set this to true to append the host name and process ID to the RTI Routing Service execution name.
Definition: routingservice_service.h:396
DDS_Boolean dont_start_service
Set this to true to if you do not want RTI Routing Service enabled when RTI_RoutingService_start is c...
Definition: routingservice_service.h:324
int dds_verbosity
The verbosity of RTI Connext core libraries.
Definition: routingservice_service.h:292
char * plugin_search_path
This path is used to look for plug-in libraries.
Definition: routingservice_service.h:313
const char ** cfg_strings
XML configuration represented as strings.
Definition: routingservice_service.h:222
char * application_name
Assigns a name to the execution of the RTI Routing Service.
Definition: routingservice_service.h:254
int domain_id_base
Value that is added to the domain IDs of the domain routes in the XML configuration.
Definition: routingservice_service.h:302
char * cfg_file
Path to an RTI Routing Service configuration file.
Definition: routingservice_service.h:180
Association between a transport alias and its create function pointer.
Definition: routingservice_service.h:152
NDDS_Transport_create_plugin create_function
Pointer to the function to load the transport.
Definition: routingservice_service.h:160
char * alias
An alias defined in the XML configuration to refer to a transport.
Definition: routingservice_service.h:156
RTI Routing Service.
Definition: routingservice_service.h:134