Hosted by
|
with Ada.Tags; use Ada.Tags;
with Notations; use Notations;
with Placements; use Placements;
with Enum_Strings; use Enum_Strings;
package Notations.Slurs is
type Slur_Type_Enum is (Start, Stop);
function To_Slur_Type_Enum is new To_Enum(Slur_Type_Enum);
type Slur is new Notation with private;
Slur_Tag : constant String;
type Slur_Access is access all Slur;
function Create
(Slur_Type : in Slur_Type_Enum;
Placement : in Placement_Enum;
Number : in Positive)
return Slur_Access;
function Get_Slur_Type
(This : access Slur)
return Slur_Type_Enum;
function Get_Placement
(This : access Slur)
return Placement_Enum;
function Get_Number
(This : access Slur)
return Positive;
private
type Slur is
new Notation with
record
Slur_Type : Slur_Type_Enum;
Placement : Placement_Enum;
Number : Positive;
end record;
Slur_Tag : constant String := "notations.slurs.slur";
end Notations.Slurs;
|