type Ref is limited new Ada.Finalization.Limited_Controlled and DDS.Condition.Ref with private;
Construct a new guard condition with trigger value DDS.BOOLEAN_FALSE.
MT Safety:
UNSAFE. In VxWorks, it is unsafe to call this procedure while another thread may be simultaneously calling DDS.DomainParticipantFactory.get_instance, DDS.DomainParticipantFactory.finalize_instance, DDS_TypeCodeFactory.get_instance, DDSGuardCondition::DDSGuardCondition, DDSWaitSet::DDSWaitSet(), DDSWaitSet::DDSWaitSet(const DDS_WaitSetProperty_t&), NDDSUtilityNetworkCapture.enable, or NDDSUtilityNetworkCapture.disable.
Raises: DDS.RETCODE_OUT_OF_RESOURCES if a new DDS.GuardCondition could not be allocated.
Important: The DDS.GuardCondition allocates native resources. When DDS.GuardCondition is no longer being used, user should call DDSGuardCondition::~DDSGuardCondition explicitly to properly cleanup all native resources.
type Ref_Access is access all Ref'Class;
procedure Initialize
( | Self | : in out Ref); |
procedure Adjust
( | Self | : in out Ref); |
procedure Finalize
( | Self | : in out Ref); |
procedure Set_Trigger_Value
( | Self | : access Ref; |
Value | : DDS.Boolean); |
self: <<in>> Cannot be NULL
value: <<in>> the new trigger value.
function Get_Impl_ConditionI
( | Self | : access Ref) return DDS.GuardCondition_Impl.Ref_Access; |
procedure Free
( | This | : in out Ref_Access); |
Releases the resources associated with this object.
MT Safety:
UNSAFE. In VxWorks, it is unsafe to call this procedure while another thread may be simultaneously calling DDS.DomainParticipantFactory.get_instance, DDS.DomainParticipantFactory.finalize_instance, DDS_TypeCodeFactory.get_instance, DDSGuardCondition::DDSGuardCondition, DDSWaitSet::DDSWaitSet(), DDSWaitSet::DDSWaitSet(const DDS_WaitSetProperty_t&), DDSGuardCondition::~DDSGuardCondition, DDSWaitSet::~DDSWaitSet(), Deleting a
ull_value condition is safe and has no effect.
self: <<in>> Cannot be NULL
function "="
( | L | : GuardCondition.Ref_Access; |
R | : Condition.Ref_Access) return Boolean; |
function "="
( | L | : Condition.Ref_Access; |
R | : GuardCondition.Ref_Access) return Boolean; |
The DDS.GuardCondition provides a way for an application to manually wake up a DDS.WaitSet. This is accomplished by attaching the DDS.GuardCondition to the DDS.WaitSet and then setting the trigger_value by means of the DDS.GuardCondition.set_trigger_value operation.
Important: GuardCondition allocates native resources. When a GuardCondition is no longer being used, close() must be called.
See also: DDS.WaitSet