initial commit
[rofl0r-KOL.git] / units / mp3 / KolPlayer.pas
blobfbcb98806cda68eb9fb2a418e0ee67f76295b9ac
1 (*
2 * File: $RCSfile: Player.pas,v $
3 * Revision: $Revision: 1.1.1.1 $
4 * Version : $Id: Player.pas,v 1.1.1.1 2002/04/21 12:57:22 fobmagog Exp $
5 * Author: $Author: fobmagog $
6 * Homepage: http://delphimpeg.sourceforge.net/
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 unit KolPlayer;
24 interface
25 uses
26 Kol, kolOBuffer, kolShared, kolHeader;
28 type
29 PPlayer = ^TPlayer;
30 TPlayer = object(Tobj)
31 protected
32 function GetPosition: Integer; virtual;
33 function GetLength: Integer; virtual;
34 function GetMode: TMode; virtual;
35 function GetChannels: TChannels; virtual;
36 function GetVersion: TVersion; virtual;
37 function GetLayer: Integer; virtual;
38 function GetFrequency: Integer; virtual;
39 function GetBitrate: Integer; virtual;
40 function GetIsPlaying: Boolean; virtual;
41 function GetDoRepeat: Boolean; virtual;
42 procedure SetDoRepeat(Value: Boolean); virtual;
44 public
45 property Position: Integer read GetPosition;
46 property Length: Integer read GetLength;
47 property Mode: TMode read GetMode;
48 property Channels: TChannels read GetChannels;
49 property Version: TVersion read GetVersion;
50 property Layer: Integer read GetLayer;
51 property Frequency: Integer read GetFrequency;
52 property Bitrate: Integer read GetBitrate;
53 property IsPlaying: Boolean read GetIsPlaying;
54 property DoRepeat: Boolean read GetDoRepeat write SetDoRepeat;
56 procedure LoadFile(FileName: String); virtual; abstract;
57 procedure SetOutput(Output: TOBuffer); virtual; abstract;
58 procedure Play; virtual; abstract;
59 procedure Pause; virtual; abstract;
60 procedure Stop; virtual; abstract;
61 end;
63 implementation
65 { TPlayer }
67 function TPlayer.GetBitrate: Integer;
68 begin
70 end;
72 function TPlayer.GetChannels: TChannels;
73 begin
75 end;
77 function TPlayer.GetDoRepeat: Boolean;
78 begin
80 end;
82 function TPlayer.GetFrequency: Integer;
83 begin
85 end;
87 function TPlayer.GetIsPlaying: Boolean;
88 begin
90 end;
92 function TPlayer.GetLayer: Integer;
93 begin
95 end;
97 function TPlayer.GetLength: Integer;
98 begin
100 end;
102 function TPlayer.GetMode: TMode;
103 begin
105 end;
107 function TPlayer.GetPosition: Integer;
108 begin
110 end;
112 function TPlayer.GetVersion: TVersion;
113 begin
115 end;
117 procedure TPlayer.SetDoRepeat(Value: Boolean);
118 begin
120 end;
122 end.