pragma Ada_2012;
pragma Ada_2012;
limited with DDS.DomainParticipant;
with DDS.SubscriberListener;
with DDS.DataReaderListener;
with DDS.Domain_Entity;
with DDS.DataReader;
with DDS.DataReaderSeq;
with DDS.TopicDescription;
package DDS.Subscriber is
pragma Elaborate_Body;
DATAREADER_QOS_DEFAULT : aliased constant DataReaderQoS with
Convention => Ada,
Import,
Link_Name => "DDS__Subscriber_DATAREADER_QOS_DEFAULT";
DATAREADER_QOS_USE_TOPIC_QOS : aliased constant DataReaderQoS with
Convention => Ada,
Import,
Link_Name => "DDS__Subscriber_DATAREADER_QOS_USE_TOPIC_QOS";
type Ref is limited interface and DDS.Domain_Entity.Ref;
type Ref_Access is access all Ref'Class;
type Ref_Access_Access is access all Ref_Access;
type Ref_Access_Array is array (Natural range <>) of aliased Ref_Access;
procedure Initialize
(Self : in out Ref_Access) is null;
procedure Finalize
(Self : in out Ref_Access) is null;
procedure Copy
(Dst : in out Ref_Access;
Src : in Ref_Access);
function Create_DataReader
(Self : not null access Ref;
Topic : not null access DDS.TopicDescription.Ref'Class;
Qos : in DDS.DataReaderQoS := DATAREADER_QOS_DEFAULT;
A_Listener : in DDS.DataReaderListener.Ref_Access := null;
Mask : in DDS.StatusMask := STATUS_MASK_NONE)
return DDS.DataReader.Ref_Access is abstract;
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 is abstract;
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 is abstract;
procedure Delete_DataReader
(Self : not null access Ref;
A_DataReader : in out DDS.DataReader.Ref_Access) is abstract;
procedure Delete_Contained_Entities
(Self : not null access Ref) is abstract;
function Lookup_DataReader
(Self : not null access Ref;
Topic_Name : in DDS.String)
return DDS.DataReader.Ref_Access is abstract;
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) is abstract;
procedure Notify_DataReaders
(Self : not null access Ref) is abstract;
procedure Set_Qos
(Self : not null access Ref;
Qos : in DDS.SubscriberQos) is abstract;
procedure Set_Qos_With_Profile
(Self : not null access Ref;
library_name : in String;
profile_name : in String) is abstract;
procedure Set_Qos_With_Profile
(Self : not null access Ref;
library_name : in Standard.String;
profile_name : in Standard.String) is abstract;
procedure Get_Qos
(Self : not null access Ref;
Qos : in out DDS.SubscriberQos) is abstract;
procedure Set_Listener
(Self : not null access Ref;
A_Listener : DDS.SubscriberListener.Ref_Access;
Mask : in DDS.StatusKind) is abstract;
function Get_Listener
(Self : not null access Ref)
return DDS.SubscriberListener.Ref_Access is abstract;
procedure Begin_Access
(Self : not null access Ref) is abstract;
procedure End_Access
(Self : not null access Ref) is abstract;
function Get_Participant
(Self : not null access Ref)
return access DDS.DomainParticipant.Ref'Class is abstract;
procedure Set_Default_DataReader_Qos
(Self : not null access Ref;
Qos : in DDS.DataReaderQoS) is abstract;
procedure Set_Default_DataReader_Qos_With_Profile
(Self : not null access Ref;
libName : DDS.String;
profName : DDS.String) is abstract;
procedure Set_Default_DataReader_Qos_With_Profile
(Self : not null access Ref;
libName : Standard.String;
profName : Standard.String) is abstract;
procedure Get_Default_DataReader_Qos
(Self : not null access Ref;
Qos : in out DDS.DataReaderQoS) is abstract;
procedure Copy_From_Topic_Qos
(Self : not null access Ref;
A_DataReader_Qos : in out DDS.DataReaderQoS;
A_Topic_Qos : in DDS.TopicQos) is abstract;
procedure Set_Default_Profile
(Self : not null access Ref;
library_name : DDS.String;
profile_name : DDS.String) is abstract;
procedure Set_Default_Library
(Self : not null access Ref;
library_name : DDS.String) is abstract;
function Get_Default_Library
(Self : not null access Ref)
return DDS.String is abstract;
function Get_Default_Profile
(Self : not null access Ref)
return DDS.String is abstract;
function Get_Default_Profile_Library
(Self : not null access Ref)
return DDS.String is abstract;
procedure call_listener (Self : not null access Ref;
mask : StatusMask) is abstract;
end DDS.Subscriber;