|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 7221 (0x1c35) Types: TextFile Names: »V«
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦458657fb6⟧ └─⟦220843204⟧ └─⟦this⟧
with Action; with Directory; package Activity_Implementation is -- An Activity maps a subsystem to a spec view and a non-spec view of -- that subsystem. pragma Subsystem (Directory, Closed); pragma Module_Name (4, 2909); subtype Activity_Id is Directory.Object; subtype Subsystem_Id is Directory.Object; subtype Spec_View_Id is Directory.Object; subtype Load_View_Id is Directory.Object; function Null_Activity return Activity_Id renames Directory.Nil; function Null_Subsystem return Subsystem_Id renames Directory.Nil; function Null_Spec_View return Spec_View_Id renames Directory.Nil; function Null_Load_View return Load_View_Id renames Directory.Nil; type Activity_Handle is limited private; function Current return Activity_Id; -- returns Activity currently associated with this job; if no Activity -- has been associated with this job, then returns Activity currently -- associated with this sesssion. procedure Set (Activity : Activity_Id); -- make Activity the current activity for this job only procedure Set_Default (Activity : Activity_Id); -- make Activity the current activity for this job and session function Nil return Activity_Handle; function Is_Nil (Handle : Activity_Handle) return Boolean; procedure Open (Activity : Activity_Id; Handle : in out Activity_Handle; Status : out Directory.Error_Status; Action_Id : Action.Id := Action.Null_Id; For_Update : Boolean := False; Prevent_Create : Boolean := False); procedure Close (Handle : in out Activity_Handle; Status : out Directory.Error_Status); -- An open/close protocol is used to deal with the problem of concurrent -- access to activities. A new version of the activity will be created -- when an Activity_Id is opened For_Update unless Prevent_Create is -- set to True function Default_Handle (Activity : Activity_Id := Current) return Activity_Handle; -- for use by loader function Enclosing_View (Unit : Directory.Ada.Unit) return Directory.Object; -- returns either a Spec_View_Id or a Load_View_Id. function Enclosing_Subsystem (View_Id : Directory.Object) return Subsystem_Id; -- takes either a Spec_View_Id or a Load_View_Id procedure Create (New_Activity : String; Action_Id : Action.Id; Status : out Directory.Error_Status; New_Id : out Activity_Id); type Creation_Mode is (Differential, Exact_Copy, Value_Copy); procedure Create (New_Activity : String; From : Activity_Handle; Status : out Directory.Error_Status; New_Id : out Activity_Id; Mode : Creation_Mode := Exact_Copy); -- Create New_Activity based on the contents of From (and using Action_Id -- associated with From) procedure Add_Subsystem (Subsystem : Subsystem_Id; Load_View : Load_View_Id := Null_Load_View; Spec_View : Spec_View_Id := Null_Spec_View; Handle : Activity_Handle); -- Add a subsystem to the domain of an activity procedure Remove_Subsystem (Subsystem : Subsystem_Id; Handle : Activity_Handle); -- Remove a subsystem from the domain of an activity function Has_Subsystem (Subsystem : Subsystem_Id; Handle : Activity_Handle) return Boolean; -- Test subsystem's membership in domain of an activity. function Get_Spec_View (Subsystem : Subsystem_Id; Handle : Activity_Handle) return Spec_View_Id; function Get_Load_View (Subsystem : Subsystem_Id; Handle : Activity_Handle) return Load_View_Id; procedure Set_Spec_View (Spec_View : Spec_View_Id; Handle : Activity_Handle); procedure Set_Load_View (Load_View : Load_View_Id; Handle : Activity_Handle); function Get_Spec_View_Source (Subsystem : Subsystem_Id; Handle : Activity_Handle) return Activity_Id; function Get_Load_View_Source (Subsystem : Subsystem_Id; Handle : Activity_Handle) return Activity_Id; procedure Set_Spec_View_Source (Subsystem : Subsystem_Id; Source : Activity_Id; Handle : Activity_Handle); procedure Set_Load_View_Source (Subsystem : Subsystem_Id; Source : Activity_Id; Handle : Activity_Handle); procedure Get_Spec_Value (Subsystem : Subsystem_Id; Indirect : out Boolean; Value : out Directory.Object; Handle : Activity_Handle); procedure Get_Load_Value (Subsystem : Subsystem_Id; Indirect : out Boolean; Value : out Directory.Object; Handle : Activity_Handle); procedure Get_Values (Subsystem : Subsystem_Id; Spec_Indirect : out Boolean; Spec_Value : out Directory.Object; Load_Indirect : out Boolean; Load_Value : out Directory.Object; Handle : Activity_Handle); procedure Set_Spec_Value (Subsystem : Subsystem_Id; Indirect : Boolean; Value : Directory.Object; Handle : Activity_Handle); procedure Set_Load_Value (Subsystem : Subsystem_Id; Indirect : Boolean; Value : Directory.Object; Handle : Activity_Handle); procedure Set_Values (Subsystem : Subsystem_Id; Spec_Indirect : Boolean; Spec_Value : Directory.Object; Load_Indirect : Boolean; Load_Value : Directory.Object; Handle : Activity_Handle); Undefined : exception; type Handle_Ref is access Activity_Handle; pragma Segmented_Heap (Handle_Ref); type Iterator is limited private; procedure Init (Iter : out Iterator; Handle : Handle_Ref); procedure Next (Iter : in out Iterator); function Done (Iter : Iterator) return Boolean; function Get_Subsystem (Iter : Iterator) return Subsystem_Id; function Is_Activity (File : Directory.Object) return Boolean; Default_Handle_Undefined : exception; -- raised by Default_Handle end Activity_Implementation;