6 #ifndef OPENDDS_DCPS_SERVICE_PARTICIPANT_H 7 #define OPENDDS_DCPS_SERVICE_PARTICIPANT_H 25 #include <dds/DdsDcpsInfrastructureC.h> 26 #include <dds/DdsDcpsDomainC.h> 27 #include <dds/DdsDcpsInfoUtilsC.h> 36 #ifndef ACE_LACKS_PRAGMA_ONCE 45 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE 46 class DataDurabilityCache;
48 class ThreadStatusManager;
73 enum { ANY_DOMAIN = -1 };
104 DDS::DomainParticipantFactory_ptr get_domain_participant_factory(
105 int &argc = zero_argc,
108 #ifdef ACE_USES_WCHAR 109 DDS::DomainParticipantFactory_ptr
110 get_domain_participant_factory(
int &argc,
char *argv[]);
126 bool is_shut_down()
const;
172 size_t n_chunks()
const;
178 void n_chunks(
size_t chunks);
185 size_t association_chunk_multiplier()
const;
192 void association_chunk_multiplier(
size_t multiplier);
197 void liveliness_factor(
int factor);
202 int liveliness_factor()
const;
207 bool set_repo_ior(
const char* ior,
209 bool attach_participant =
true);
213 bool set_repo_ior(
const wchar_t* ior,
215 bool attach_participant =
true);
218 bool use_bidir_giop()
const;
223 bool attach_participant =
true);
228 bool attach_participant =
true);
243 int& federation_recovery_duration();
244 int federation_recovery_duration()
const;
249 int& federation_initial_backoff_seconds();
250 int federation_initial_backoff_seconds()
const;
255 int& federation_backoff_multiplier();
256 int federation_backoff_multiplier()
const;
261 int& federation_liveliness();
262 int federation_liveliness()
const;
268 long scheduler()
const;
273 bool& publisher_content_filter();
274 bool publisher_content_filter()
const;
288 int priority_min()
const;
289 int priority_max()
const;
302 int bit_transport_port()
const;
303 void bit_transport_port(
int port);
315 int bit_lookup_duration_msec()
const;
316 void bit_lookup_duration_msec(
int msec);
319 #if defined(OPENDDS_SECURITY) 321 return security_enabled_;
325 security_enabled_ = b;
339 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE 348 const RepoKeyDiscoveryMap& discoveryMap()
const;
350 const DomainRepoMap& domainRepoMap()
const;
352 void register_discovery_type(
const char* section_name,
355 #ifndef OPENDDS_SAFETY_PROFILE 362 Recorder_ptr create_recorder(DDS::DomainParticipant_ptr participant,
363 DDS::Topic_ptr a_topic,
378 Replayer_ptr create_replayer(DDS::DomainParticipant_ptr participant,
379 DDS::Topic_ptr a_topic,
392 DDS::Topic_ptr create_typeless_topic(DDS::DomainParticipant_ptr participant,
393 const char * topic_name,
394 const char * type_name,
397 DDS::TopicListener_ptr a_listener = 0,
418 #ifdef OPENDDS_SAFETY_PROFILE 422 void configure_pool();
430 void default_configuration_file(
const ACE_TCHAR* path);
432 #ifdef OPENDDS_NETWORK_CONFIG_MODIFIER 433 NetworkConfigModifier* network_config_modifier();
437 void bit_autopurge_nowriter_samples_delay(
const DDS::Duration_t& duration);
440 void bit_autopurge_disposed_samples_delay(
const DDS::Duration_t& duration);
448 #ifndef OPENDDS_SAFETY_PROFILE 462 void type_object_encoding(
const char* encoding);
466 return network_interface_address_topic_;
471 return printer_value_writer_indent_;
476 printer_value_writer_indent_ =
value;
485 void initializeScheduling();
491 int parse_args(
int &argc,
ACE_TCHAR *argv[]);
500 int load_configuration();
552 #ifndef OPENDDS_SAFETY_PROFILE 629 #if defined(OPENDDS_SECURITY) 670 int parse_domain_range(
const OPENDDS_STRING& range,
int& start,
int& end);
672 bool has_domain_range()
const;
715 #if OPENDDS_POOL_ALLOCATOR 720 size_t pool_granularity_;
735 #ifndef OPENDDS_NO_PERSISTENCE_PROFILE 792 #define TheServiceParticipant OpenDDS::DCPS::Service_Participant::instance() 794 #define TheParticipantFactory TheServiceParticipant->get_domain_participant_factory() 796 #define TheParticipantFactoryWithArgs(argc, argv) TheServiceParticipant->get_domain_participant_factory(argc, argv) 803 #if defined(__ACE_INLINE__) DDS::GroupDataQosPolicy initial_GroupDataQosPolicy_
DDS::ResourceLimitsQosPolicy initial_ResourceLimitsQosPolicy_
int bit_transport_port_
The builtin topic transport port number.
RcHandle< InternalTopic< NetworkInterfaceAddress > > network_interface_address_topic_
Null implementation of the MonitorFactory.
Send raw data samples in the system.
DDS::DataRepresentationQosPolicy initial_DataRepresentationQosPolicy_
static const char * DEFAULT_REPO
Key value for the default repository IOR.
const LogLevel::Value value
long scheduler_
Scheduling policy value used for setting thread priorities.
DDS::LatencyBudgetQosPolicy initial_LatencyBudgetQosPolicy_
DDS::TopicDataQosPolicy initial_TopicDataQosPolicy_
DDS::Duration_t bit_autopurge_disposed_samples_delay_
RcHandle< DomainParticipantFactoryImpl > dp_factory_servant_
DomainRepoMap domainRepoMap_
The DomainId to RepoKey mapping.
int priority_min_
Minimum priority value for the current scheduling policy.
bool monitor_enabled_
Enable Monitor functionality.
DDS::TypeConsistencyEnforcementQosPolicy initial_TypeConsistencyEnforcementQosPolicy_
MonitorFactory * monitor_factory_
DDS::OwnershipQosPolicy initial_OwnershipQosPolicy_
DDS::Duration_t bit_autopurge_nowriter_samples_delay_
#define OpenDDS_Dcps_Export
DDS::LifespanQosPolicy initial_LifespanQosPolicy_
DDS::DataWriterQos initial_DataWriterQos_
DDS::PublisherQos initial_PublisherQos_
TypeObjectEncoding type_object_encoding_
DDS::WriterDataLifecycleQosPolicy initial_WriterDataLifecycleQosPolicy_
NetworkConfigMonitor_rch network_config_monitor_
OPENDDS_STRING transport_config_name
Underlying data cache for both OpenDDS TRANSIENT and PERSISTENT DURABILITY implementations..
unsigned int printer_value_writer_indent() const
DDS::ReaderDataLifecycleQosPolicy initial_ReaderDataLifecycleQosPolicy_
OPENDDS_STRING discovery_template_name
void set_security(bool b)
int liveliness_factor_
The propagation delay factor.
int priority_max_
Maximum priority value for the current scheduling policy.
ACE_Recursive_Thread_Mutex maps_lock_
Guard access to the internal maps.
const TimeSource time_source_
DDS::TransportPriorityQosPolicy initial_TransportPriorityQosPolicy_
ACE_Thread_Mutex factory_lock_
DDS::SubscriberQos initial_SubscriberQos_
DDS::DurabilityQosPolicy initial_DurabilityQosPolicy_
DDS::LivelinessQosPolicy initial_LivelinessQosPolicy_
DDS::DestinationOrderQosPolicy initial_DestinationOrderQosPolicy_
const char DEFAULT_ORB_NAME[]
bool bidir_giop_
Enable TAO's Bidirectional GIOP?
TimeDuration pending_timeout_
NetworkAddress default_address_
The default network address to use.
DOMAINID_TYPE_NATIVE DomainId_t
TimeDuration schedulerQuantum_
Scheduler time slice from configuration file.
OPENDDS_STRING discovery_name
int federation_recovery_duration_
The FederationRecoveryDuration value in seconds.
RcHandle< InternalTopic< NetworkInterfaceAddress > > network_interface_address_topic() const
unique_ptr< DataDurabilityCache > transient_data_cache_
The TRANSIENT data durability cache.
ACE_TString schedulerString_
Scheduling policy value from configuration file.
size_t association_chunk_multiplier_
DDS::TopicQos initial_TopicQos_
int federation_liveliness_
This FederationLivelinessDuration.
virtual void notify_shutdown()=0
DDS::DataReaderQos initial_DataReaderQos_
ACE_TString default_configuration_file_
int bit_lookup_duration_msec_
DDS::PropertyQosPolicy initial_PropertyQosPolicy_
ACE_CString persistent_data_dir_
The PERSISTENT data durability directory.
DDS::DomainParticipantFactoryQos initial_DomainParticipantFactoryQos_
DDS::ReliabilityQosPolicy initial_ReliabilityQosPolicy_
DDS::PartitionQosPolicy initial_PartitionQosPolicy_
DDS::DomainId_t range_start
DDS::DomainId_t range_end
DDS::HistoryQosPolicy initial_HistoryQosPolicy_
DiscoveryTypes discovery_types_
ThreadStatusManager thread_status_manager_
DDS::TimeBasedFilterQosPolicy initial_TimeBasedFilterQosPolicy_
unique_ptr< Monitor > monitor_
Pointer to the monitor object for this object.
ACE_TString bit_transport_ip_
The builtin topic transport address.
DDS::DomainParticipantQos initial_DomainParticipantQos_
ACE_Thread_Mutex network_config_monitor_lock_
Discovery::RepoKey defaultDiscovery_
DDS::DeadlineQosPolicy initial_DeadlineQosPolicy_
DDS::EntityFactoryQosPolicy initial_EntityFactoryQosPolicy_
int federation_initial_backoff_seconds_
The FederationInitialBackoffSeconds value.
AtomicBool shut_down_
Used to track state of service participant.
int federation_backoff_multiplier_
This FederationBackoffMultiplier.
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
DDS::DurabilityServiceQosPolicy initial_DurabilityServiceQosPolicy_
virtual ~ShutdownListener()
const NetworkAddress & default_address() const
unique_ptr< DataDurabilityCache > persistent_data_cache_
The PERSISTENT data durability cache.
typedef OPENDDS_VECTOR(ActionConnectionRecord) ConnectionRecords
DDS::UserDataQosPolicy initial_UserDataQosPolicy_
The initial values of qos policies.
DDS::OwnershipStrengthQosPolicy initial_OwnershipStrengthQosPolicy_
int shutdown(ACE_HANDLE handle, int how)
const DCPS::Encoding encoding(DCPS::Encoding::KIND_UNALIGNED_CDR, DCPS::ENDIAN_BIG)
DDS::PresentationQosPolicy initial_PresentationQosPolicy_
ACE_Thread_Mutex xtypes_lock_
Thread mutex used to protect the static initialization of XTypes data structures. ...
ACE_TString global_transport_config_
void printer_value_writer_indent(unsigned int value)
The Internal API and Implementation of OpenDDS.
bool publisher_content_filter_
Allow the publishing side to do content filtering?
typedef OPENDDS_MAP(OPENDDS_STRING, OPENDDS_STRING) ValueMap
Helper types and functions for config file parsing.
RcHandle< ShutdownListener > shutdown_listener_
ReactorTask reactor_task_
RepoKeyDiscoveryMap discoveryMap_
The RepoKey to Discovery object mapping.
unsigned int printer_value_writer_indent_