-- (c) Copyright, Real-Time Innovations, $Date:: 2012-02-16 #$ -- All rights reserved. -- -- No duplications, whole or partial, manual or electronic, may be made -- without express written permission. Any such copies, or -- revisions thereof, must display this notice unaltered. -- This code contains trade secrets of Real-Time Innovations, Inc. with DDS.Condition; with DDS.GuardCondition_Impl; -- <dref>GuardCondition</dref> package DDS.GuardCondition is
-- Detailed Description -- A specific DDSCondition whose trigger_value is completely under the control of the application. -- 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.SWaitSet and then -- setting the trigger_value by means of the DDS.GuardCondition.set_trigger_value operation. -- -- See also: -- DDS.WaitSet type Ref is limited new Ada.Finalization.Limited_Controlled and DDS.Condition.Ref with private;
-- <dref>GuardCondition_new</dref> 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);
-- <dref>GuardCondition_set_trigger_value</dref> -- <internal> -- Set the guard condition trigger value. -- </internal> function Get_Trigger_Value
(Self : access Ref) return DDS.Boolean;
-- <internal> -- Returns the trigger value. -- </internal> function Get_Impl_ConditionI
(Self : access Ref) return DDS.GuardCondition_Impl.Ref_Access;
procedure Free (This : in out Ref_Access);
-- <dref>GuardCondition_delete</dref> function "=" (L : GuardCondition.Ref_Access;
R : Condition.Ref_Access) return Boolean;
function "=" (L : Condition.Ref_Access;
R : GuardCondition.Ref_Access) return Boolean;
private type Ref is limited new Ada.Finalization.Limited_Controlled and DDS.Condition.Ref with record
m_impl : DDS.GuardCondition_Impl.Ref_Access; end record;
procedure Free_Impl is new Ada.Unchecked_Deallocation (Ref'Class, Ref_Access);
procedure Free (This : in out Ref_Access) renames Free_Impl;
end DDS.GuardCondition;