pragma Ada_2012;
limited with DDS.DataReader;
with DDS.Condition_Impl;
with DDS.ReadCondition;
with RTIDDS.Low_Level.ndds_reda_reda_worker_impl_h;
with RTIDDS.Low_Level.ndds_dds_c_dds_c_subscription_h;
with DDS.DataReader_Impl;
package DDS.ReadCondition_Impl is
use RTIDDS.Low_Level.ndds_dds_c_dds_c_subscription_h;
type Ref is new DDS.Condition_Impl.Ref and DDS.ReadCondition.Ref with null record;
type Ref_Access is access all Ref'Class;
function Get_Trigger_Value
(Self : access Ref)
return DDS.Boolean;
function Get_Sample_State_Mask
(Self : not null access Ref)
return DDS.SampleStateMask;
function Get_View_State_Mask
(Self : not null access Ref)
return DDS.ViewStateMask;
function Get_Instance_State_Mask
(Self : not null access Ref)
return DDS.InstanceStateMask;
function Get_DataReader
(Self : not null access Ref)
return access DDS.DataReader.Ref'Class;
function CreateI
(C_DataReader : DDS.DataReader_Impl.DDS_DataReader_Access;
Sample_Mask : DDS.SampleStateMask;
View_Mask : DDS.ViewStateMask;
Instance_Mask : DDS.InstanceStateMask)
return DDS.ReadCondition.Ref_Access;
procedure Free (Self : access Ref'Class);
function Get_Impl_I
(Self : access Ref)
return DDS.Condition_Impl.Ref_Access;
procedure Finalize_Callback
(arg1 : System.Address;
arg2 : System.Address;
arg3 : access RTIDDS.Low_Level.ndds_reda_reda_worker_impl_h.REDAWorker);
pragma Convention (C, Finalize_Callback);
type DDS_ReadCondition_Access is access all DDS_ReadCondition with Storage_Size => 0;
function GetInterface (Self : not null access Ref) return DDS_ReadCondition_Access;
procedure SetInterface (Self : not null access Ref; To : DDS_ReadCondition_Access);
private
procedure Free_Impl is new Ada.Unchecked_Deallocation (Ref'Class, Ref_Access);
procedure Free_Mem (Self : in out Ref_Access) renames Free_Impl;
end DDS.ReadCondition_Impl;