package DDS.Subscriber_Impl is
type Ref is new DDS.Domain_Entity_Impl.Ref and DDS.Subscriber.Ref with private;
type Ref_Access is access all Ref'Class;
function Create_DataReader
| ( | Self | : not null access Ref; | 
| Topic | : not null access DDS.TopicDescription.Ref'Class; | |
| Qos | : in DDS.DataReaderQoS; | |
| A_Listener | : in DDS.DataReaderListener.Ref_Access; | |
| Mask | : in DDS.StatusMask) return DDS.DataReader.Ref_Access; | 
function Create_DataReader_With_Profile
| ( | Self | : not null access Ref; | 
| Topic | : not null access DDS.TopicDescription.Ref'Class; | |
| Library_Name | : in DDS.String; | |
| Profile_Name | : in DDS.String; | |
| A_Listener | : in DDS.DataReaderListener.Ref_Access := null; | |
| Mask | : in DDS.StatusMask := STATUS_MASK_NONE) return DDS.DataReader.Ref_Access; | 
function Create_DataReader_With_Profile
| ( | Self | : not null access Ref; | 
| Topic | : not null access DDS.TopicDescription.Ref'Class; | |
| Library_Name | : in Standard.String; | |
| Profile_Name | : in Standard.String; | |
| A_Listener | : in DDS.DataReaderListener.Ref_Access := null; | |
| Mask | : in DDS.StatusMask := STATUS_MASK_NONE) return DDS.DataReader.Ref_Access; | 
procedure Delete_DataReader
| ( | Self | : not null access Ref; | 
| A_DataReader | : in out DDS.DataReader.Ref_Access); | 
procedure Delete_Contained_Entities
| ( | Self | : not null access Ref); | 
function Lookup_DataReader
| ( | Self | : not null access Ref; | 
| Topic_Name | : in DDS.String) return DDS.DataReader.Ref_Access; | 
procedure Get_DataReaders
| ( | Self | : not null access Ref; | 
| Readers | : not null access DDS.DataReaderSeq.Sequence; | |
| Sample_States | : in DDS.SampleStateKind; | |
| View_States | : in DDS.ViewStateKind; | |
| Instance_States | : in DDS.InstanceStateKind); | 
procedure Notify_DataReaders
| ( | Self | : not null access Ref); | 
procedure Set_Qos
| ( | Self | : not null access Ref; | 
| Qos | : in DDS.SubscriberQos); | 
procedure Set_Qos_With_Profile
| ( | Self | : not null access Ref; | 
| Library_Name | : in Standard.String; | |
| Profile_Name | : in Standard.String); | 
procedure Get_Qos
| ( | Self | : not null access Ref; | 
| Qos | : in out DDS.SubscriberQos); | 
procedure Set_Listener
| ( | Self | : not null access Ref; | 
| A_Listener | : DDS.SubscriberListener.Ref_Access; | |
| Mask | : in DDS.StatusKind); | 
function Get_Listener
| ( | Self | : not null access Ref) return DDS.SubscriberListener.Ref_Access; | 
procedure Begin_Access
| ( | Self | : not null access Ref); | 
procedure End_Access
| ( | Self | : not null access Ref); | 
function Get_Participant
| ( | Self | : not null access Ref) return access DDS.DomainParticipant.Ref'Class; | 
procedure Set_Default_DataReader_Qos
| ( | Self | : not null access Ref; | 
| Qos | : in DDS.DataReaderQoS); | 
procedure Set_Default_DataReader_Qos_With_Profile
| ( | Self | : not null access Ref; | 
| libName | : DDS.String; | |
| profName | : DDS.String); | 
procedure Set_Default_DataReader_Qos_With_Profile
| ( | Self | : not null access Ref; | 
| libName | : Standard.String; | |
| profName | : Standard.String); | 
procedure Get_Default_DataReader_Qos
| ( | Self | : not null access Ref; | 
| Qos | : in out DDS.DataReaderQoS); | 
procedure Copy_From_Topic_Qos
| ( | Self | : not null access Ref; | 
| A_DataReader_Qos | : in out DDS.DataReaderQoS; | |
| A_Topic_Qos | : in DDS.TopicQos); | 
procedure Set_Default_Profile
| ( | Self | : not null access Ref; | 
| Library_Name | : DDS.String; | |
| Profile_Name | : DDS.String); | 
procedure Set_Default_Library
| ( | Self | : not null access Ref; | 
| Library_Name | : DDS.String); | 
function Get_Default_Library
| ( | Self | : not null access Ref) return DDS.String; | 
function Get_Default_Profile
| ( | Self | : not null access Ref) return DDS.String; | 
function Get_Default_Profile_Library
| ( | Self | : not null access Ref) return DDS.String; | 
procedure Free
| ( | This | : in out Ref_Access); | 
function CreateI
| ( | Participant | : in not null DDS.DomainParticipant.Ref_Access; | 
| Qos | : in DDS.SubscriberQos; | |
| A_Listener | : in DDS.SubscriberListener.Ref_Access; | |
| Mask | : in DDS.StatusMask) return DDS.Subscriber.Ref_Access; | 
function Create_WrapperI
| ( | C_Subscriber | : not null DDS_Subscriber_Access) return DDS.Subscriber_Impl.Ref_Access; | 
function Get_FacadeI
| ( | C_Subscriber | : not null DDS_Subscriber_Access) return Ref_Access; | 
function As_DDS_Entity_access is new Ada.Unchecked_Conversion
| ( | DDS_Subscriber_Access, DDS.Entity_Impl.DDS_Entity_Access); | 
function GetInterface
| ( | Self | : not null access Ref) return DDS_Subscriber_Access; | 
procedure SetInterface
| ( | Self | : not null access Ref; | 
| To | : DDS_Subscriber_Access); | 
procedure call_listener
| ( | Self | : not null access Ref; | 
| mask | : StatusMask); |