Hosted by
 |
with Ada.Tags; use Ada.Tags;
with Music; use Music;
with Enum_Strings; use Enum_Strings;
package Music.Barlines is
type Location_Enum is (Left, Right);
function To_Location_Enum is new To_Enum(Location_Enum);
type Bar_Style_Enum is (Regular, Dotted, Heavy, Light_Light,
Light_Heavy, Heavy_Light, Heavy_Heavy, None);
function To_Bar_Style_Enum is new To_Enum(Bar_Style_Enum);
type Barline is new Music_Data with private;
Barline_Tag : constant String;
type Barline_Access is access all Barline;
function Create
(Location : in Location_Enum;
Bar_Style : in Bar_Style_Enum)
return Barline_Access;
function Get_Location
(This : access Barline)
return Location_Enum;
function Get_Bar_Style
(This : access Barline)
return Bar_Style_Enum;
private
type Barline is
new Music_Data with
record
Location : Location_Enum;
Bar_Style : Bar_Style_Enum;
end record;
Barline_Tag : constant String := "music.barlines.barline";
end Music.Barlines;
|