package DDS.TopicDescription_Impl is
type Ref is limited new DDS.Entity_Impl.Ref and DDS.TopicDescription.Ref with private;
type Ref_Access is access all Ref'Class;
function Get_Type_Name
| ( | Self | : not null access Ref) return DDS.String; | 
function Get_Name
| ( | Self | : not null access Ref) return DDS.String; | 
function Get_Participant
| ( | Self | : not null access Ref) return access DDS.DomainParticipant.Ref'Class; | 
function CreateI
| ( | Wrapper | : not null access RTIDDS.Low_Level.ndds_dds_c_dds_c_topic_h.DDS_Topic) return DDS.TopicDescription_Impl.Ref_Access; | 
function create_datareaderI
| ( | self | : not null access Ref; | 
| l | : Integer; | |
| datareaderlistener | : DDS.DataReaderListener.Ref_Access; | |
| i | : Integer) return DDS.DataReader.Ref_Access; | 
function get_data_type
| ( | self | : not null access Ref) return DDS.TypeSupport_Impl.Ref_Access; | 
function Get_Native_Topic_Wrapper
| ( | Self | : not null access Ref) return access RTIDDS.Low_Level.ndds_dds_c_dds_c_topic_h.DDS_Topic; | 
procedure Set_Native_ContentFilteredTopic_Wrapper
| ( | Self | : not null access Ref; | 
| CFTopic_W | : access RTIDDS.Low_Level.ndds_dds_c_dds_c_topic_h.DDS_ContentFilteredTopic); | 
function Get_Native_ContentFilteredTopic_Wrapper
| ( | Self | : not null access Ref) return access RTIDDS.Low_Level.ndds_dds_c_dds_c_topic_h.DDS_ContentFilteredTopic; | 
procedure Free
| ( | This | : in out Ref_Access); | 
function GetInterface
| ( | Self | : not null access Ref) return DDS_TopicDescription_Access; | 
procedure SetInterface
| ( | Self | : not null access Ref; | 
| To | : DDS_TopicDescription_Access); | 
function GetInterface
| ( | Self | : not null access constant Ref) return System.Address; | 
procedure SetInterface
| ( | Self | : not null access Ref; | 
| To | : System.Address); |