OpenDDS  Snapshot(2023/04/07-19:43)
Public Member Functions | Protected Attributes | List of all members
OpenDDS::DCPS::TopicDescriptionImpl Class Reference

Implements the DDS::TopicDescription interface. More...

#include <TopicDescriptionImpl.h>

Inheritance diagram for OpenDDS::DCPS::TopicDescriptionImpl:
Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::TopicDescriptionImpl:
Collaboration graph
[legend]

Public Member Functions

 TopicDescriptionImpl (const char *topic_name, const char *type_name, TypeSupport_ptr type_support, DomainParticipantImpl *participant)
 
virtual ~TopicDescriptionImpl ()
 
virtual char * get_type_name ()
 
virtual char * get_name ()
 
virtual DDS::DomainParticipant_ptr get_participant ()
 
OpenDDS::DCPS::TypeSupport_ptr get_type_support ()
 
bool has_entity_refs () const
 
void add_entity_ref ()
 
void remove_entity_ref ()
 
- Public Member Functions inherited from OpenDDS::DCPS::LocalObjectBase
virtual void _add_ref ()
 
virtual void _remove_ref ()
 
virtual CORBA::ULong _refcount_value () const
 
- Public Member Functions inherited from CORBA::LocalObject
virtual ~LocalObject (void)
 
virtual CORBA::Boolean _non_existent (void)
 
virtual char * _repository_id (void)
 
virtual CORBA::InterfaceDef_ptr _get_interface (void)
 
virtual CORBA::Object_ptr _get_component (void)
 
virtual void _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::Request_ptr &request, CORBA::Flags req_flags)
 
virtual void _create_request (CORBA::Context_ptr ctx, const char *operation, CORBA::NVList_ptr arg_list, CORBA::NamedValue_ptr result, CORBA::ExceptionList_ptr exclist, CORBA::ContextList_ptr ctxtlist, CORBA::Request_ptr &request, CORBA::Flags req_flags)
 
virtual CORBA::Request_ptr _request (const char *operation)
 
CORBA::Policy_ptr _get_policy (CORBA::PolicyType type)
 
CORBA::Policy_ptr _get_cached_policy (TAO_Cached_Policy_Type type)
 
CORBA::Object_ptr _set_policy_overrides (const CORBA::PolicyList &policies, CORBA::SetOverrideType set_add)
 
CORBA::PolicyList_get_policy_overrides (const CORBA::PolicyTypeSeq &types)
 
CORBA::Boolean _validate_connection (CORBA::PolicyList_out inconsistent_policies)
 
virtual CORBA::ULong _hash (CORBA::ULong maximum)
 
virtual CORBA::Boolean _is_equivalent (CORBA::Object_ptr other_obj)
 
virtual CORBA::ORB_ptr _get_orb (void)
 
virtual TAO::ObjectKey_key (void)
 
- Public Member Functions inherited from CORBA::Object
virtual ~Object (void)
 
virtual TAO_Abstract_ServantBase_servant (void) const
 
virtual CORBA::Boolean _is_collocated (void) const
 
virtual CORBA::Boolean _is_local (void) const
 
 Object (TAO_Stub *p, CORBA::Boolean collocated=false, TAO_Abstract_ServantBase *servant=0, TAO_ORB_Core *orb_core=0)
 
 Object (IOP::IOR *ior, TAO_ORB_Core *orb_core)
 
virtual TAO_Stub_stubobj (void) const
 
virtual TAO_Stub_stubobj (void)
 
virtual void _proxy_broker (TAO::Object_Proxy_Broker *proxy_broker)
 
virtual CORBA::Boolean marshal (TAO_OutputCDR &cdr)
 
CORBA::Boolean is_evaluated (void) const
 
TAO_ORB_Coreorb_core (void) const
 
IOP::IORsteal_ior (void)
 
const IOP::IORior (void) const
 
virtual bool can_convert_to_ior (void) const
 
virtual char * convert_to_ior (bool use_omg_ior_format, const char *ior_prefix) const
 
void _decr_refcount (void)
 
virtual CORBA::Boolean _is_a (const char *logical_type_id)
 
virtual const char * _interface_repository_id (void) const
 
CORBA::Policy_ptr _get_policy (CORBA::PolicyType type)
 
CORBA::Policy_ptr _get_cached_policy (TAO_Cached_Policy_Type type)
 
CORBA::Object_ptr _set_policy_overrides (const CORBA::PolicyList &policies, CORBA::SetOverrideType set_add)
 
CORBA::PolicyList_get_policy_overrides (const CORBA::PolicyTypeSeq &types)
 
CORBA::Boolean _validate_connection (CORBA::PolicyList_out inconsistent_policies)
 
- Public Member Functions inherited from OpenDDS::DCPS::RcObject
virtual ~RcObject ()
 
long ref_count () const
 
WeakObject_get_weak_object () const
 

Protected Attributes

ACE_CString topic_name_
 The name of the topic. More...
 
ACE_CString type_name_
 The datatype of the topic. More...
 
DomainParticipantImplparticipant_
 The participant that creates this topic. More...
 
OpenDDS::DCPS::TypeSupport_var type_support_
 The type_support for this topic. More...
 
Atomic< ACE_UINT32 > entity_refs_
 The number of entities using this topic. More...
 
- Protected Attributes inherited from CORBA::Object
ACE_Atomic_Op< TAO_SYNCH_MUTEX, unsigned long > refcount_
 

Additional Inherited Members

- Public Types inherited from OpenDDS::DCPS::LocalObject< DDS::TopicDescription >
typedef DDS::TopicDescription ::_ptr_type _ptr_type
 
typedef DDS::TopicDescription ::_var_type _var_type
 
- Public Types inherited from CORBA::LocalObject
typedef LocalObject_ptr _ptr_type
 
typedef LocalObject_var _var_type
 
typedef LocalObject_out _out_type
 
- Public Types inherited from CORBA::Object
typedef Object_ptr _ptr_type
 
typedef Object_var _var_type
 
typedef Object_out _out_type
 
- Static Public Member Functions inherited from OpenDDS::DCPS::LocalObject< DDS::TopicDescription >
static _ptr_type _narrow (CORBA::Object_ptr obj)
 
- Static Public Member Functions inherited from CORBA::LocalObject
static LocalObject_ptr _duplicate (LocalObject_ptr obj)
 
static LocalObject_ptr _nil (void)
 
static LocalObject_ptr _narrow (CORBA::Object_ptr obj)
 
- Static Public Member Functions inherited from CORBA::Object
static CORBA::Boolean marshal (const Object_ptr x, TAO_OutputCDR &cdr)
 
static void _tao_any_destructor (void *)
 
static CORBA::Boolean is_nil_i (CORBA::Object_ptr obj)
 
static void tao_object_initialize (Object *)
 
static CORBA::Object_ptr _duplicate (CORBA::Object_ptr obj)
 
static CORBA::Object_ptr _nil (void)
 
static CORBA::Object_ptr _narrow (CORBA::Object_ptr obj)
 
- Protected Member Functions inherited from CORBA::LocalObject
 LocalObject (void)
 
- Protected Member Functions inherited from CORBA::Object
 Object (int dummy=0)
 
TAO::Object_Proxy_Brokerproxy_broker () const
 
- Protected Member Functions inherited from OpenDDS::DCPS::RcObject
 RcObject ()
 

Detailed Description

Implements the DDS::TopicDescription interface.

See the DDS specification, OMG formal/2015-04-10, for a description of the interface this class is implementing.

Definition at line 40 of file TopicDescriptionImpl.h.

Constructor & Destructor Documentation

◆ TopicDescriptionImpl()

OpenDDS::DCPS::TopicDescriptionImpl::TopicDescriptionImpl ( const char *  topic_name,
const char *  type_name,
TypeSupport_ptr  type_support,
DomainParticipantImpl participant 
)

Definition at line 19 of file TopicDescriptionImpl.cpp.

References _duplicate().

23  : topic_name_(topic_name),
24  type_name_(type_name),
25  participant_(participant),
26  type_support_(OpenDDS::DCPS::TypeSupport::_duplicate(type_support)),
27  entity_refs_(0)
28 {
29 }
ACE_CString topic_name_
The name of the topic.
Atomic< ACE_UINT32 > entity_refs_
The number of entities using this topic.
DomainParticipantImpl * participant_
The participant that creates this topic.
ACE_CString type_name_
The datatype of the topic.
OpenDDS::DCPS::TypeSupport_var type_support_
The type_support for this topic.

◆ ~TopicDescriptionImpl()

OpenDDS::DCPS::TopicDescriptionImpl::~TopicDescriptionImpl ( )
virtual

Definition at line 31 of file TopicDescriptionImpl.cpp.

32 {
33 }

Member Function Documentation

◆ add_entity_ref()

void OpenDDS::DCPS::TopicDescriptionImpl::add_entity_ref ( )
inline

Definition at line 66 of file TopicDescriptionImpl.h.

References OpenDDS::DCPS::RcObject::_add_ref().

66  {
68  ++entity_refs_;
69  }
virtual void _add_ref()
Definition: RcObject.h:69
Atomic< ACE_UINT32 > entity_refs_
The number of entities using this topic.

◆ get_name()

char * OpenDDS::DCPS::TopicDescriptionImpl::get_name ( void  )
virtual

◆ get_participant()

DDS::DomainParticipant_ptr OpenDDS::DCPS::TopicDescriptionImpl::get_participant ( )
virtual

Implements DDS::TopicDescription.

Definition at line 48 of file TopicDescriptionImpl.cpp.

References participant_.

Referenced by OpenDDS::DCPS::DomainParticipantImpl::delete_topic_i(), and OpenDDS::DCPS::TopicMonitorImpl::report().

49 {
50  return DDS::DomainParticipant::_duplicate(participant_);
51 }
DomainParticipantImpl * participant_
The participant that creates this topic.

◆ get_type_name()

char * OpenDDS::DCPS::TopicDescriptionImpl::get_type_name ( )
virtual

Implements DDS::TopicDescription.

Definition at line 36 of file TopicDescriptionImpl.cpp.

References ACE_String_Base< char >::c_str(), CORBA::string_dup(), and type_name_.

Referenced by OpenDDS::DCPS::DataReaderImpl::init(), and OpenDDS::DCPS::TopicMonitorImpl::report().

37 {
39 }
const char * c_str(void) const
char * string_dup(const char *)
ACE_CString type_name_
The datatype of the topic.

◆ get_type_support()

OpenDDS::DCPS::TypeSupport_ptr OpenDDS::DCPS::TopicDescriptionImpl::get_type_support ( )

◆ has_entity_refs()

bool OpenDDS::DCPS::TopicDescriptionImpl::has_entity_refs ( ) const
inline

◆ remove_entity_ref()

void OpenDDS::DCPS::TopicDescriptionImpl::remove_entity_ref ( )
inline

Definition at line 71 of file TopicDescriptionImpl.h.

References OpenDDS::DCPS::RcObject::_remove_ref().

71  {
72  --entity_refs_;
74  }
Atomic< ACE_UINT32 > entity_refs_
The number of entities using this topic.
virtual void _remove_ref()
Definition: RcObject.h:74

Member Data Documentation

◆ entity_refs_

Atomic<ACE_UINT32> OpenDDS::DCPS::TopicDescriptionImpl::entity_refs_
protected

The number of entities using this topic.

Definition at line 89 of file TopicDescriptionImpl.h.

◆ participant_

DomainParticipantImpl* OpenDDS::DCPS::TopicDescriptionImpl::participant_
protected

◆ topic_name_

ACE_CString OpenDDS::DCPS::TopicDescriptionImpl::topic_name_
protected

The name of the topic.

Definition at line 78 of file TopicDescriptionImpl.h.

Referenced by OpenDDS::DCPS::TopicImpl::enable(), get_name(), and OpenDDS::DCPS::TopicImpl::topic_name().

◆ type_name_

ACE_CString OpenDDS::DCPS::TopicDescriptionImpl::type_name_
protected

The datatype of the topic.

Definition at line 80 of file TopicDescriptionImpl.h.

Referenced by OpenDDS::DCPS::TopicImpl::enable(), get_type_name(), and OpenDDS::DCPS::TopicImpl::type_name().

◆ type_support_

OpenDDS::DCPS::TypeSupport_var OpenDDS::DCPS::TopicDescriptionImpl::type_support_
protected

The type_support for this topic.

Definition at line 86 of file TopicDescriptionImpl.h.

Referenced by OpenDDS::DCPS::TopicImpl::check_data_representation(), OpenDDS::DCPS::TopicImpl::enable(), and get_type_support().


The documentation for this class was generated from the following files: