pragma Ada_2012;
with DDS.StatusCondition;
with System;
limited with Dds.DomainParticipantFactory;
package DDS.Entity is
type Ref is limited interface;
type Ref_Access is access all Ref'Class;
procedure Enable (Self : not null access Ref) is abstract;
function Get_StatusCondition (Self : not null access Ref) return
DDS.StatusCondition.Ref_Access is abstract;
function Get_Status_Changes (Self : not null access Ref) return
DDS.StatusMask is abstract;
function Get_Instance_Handle (Self : not null access Ref) return
DDS.InstanceHandle_T is abstract;
function Get_Entity_Kind (Self : not null access Ref) return
DDS.EntityKind_T is abstract;
function Wait (Self : not null access Ref;
Mask : in DDS.StatusMask;
Timeout : in Duration_T := DURATION_INFINITE) return Boolean is abstract;
function Wait (Self : not null access Ref;
Mask : in DDS.StatusMask;
Timeout : in Duration := Duration'Last) return Boolean is abstract;
procedure Wait (Self : not null access Ref;
Mask : in DDS.StatusMask;
Timeout : in Duration_T := DURATION_INFINITE) is abstract;
procedure Wait (Self : not null access Ref;
Mask : in DDS.StatusMask;
Timeout : in Duration := Duration'Last) is abstract;
function GetInterface (Self : not null access constant Ref)
return System.Address is abstract;
procedure SetInterface (Self : not null access Ref;
To : System.Address) is abstract;
function Get_Factory (Self : not null access Ref) return not null access DDS.DomainParticipantFactory.Ref is abstract;
end DDS.Entity;