Hosted by
|
with Lists;
with Parts; use Parts;
with Works; use Works;
with Identifications; use Identifications;
with Strings; use Strings;
package Scores is
package Part_Lists is new Lists(Part_Access);
subtype Part_List is Part_Lists.List;
subtype Part_List_Access is Part_Lists.List_Access;
type Score is limited private;
type Score_Access is access all Score;
function Create
return Score_Access;
procedure Set_Work
(This : access Score;
Work : in Work_Access);
function Get_Work
(This : access Score)
return Work_Access;
procedure Set_Movement_Number
(This : access Score;
Movement_Number : in String);
function Get_Movement_Number
(This : access Score)
return String;
procedure Set_Movement_Title
(This : access Score;
Movement_Title : in String);
function Get_Movement_Title
(This : access Score)
return String;
procedure Set_Identification
(This : access Score;
Identification : in Identification_Access);
function Get_Identification
(This : access Score)
return Identification_Access;
function Get_Parts
(This : access Score)
return Part_List_Access;
procedure Add_Part
(This : access Score;
Part : in Part_Access);
private
type Score is limited record
Work : Work_Access;
Movement_Number : String_Access;
Movement_Title : String_Access;
Identification : Identification_Access;
Parts : Part_List_Access;
end record;
end Scores;
|