-- $Date: 2004/03/08 11:05:10 $
-- $Revision: 1.3 $
-- $Author: jcrocholl $
-- $Hash: 5215230afa54e5339eb570b4f3fd7a93 $

-- This file was automatically created with ado.php.
-- Manual changes will be lost when it is updated.

with Ada.Tags; use Ada.Tags;
with Music; use Music;

package Music.Forwards is

   -- Public representation.
   type Forward is new Music_Data with private;

   -- Work-around for GNAT bug.
   Forward_Tag : constant String;

   -- Pointer to representation data.
   type Forward_Access is access all Forward;

   -- Constructor for instances.
   function Create
     (Duration : in Positive-- The initial duration.
      Voice    : in Positive-- The initial voice.
      Staff    : in Positive-- The initial staff.
     return Forward_Access;   -- The newly created forward.

   -- Accessor to read the duration of a forward.
   function Get_Duration
     (This : access Forward-- The forward to read from.
     return Positive;        -- The duration of that forward.

   -- Accessor to read the voice of a forward.
   function Get_Voice
     (This : access Forward-- The forward to read from.
     return Positive;        -- The voice of that forward.

   -- Accessor to read the staff of a forward.
   function Get_Staff
     (This : access Forward-- The forward to read from.
     return Positive;        -- The staff of that forward.

private

   -- Private representation.
   type Forward is
     new Music_Data with
      record
         Duration : Positive;
         Voice    : Positive;
         Staff    : Positive;
      end record;

   -- Work-around for GNAT bug.
   Forward_Tag : constant String := "music.forwards.forward";

end Music.Forwards;