/* (c) Copyright 2003-2021, Real-Time Innovations, Inc. All rights reserved. */ /* * @(#)ndds_config_c.h generated by: makeheader Tue Apr 7 22:56:15 2026 * * built from: ndds_config_c.ifc */ #ifndef ndds_config_c_h #define ndds_config_c_h #include #include #ifndef log_common_h #include "log/log_common.h" #endif #ifndef osapi_activityContext_h #include "osapi/osapi_activityContext.h" #endif #ifndef advlog_logger_h #include "advlog/advlog_logger.h" #endif #ifndef rtixml_infrastructure_h #include "rtixml/rtixml_infrastructure.h" #endif #ifndef dds_c_dll_h #include "dds_c/dds_c_dll.h" #endif #ifndef dds_c_common_h #include "dds_c/dds_c_common.h" /*for DDS_Boolean*/ #endif #ifndef dds_c_infrastructure_h #include "dds_c/dds_c_infrastructure.h" /* for DDS_Duration_t */ #endif #ifdef __cplusplus extern "C" { #endif struct NDDS_Config_LibraryVersion_t { /*e \dref_LibraryVersion_t_major */ DDS_Long major; /*e \dref_LibraryVersion_t_minor */ DDS_Long minor; /*e \dref_LibraryVersion_t_release */ char release; /*e \dref_LibraryVersion_t_build */ DDS_Long build; }; #define NDDS_Config_Version_MAX_STRING_LENGTH 512 extern DDSCDllExport const struct DDS_ProductVersion_t* NDDS_Config_Version_get_product_version( void); extern DDSCDllExport const struct NDDS_Config_LibraryVersion_t* NDDS_Config_Version_get_api_version( void); extern DDSCDllExport const struct NDDS_Config_LibraryVersion_t* NDDS_Config_Version_get_core_version( void); extern DDSCDllExport const char* NDDS_Config_Version_to_string(void); extern DDSCDllExport const char* NDDS_Config_Version_get_core_build_number_string(void); extern DDSCDllExport const char* NDDS_Config_Version_get_C_build_number_string(void); typedef enum { /*e \dref_LogVerbosity_NDDS_CONFIG_LOG_VERBOSITY_SILENT */ /*i Corresponds to RTI_LOG_BITMAP_NONE */ NDDS_CONFIG_LOG_VERBOSITY_SILENT = RTI_LOG_BITMAP_NONE, /*e \dref_LogVerbosity_NDDS_CONFIG_LOG_VERBOSITY_ERROR */ /*i Corresponds to RTI_LOG_BIT_EXCEPTION */ NDDS_CONFIG_LOG_VERBOSITY_ERROR = RTI_LOG_BIT_EXCEPTION | RTI_LOG_BIT_FATAL_ERROR, /*e \dref_LogVerbosity_NDDS_CONFIG_LOG_VERBOSITY_WARNING */ /*i Corresponds to RTI_LOG_BIT_EXCEPTION | RTI_LOG_BIT_WARN */ NDDS_CONFIG_LOG_VERBOSITY_WARNING = NDDS_CONFIG_LOG_VERBOSITY_ERROR | RTI_LOG_BIT_WARN, /*e \dref_LogVerbosity_NDDS_CONFIG_LOG_VERBOSITY_STATUS_LOCAL */ /*i Corresponds to RTI_LOG_BIT_EXCEPTION | RTI_LOG_BIT_WARN | * RTI_LOG_BIT_LOCAL */ NDDS_CONFIG_LOG_VERBOSITY_STATUS_LOCAL = NDDS_CONFIG_LOG_VERBOSITY_WARNING | RTI_LOG_BIT_LOCAL, /*e \dref_LogVerbosity_NDDS_CONFIG_LOG_VERBOSITY_STATUS_REMOTE */ /*i Corresponds to RTI_LOG_BIT_EXCEPTION | RTI_LOG_BIT_WARN | * RTI_LOG_BIT_LOCAL | RTI_LOG_BIT_REMOTE */ NDDS_CONFIG_LOG_VERBOSITY_STATUS_REMOTE = NDDS_CONFIG_LOG_VERBOSITY_STATUS_LOCAL | RTI_LOG_BIT_REMOTE, /*e \dref_LogVerbosity_NDDS_CONFIG_LOG_VERBOSITY_STATUS_ALL */ /*i Corresponds to RTI_LOG_BIT_EXCEPTION | RTI_LOG_BIT_WARN | * RTI_LOG_BIT_LOCAL | RTI_LOG_BIT_REMOTE | RTI_LOG_BIT_PERIODIC */ NDDS_CONFIG_LOG_VERBOSITY_STATUS_ALL = NDDS_CONFIG_LOG_VERBOSITY_STATUS_REMOTE | RTI_LOG_BIT_PERIODIC } NDDS_Config_LogVerbosity; /*i * @brief Converts NDDS_Config_LogVerbosity to an string. * Just for logging purposes. The method will return "INVALID" if the input * verbosity does not correspond with any valid value of * NDDS_Config_LogVerbosity. * @param verbosity__ \b In. The verbosity. * @return The string verbosity. */ #define NDDS_Config_LogVerbosity_to_string(verbosity__) \ ((verbosity__) == NDDS_CONFIG_LOG_VERBOSITY_SILENT \ ? "SILENT" \ : (verbosity__) == NDDS_CONFIG_LOG_VERBOSITY_ERROR \ ? "ERROR" \ : (verbosity__) == NDDS_CONFIG_LOG_VERBOSITY_WARNING \ ? "WARNING" \ : (verbosity__) == NDDS_CONFIG_LOG_VERBOSITY_STATUS_LOCAL \ ? "STATUS_LOCAL" \ : (verbosity__) == NDDS_CONFIG_LOG_VERBOSITY_STATUS_REMOTE \ ? "STATUS_REMOTE" \ : (verbosity__) == NDDS_CONFIG_LOG_VERBOSITY_STATUS_ALL \ ? "STATUS_ALL" \ : "INVALID") /*i * @brief Converts NDDS_Config_SyslogVerbosity to an string. * Just for logging purposes. The method will return "INVALID" if the input * verbosity does not correspond with any valid value of * NDDS_Config_SyslogVerbosity. * @param verbosity__ \b In. The verbosity. * @return The string verbosity. */ #define NDDS_Config_SyslogVerbosity_to_string(verbosity__) \ ((verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_SILENT \ ? "SILENT" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_EMERGENCY \ ? "EMERGENCY" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_ALERT \ ? "ALERT" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_CRITICAL \ ? "CRITICAL" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_ERROR \ ? "ERROR" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_WARNING \ ? "WARNING" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_NOTICE \ ? "NOTICE" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_INFORMATIONAL \ ? "INFORMATIONAL" \ : (verbosity__) == NDDS_CONFIG_SYSLOG_VERBOSITY_DEBUG \ ? "DEBUG" \ : "INVALID") typedef enum { /*e \dref_LogLevel_NDDS_CONFIG_LOG_LEVEL_FATAL_ERROR */ NDDS_CONFIG_LOG_LEVEL_FATAL_ERROR = RTI_LOG_LEVEL_FATAL_ERROR, /*e \dref_LogLevel_NDDS_CONFIG_LOG_LEVEL_ERROR */ NDDS_CONFIG_LOG_LEVEL_ERROR = RTI_LOG_LEVEL_ERROR, /*e \dref_LogLevel_NDDS_CONFIG_LOG_LEVEL_WARNING */ NDDS_CONFIG_LOG_LEVEL_WARNING = RTI_LOG_LEVEL_WARNING, /*e \dref_LogLevel_NDDS_CONFIG_LOG_LEVEL_STATUS_LOCAL */ NDDS_CONFIG_LOG_LEVEL_STATUS_LOCAL = RTI_LOG_LEVEL_STATUS_LOCAL, /*e \dref_LogLevel_NDDS_CONFIG_LOG_LEVEL_STATUS_REMOTE */ NDDS_CONFIG_LOG_LEVEL_STATUS_REMOTE = RTI_LOG_LEVEL_STATUS_REMOTE, /*e \dref_LogLevel_NDDS_CONFIG_LOG_LEVEL_DEBUG */ NDDS_CONFIG_LOG_LEVEL_DEBUG = RTI_LOG_LEVEL_DEBUG } NDDS_Config_LogLevel; #define NDDS_CONFIG_COUNT_LOG_LEVELS RTI_LOG_COUNT_LOG_LEVELS typedef enum { /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_EMERGENCY */ NDDS_CONFIG_SYSLOG_LEVEL_EMERGENCY = RTI_SYSLOG_LEVEL_EMERGENCY, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_ALERT */ NDDS_CONFIG_SYSLOG_LEVEL_ALERT = RTI_SYSLOG_LEVEL_ALERT, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_CRITICAL */ NDDS_CONFIG_SYSLOG_LEVEL_CRITICAL = RTI_SYSLOG_LEVEL_CRITICAL, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_ERROR */ NDDS_CONFIG_SYSLOG_LEVEL_ERROR = RTI_SYSLOG_LEVEL_ERROR, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_WARNING */ NDDS_CONFIG_SYSLOG_LEVEL_WARNING = RTI_SYSLOG_LEVEL_WARNING, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_NOTICE */ NDDS_CONFIG_SYSLOG_LEVEL_NOTICE = RTI_SYSLOG_LEVEL_NOTICE, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_INFORMATIONAL */ NDDS_CONFIG_SYSLOG_LEVEL_INFORMATIONAL = RTI_SYSLOG_LEVEL_INFORMATIONAL, /*e \dref_SyslogLevel_NDDS_CONFIG_SYSLOG_LEVEL_DEBUG */ NDDS_CONFIG_SYSLOG_LEVEL_DEBUG = RTI_SYSLOG_LEVEL_DEBUG } NDDS_Config_SyslogLevel; extern DDSCDllExport NDDS_Config_SyslogLevel NDDS_Config_SyslogLevel_from_log_level(NDDS_Config_LogLevel level); extern DDSCDllExport NDDS_Config_LogLevel NDDS_Config_LogLevel_from_syslog_level(NDDS_Config_SyslogLevel level); extern DDSCDllExport NDDS_Config_SyslogVerbosity NDDS_Config_SyslogVerbosity_from_log_verbosity( NDDS_Config_LogVerbosity verbosity); extern DDSCDllExport NDDS_Config_LogVerbosity NDDS_Config_LogVerbosity_from_syslog_verbosity( NDDS_Config_SyslogVerbosity verbosity); extern DDSCDllExport DDS_Boolean NDDS_Config_SyslogVerbosity_from_string( NDDS_Config_SyslogVerbosity *out, const char *in); typedef enum { /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_PLATFORM */ NDDS_CONFIG_LOG_CATEGORY_PLATFORM, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_COMMUNICATION */ NDDS_CONFIG_LOG_CATEGORY_COMMUNICATION, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_DATABASE */ NDDS_CONFIG_LOG_CATEGORY_DATABASE, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_ENTITIES */ NDDS_CONFIG_LOG_CATEGORY_ENTITIES, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_API */ NDDS_CONFIG_LOG_CATEGORY_API, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_DISCOVERY */ NDDS_CONFIG_LOG_CATEGORY_DISCOVERY, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_SECURITY */ NDDS_CONFIG_LOG_CATEGORY_SECURITY, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_USER */ NDDS_CONFIG_LOG_CATEGORY_USER, /*e \dref_LogCategory_NDDS_CONFIG_LOG_CATEGORY_ALL */ NDDS_CONFIG_LOG_CATEGORY_ALL } NDDS_Config_LogCategory; #define NDDS_CONFIG_COUNT_LOG_CATEGORIES 8 typedef enum { /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_PERSISTENCE */ NDDS_CONFIG_LOG_SERVICE_PERSISTENCE = DDS_PERSISTENCE_SERVICE_QOS, /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_QUEUING */ NDDS_CONFIG_LOG_SERVICE_QUEUING = DDS_QUEUING_SERVICE_QOS, /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_ROUTING */ NDDS_CONFIG_LOG_SERVICE_ROUTING = DDS_ROUTING_SERVICE_QOS, /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_RECORDING */ NDDS_CONFIG_LOG_SERVICE_RECORDING = DDS_RECORDING_SERVICE_QOS, /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_WEB_INTEGRATION */ NDDS_CONFIG_LOG_SERVICE_WEB_INTEGRATION = PRES_WEB_INTEGRATION_SERVICE_QOS, /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_COLLECTOR */ NDDS_CONFIG_LOG_SERVICE_COLLECTOR = PRES_OBSERVABILITY_COLLECTOR_SERVICE_QOS, /*i \dref_LogService_NDDS_CONFIG_LOG_SERVICE_CDS */ NDDS_CONFIG_LOG_SERVICE_CLOUD_DISCOVERY, /*i \dref_LogCategory_NDDS_CONFIG_LOG_SERVICE_ALL */ NDDS_CONFIG_LOG_SERVICE_ALL } NDDS_Config_LogService; #define NDDS_CONFIG_COUNT_LOG_SERVICES 8 typedef enum { /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_NUMBER */ NDDS_CONFIG_LOG_PRINT_BIT_NUMBER = RTI_LOG_PRINT_BIT_NUMBER, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_MESSAGE */ NDDS_CONFIG_LOG_PRINT_BIT_MESSAGE = RTI_LOG_PRINT_BIT_MSG, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_MODULE */ NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_MODULE = RTI_LOG_PRINT_BIT_AT_MODULE, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_FILELINE */ NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_FILELINE = RTI_LOG_PRINT_BIT_AT_FILE | RTI_LOG_PRINT_BIT_AT_LINE, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_METHOD */ NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_METHOD = RTI_LOG_PRINT_BIT_AT_METHOD, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_TIMESTAMP */ NDDS_CONFIG_LOG_PRINT_BIT_TIMESTAMP = ADVLOG_PRINT_BIT_TIMESTAMP, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_THREAD_ID */ NDDS_CONFIG_LOG_PRINT_BIT_THREAD_ID = ADVLOG_PRINT_BIT_THREAD_ID, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_ACTIVITY_CONTEXT */ NDDS_CONFIG_LOG_PRINT_BIT_ACTIVITY_CONTEXT = ADVLOG_PRINT_BIT_ACTIVITY_CONTEXT, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_TWO_LINES */ NDDS_CONFIG_LOG_PRINT_BIT_TWO_LINES = ADVLOG_PRINT_BIT_TWO_LINES, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_CATEGORY */ NDDS_CONFIG_LOG_PRINT_BIT_CATEGORY = ADVLOG_PRINT_BIT_CATEGORY, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_BACKTRACE */ NDDS_CONFIG_LOG_PRINT_BIT_BACKTRACE = RTI_LOG_PRINT_BIT_BACKTRACE, /*i \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_BIT_LOG_LEVEL */ NDDS_CONFIG_LOG_PRINT_BIT_LOG_LEVEL = ADVLOG_PRINT_BIT_LOG_LEVEL, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_DEFAULT */ NDDS_CONFIG_LOG_PRINT_FORMAT_DEFAULT = RTI_LOG_PRINT_FORMAT_MASK_DEFAULT | NDDS_CONFIG_LOG_PRINT_BIT_LOG_LEVEL | NDDS_CONFIG_LOG_PRINT_BIT_ACTIVITY_CONTEXT | NDDS_CONFIG_LOG_PRINT_BIT_CATEGORY, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_TIMESTAMPED */ NDDS_CONFIG_LOG_PRINT_FORMAT_TIMESTAMPED = NDDS_CONFIG_LOG_PRINT_FORMAT_DEFAULT | NDDS_CONFIG_LOG_PRINT_BIT_TIMESTAMP, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_VERBOSE */ NDDS_CONFIG_LOG_PRINT_FORMAT_VERBOSE = NDDS_CONFIG_LOG_PRINT_BIT_MESSAGE | NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_METHOD | NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_MODULE | NDDS_CONFIG_LOG_PRINT_BIT_THREAD_ID | NDDS_CONFIG_LOG_PRINT_BIT_ACTIVITY_CONTEXT | NDDS_CONFIG_LOG_PRINT_BIT_LOG_LEVEL | NDDS_CONFIG_LOG_PRINT_BIT_CATEGORY | NDDS_CONFIG_LOG_PRINT_BIT_TWO_LINES, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_VERBOSE_TIMESTAMPED */ NDDS_CONFIG_LOG_PRINT_FORMAT_VERBOSE_TIMESTAMPED = NDDS_CONFIG_LOG_PRINT_FORMAT_VERBOSE | NDDS_CONFIG_LOG_PRINT_BIT_TIMESTAMP, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_DEBUG */ NDDS_CONFIG_LOG_PRINT_FORMAT_DEBUG = RTI_LOG_PRINT_FORMAT_MASK_DEBUG | NDDS_CONFIG_LOG_PRINT_BIT_THREAD_ID | NDDS_CONFIG_LOG_PRINT_BIT_LOG_LEVEL | NDDS_CONFIG_LOG_PRINT_BIT_CATEGORY | NDDS_CONFIG_LOG_PRINT_BIT_ACTIVITY_CONTEXT, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_MINIMAL */ NDDS_CONFIG_LOG_PRINT_FORMAT_MINIMAL = NDDS_CONFIG_LOG_PRINT_BIT_NUMBER | NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_METHOD, /*e \dref_LogPrintFormat_NDDS_CONFIG_LOG_PRINT_FORMAT_MAXIMAL */ NDDS_CONFIG_LOG_PRINT_FORMAT_MAXIMAL = NDDS_CONFIG_LOG_PRINT_BIT_NUMBER | NDDS_CONFIG_LOG_PRINT_BIT_MESSAGE | NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_METHOD | NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_FILELINE | NDDS_CONFIG_LOG_PRINT_BIT_LOCATION_MODULE | NDDS_CONFIG_LOG_PRINT_BIT_THREAD_ID | NDDS_CONFIG_LOG_PRINT_BIT_ACTIVITY_CONTEXT | NDDS_CONFIG_LOG_PRINT_BIT_TIMESTAMP | NDDS_CONFIG_LOG_PRINT_BIT_TWO_LINES | NDDS_CONFIG_LOG_PRINT_BIT_LOG_LEVEL | NDDS_CONFIG_LOG_PRINT_BIT_CATEGORY | NDDS_CONFIG_LOG_PRINT_BIT_BACKTRACE } NDDS_Config_LogPrintFormat; #define NDDS_CONFIG_LOG_PRINT_FORMAT_FATAL_DEFAULT NDDS_CONFIG_LOG_PRINT_FORMAT_DEBUG typedef struct NDDS_Config_LoggerImpl NDDS_Config_Logger; DDSC_VARIABLE_LENGTH_VALUE_TYPE_SUPPORT(DDS_LoggingQosPolicy); struct DDS_LoggingQosPolicy { /*e \dref_LoggingQosPolicy_verbosity */ NDDS_Config_LogVerbosity verbosity; /*e \dref_LoggingQosPolicy_category */ NDDS_Config_LogCategory category; /*e \dref_LoggingQosPolicy_print_format */ NDDS_Config_LogPrintFormat print_format; /*e \dref_LoggingQosPolicy_output_file */ char * output_file; /*e \dref_LoggingQosPolicy_output_file_suffix */ char * output_file_suffix; /*e \dref_LoggingQosPolicy_max_bytes_per_file */ DDS_Long max_bytes_per_file; /*e \dref_LoggingQosPolicy_max_files */ DDS_Long max_files; DDSCPP_VARIABLE_LENGTH_VALUE_TYPE_SUPPORT(DDS_LoggingQosPolicy) }; #define DDS_LOGGING_QOS_POLICY_DEFAULT \ { \ NDDS_CONFIG_LOG_VERBOSITY_ERROR,\ NDDS_CONFIG_LOG_CATEGORY_ALL,\ NDDS_CONFIG_LOG_PRINT_FORMAT_DEFAULT,\ NULL, \ NULL, \ -1, \ -1 \ } extern DDSCDllExport DDS_Boolean DDS_LoggingQosPolicy_equals( const struct DDS_LoggingQosPolicy* left, const struct DDS_LoggingQosPolicy* right); extern DDSCDllExport void DDS_LoggingQoSPolicy_save( const struct DDS_LoggingQosPolicy *self, const struct DDS_LoggingQosPolicy *base, struct RTIXMLSaveContext *dst); extern DDSCDllExport NDDS_Config_Logger* NDDS_Config_Logger_get_instance(void); extern DDSCDllExport NDDS_Config_Logger* NDDS_Config_Logger_get_instanceI(void); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_is_initialized(void); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_is_adv_initialized(void); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_preinit(void); extern DDSCDllExport void NDDS_Config_Logger_finalize_preinit(void); extern DDSCDllExport NDDS_Config_LogVerbosity NDDS_Config_Logger_get_verbosity( const NDDS_Config_Logger* self); extern DDSCDllExport NDDS_Config_LogVerbosity NDDS_Config_Logger_get_verbosity_by_category( const NDDS_Config_Logger* self, NDDS_Config_LogCategory category); extern DDSCDllExport NDDS_Config_LogVerbosity NDDS_Config_Logger_get_verbosity_by_service( const NDDS_Config_Logger* self, NDDS_Config_LogService service); extern DDSCDllExport void NDDS_Config_Logger_set_verbosity( NDDS_Config_Logger* self, NDDS_Config_LogVerbosity verbosity); extern DDSCDllExport void NDDS_Config_Logger_set_verbosity_by_category( NDDS_Config_Logger* self, NDDS_Config_LogCategory category, NDDS_Config_LogVerbosity verbosity); extern DDSCDllExport void NDDS_Config_Logger_set_verbosity_by_facility( NDDS_Config_Logger *self, NDDS_Config_LogFacility facility, NDDS_Config_LogVerbosity verbosity); extern DDSCDllExport void NDDS_Config_Logger_set_verbosity_by_service( NDDS_Config_Logger *self, NDDS_Config_LogService service, NDDS_Config_LogVerbosity verbosity); extern DDSCDllExport void NDDS_Config_Logger_set_verbosity_by_facilityI( NDDS_Config_Logger *self, NDDS_Config_LogFacility facility, NDDS_Config_LogVerbosity verbosity, DDS_Boolean notifyMonitoringLibrary); extern DDSCDllExport NDDS_Config_LogVerbosity NDDS_Config_Logger_get_verbosity_by_facility( const NDDS_Config_Logger *self, NDDS_Config_LogFacility facility); extern DDSCDllExport FILE* NDDS_Config_Logger_get_output_file(NDDS_Config_Logger* self); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_output_file(NDDS_Config_Logger* self, FILE* out); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_output_file_name(NDDS_Config_Logger* self, const char * file_name); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_output_file_set( NDDS_Config_Logger *self, const char *file_preffix, const char *file_suffix, int max_capacity, int max_files); extern DDSCDllExport NDDS_Config_LogPrintFormat NDDS_Config_Logger_get_print_format( const NDDS_Config_Logger* self); extern DDSCDllExport NDDS_Config_LogPrintFormat NDDS_Config_Logger_get_print_format_by_log_level( const NDDS_Config_Logger *self, NDDS_Config_LogLevel log_level); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_print_format( NDDS_Config_Logger* self, NDDS_Config_LogPrintFormat print_format); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_print_format_by_log_level( NDDS_Config_Logger *self, NDDS_Config_LogPrintFormat print_format, NDDS_Config_LogLevel log_level); struct DDS_DomainParticipantFactoryImpl; extern DDSCDllExport void NDDS_Config_Logger_emergency( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_emergencyI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_alert( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_alertI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_critical( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_criticalI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_error( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_errorI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_warning( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_warningI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_notice( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_noticeI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_informational( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_informationalI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_debug( NDDS_Config_Logger *self, const char *msg); extern DDSCDllExport void NDDS_Config_Logger_debugI( NDDS_Config_Logger *self, struct DDS_DomainParticipantFactoryImpl *factory, const char *msg); struct NDDS_Config_LogMessage { /*e \dref_LogMessage_text */ const char *text; /*e \dref_LogMessage_level */ NDDS_Config_LogLevel level; /*e \dref_LogMessage_is_security_message */ DDS_Boolean is_security_message; /*e \dref_LogMessage_is_license_message */ DDS_Boolean is_license_message; /*e \dref_LogMessage_message_id */ DDS_UnsignedLong message_id; /*e * \dref_LogMessage_timestamp */ struct DDS_Duration_t timestamp; /*e * \dref_LogMessage_facility */ NDDS_Config_LogFacility facility; }; struct NDDS_Config_LoggerDevice; typedef void (*NDDS_Config_LoggerDeviceWriteFnc)( struct NDDS_Config_LoggerDevice *device, const struct NDDS_Config_LogMessage *message); typedef void (*NDDS_Config_LoggerDeviceCloseFnc)( struct NDDS_Config_LoggerDevice *device); struct NDDS_Config_LoggerDevice { /*ci \dref_LoggerDevice_device_data * Device instance data. */ void *device_data; /*ce \dref_LoggerDevice_write */ NDDS_Config_LoggerDeviceWriteFnc write; /*ce \dref_LoggerDevice_close */ NDDS_Config_LoggerDeviceCloseFnc close; }; #define NDDS_Config_LoggerDevice_INITIALIZER \ { \ NULL, /* device_data */ \ NULL, /* write */ \ NULL /* close */ \ } extern DDSCDllExport struct NDDS_Config_LoggerDevice *NDDS_Config_Logger_get_output_device( NDDS_Config_Logger* self); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_output_device( NDDS_Config_Logger* self, struct NDDS_Config_LoggerDevice *device); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_output_deviceI( NDDS_Config_Logger* self, int slot, struct NDDS_Config_LoggerDevice *device); extern DDSCDllVariable struct ADVLOGLoggerDevice * NDDS_Config_Logger_createADVLOGLoggerDevice( struct NDDS_Config_LoggerDevice *device); typedef enum { /*e \dref_ActivityContextAttributeKind_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_GUID_PREFIX */ NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_GUID_PREFIX = RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_BIT_GUID_PREFIX, /*e \dref_ActivityContextAttributeKind_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_TOPIC */ NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_TOPIC = RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_BIT_TOPIC, /*e \dref_ActivityContextAttributeKind_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_TYPE */ NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_TYPE = RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_BIT_TYPE, /*e \dref_ActivityContextAttributeKind_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_ENTITY_KIND */ NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_ENTITY_KIND = RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_BIT_ENTITY_KIND, /*e \dref_ActivityContextAttributeKind_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_DOMAIN_ID */ NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_DOMAIN_ID = RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_BIT_DOMAIN_ID, /*e \dref_ActivityContextAttributeKind_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_ENTITY_NAME */ NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_ENTITY_NAME = RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_BIT_ENTITY_NAME } NDDS_Config_ActivityContextAttributeKind; typedef DDS_Long NDDS_Config_ActivityContextAttributeKindMask; /*e \dref_ActivityContextAttributeKindMask_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_DEFAULT */ #define NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_DEFAULT \ RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_DEFAULT /*e \dref_ActivityContextAttributeKindMask_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_NONE */ #define NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_NONE \ RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_NONE /*e \dref_ActivityContextAttributeKindMask_NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_ALL */ #define NDDS_CONFIG_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_ALL \ RTI_OSAPI_ACTIVITY_CONTEXT_ATTRIBUTE_MASK_ALL extern DDSCDllExport void NDDS_Config_ActivityContext_set_attribute_mask( NDDS_Config_ActivityContextAttributeKindMask attribute_mask); extern DDSCDllExport void NDDS_Config_Logger_set_security_instrumentation_mask(RTILogBitmap mask); extern DDSCDllExport RTILogBitmap NDDS_Config_Logger_get_security_instrumentation_mask(void); extern DDSCDllExport RTILogBitmap NDDS_Config_Logger_get_security_category_instrumentation_mask(void); extern DDSCDllExport void NDDS_Config_Logger_set_security_category_instrumentation_mask( RTILogBitmap mask); extern DDSCDllExport void NDDS_Config_Logger_set_user_instrumentation_mask(RTILogBitmap mask); extern DDSCDllExport DDS_Boolean NDDS_Config_Logger_set_clock(struct RTIClock *clock); #define NDDS_Config_Logger_get_security_event_instrumentation_mask() \ RTILog_g_securityEventInstrumentationMask #define NDDS_Config_Logger_set_security_event_instrumentation_mask(mask__) \ RTILog_g_securityEventInstrumentationMask = (mask__) typedef enum { /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_DHEADER_IN_NON_PRIMITIVE_COLLECTIONS_BIT */ NDDS_CONFIG_XTYPES_DHEADER_IN_NON_PRIMITIVE_COLLECTIONS_BIT = RTI_XCDR_XTYPES_DHEADER_IN_NON_PRIMITIVE_COLLECTIONS_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_ENUM_AS_PRIMITIVE_IN_COLLECTIONS_BIT */ NDDS_CONFIG_XTYPES_ENUM_AS_PRIMITIVE_IN_COLLECTIONS_BIT = RTI_XCDR_XTYPES_ENUM_AS_PRIMITIVE_IN_COLLECTIONS_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_PARAMETER_LENGTH_WITH_PADDING_BIT */ NDDS_CONFIG_XTYPES_PARAMETER_LENGTH_WITH_PADDING_BIT = RTI_XCDR_XTYPES_PARAMETER_LENGTH_WITH_PADDING_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_ENCAPSULATION_OPTIONS_WITH_PADDING_BIT */ NDDS_CONFIG_XTYPES_ENCAPSULATION_OPTIONS_WITH_PADDING_BIT = RTI_XCDR_XTYPES_ENCAPSULATION_OPTIONS_WITH_PADDING_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_ACCEPT_UNKNOWN_ENUM_VALUE_BIT */ NDDS_CONFIG_XTYPES_ACCEPT_UNKNOWN_ENUM_VALUE_BIT = RTI_XCDR_XTYPES_ACCEPT_UNKNOWN_ENUM_VALUE_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_ACCEPT_UNKNOWN_DISCRIMINATOR_BIT */ NDDS_CONFIG_XTYPES_ACCEPT_UNKNOWN_DISCRIMINATOR_BIT = RTI_XCDR_XTYPES_ACCEPT_UNKNOWN_DISCRIMINATOR_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_SELECT_DEFAULT_DISCRIMINATOR_BIT */ NDDS_CONFIG_XTYPES_SELECT_DEFAULT_DISCRIMINATOR_BIT = RTI_XCDR_XTYPES_SELECT_DEFAULT_DISCRIMINATOR_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_SENTINEL_IN_EMPTY_UNION_BIT */ NDDS_CONFIG_XTYPES_SENTINEL_IN_EMPTY_UNION_BIT = RTI_XCDR_XTYPES_SENTINEL_IN_EMPTY_UNION_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_INITIALIZE_DISCRIMINATOR_TO_DEFAULT_BIT */ NDDS_CONFIG_XTYPES_INITIALIZE_DISCRIMINATOR_TO_DEFAULT_BIT = RTI_XCDR_XTYPES_INITIALIZE_DISCRIMINATOR_TO_DEFAULT_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_JAVA_KEYHASH_750_BIT */ NDDS_CONFIG_XTYPES_JAVA_KEYHASH_750_BIT = RTI_XCDR_XTYPES_JAVA_KEYHASH_750_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_PYTHON_INT8_730_BIT */ NDDS_CONFIG_XTYPES_PYTHON_INT8_730_BIT = RTI_XCDR_XTYPES_PYTHON_INT8_730_BIT, /*e \dref_XTypesComplianceMaskBits_NDDS_CONFIG_XTYPES_MUST_UNDERSTAND_IN_KEY_AND_DISCRIMINATOR_BIT */ NDDS_CONFIG_XTYPES_MUST_UNDERSTAND_IN_KEY_AND_DISCRIMINATOR_BIT = RTI_XCDR_XTYPES_MUST_UNDERSTAND_IN_KEY_AND_DISCRIMINATOR_BIT } NDDS_Config_XTypesComplianceMaskBits; typedef DDS_UnsignedLong NDDS_Config_XTypesComplianceMask; /*e \dref_XTypesComplianceMask_NDDS_CONFIG_XTYPES_COMPLIANCE_MASK_VENDOR */ #define NDDS_CONFIG_XTYPES_COMPLIANCE_MASK_VENDOR \ RTI_XCDR_XTYPES_COMPLIANCE_MASK_VENDOR /*e \dref_XTypesComplianceMask_NDDS_CONFIG_XTYPES_COMPLIANCE_MASK_DEFAULT */ #define NDDS_CONFIG_XTYPES_COMPLIANCE_MASK_DEFAULT \ RTI_XCDR_XTYPES_COMPLIANCE_MASK_DEFAULT extern DDSCDllExport NDDS_Config_XTypesComplianceMask NDDS_Config_get_xtypes_compliance_mask(void); extern DDSCDllExport void NDDS_Config_set_xtypes_compliance_mask(NDDS_Config_XTypesComplianceMask mask); extern DDSCDllExport DDS_Boolean NDDS_Config_load_compliance_masks(void); typedef enum { /*e \dref_RpcComplianceMaskBits_NDDS_CONFIG_RPC_USE_STANDARD_RELATED_SAMPLE_PID_BIT */ NDDS_CONFIG_RPC_USE_STANDARD_RELATED_SAMPLE_PID_BIT = PRES_RPC_USE_STANDARD_RELATED_SAMPLE_PID_BIT } NDDS_Config_RpcComplianceMaskBits; typedef DDS_UnsignedLong NDDS_Config_RpcComplianceMask; /*e \dref_RpcComplianceMask_NDDS_CONFIG_RPC_COMPLIANCE_MASK_VENDOR */ #define NDDS_CONFIG_RPC_COMPLIANCE_MASK_VENDOR \ PRES_RPC_COMPLIANCE_MASK_VENDOR /*e \dref_RpcComplianceMask_NDDS_CONFIG_RPC_COMPLIANCE_MASK_DEFAULT */ #define NDDS_CONFIG_RPC_COMPLIANCE_MASK_DEFAULT \ PRES_RPC_COMPLIANCE_MASK_DEFAULT extern DDSCDllExport NDDS_Config_RpcComplianceMask NDDS_Config_get_rpc_compliance_mask(void); extern DDSCDllExport void NDDS_Config_set_rpc_compliance_mask(NDDS_Config_RpcComplianceMask mask); extern DDSCDllExport void NDDS_Config_enable_automatic_tss_cleanup(DDS_Boolean enable); #ifdef __cplusplus } /* extern "C" */ #endif #endif /* ndds_config_c_h */