| Hosted by
  | 
 
 
 
 
 
 
 with Ada.Tags; use Ada.Tags;
 with Placements; use Placements;
 with Music; use Music;
 with Dir_Types; use Dir_Types;
 
 package Music.Directions is
 
 
 type Direction is new Music_Data with private;
 
 
 Direction_Tag : constant String;
 
 
 type Direction_Access is access all Direction;
 
 
 function Create
 (Placement : in Placement_Enum)
 return Direction_Access;
 
 
 function Get_Placement
 (This : access Direction)
 return Placement_Enum;
 
 
 procedure Set_Dir_Type
 (This     : access Direction;
 Dir_Type : in Dir_Type_Access);
 
 
 function Get_Dir_Type
 (This : access Direction)
 return Dir_Type_Access;
 
 
 procedure Set_Offset
 (This   : access Direction;
 Offset : in Integer := 0);
 
 
 function Get_Offset
 (This : access Direction)
 return Integer;
 
 private
 
 
 type Direction is
 new Music_Data with
 record
 Placement : Placement_Enum;
 Dir_Type  : Dir_Type_Access;
 Offset    : Integer := 0;
 end record;
 
 
 Direction_Tag : constant String := "music.directions.direction";
 
 end Music.Directions;
 
 |