ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/SIDPlayer/src/clamp_includes/InputPlugin_InfoStruct.h
Revision: 1.1
Committed: 2000-07-28T12:42:30Z (24 years, 3 months ago) by cebix
Content type: text/plain
Branch point for: MAIN, cebix
Log Message:
Initial revision

File Contents

# Content
1 #ifndef CLAMP_INPUT_PLUGIN_INFO_H
2 #define CLAMP_INPUT_PLUGIN_INFO_H
3
4 #define MAX_INPLUG_FNAME_LEN 100
5
6 // The following is for the Flags member in PlayerInfoStruct
7 // (File Position Promille => 0=start, and 1000=end of file)
8 #define INPLUG_NO_TOTTIME 0x0001 // The plugin can't estimate a total time for the current file
9 #define INPLUG_NO_CURRTIME 0x0002 // The plugin will not provide any information in CurrTime
10 #define INPLUG_JUMP_OK 0x0004 // The plugin can jump around in the current song
11 // Observe: Jumping can not be done if INPLUG_NO_CURRTIME is given!!
12 #define INPLUG_JUMP_FILEPOS 0x0008 // Makes JumpTo() give the new position in file position promille
13 // instead of milliseconds as it is default
14 #define INPLUG_CURRTIME_FILEPOS 0x0010 // The plugin will set CurrTime to the current file position promille
15 // instead of milliseconds as it is default
16 #define INPLUG_HANDLE_SPEED 0x0020 // CL-Amp will call NewSpeed() to ask for a new speed and will not
17 // try to adjust it by itself!
18 // (CL-Amp is otherwise taking care of speed adjustment by itself!)
19 #define INPLUG_HANDLE_VOLUME 0x0040 // CL-Amp will call NewVolume() to ask for a new speed and will not
20 // try to adjust it by itself!
21 // (CL-Amp is otherwise taking care of volume adjustment by itself!)
22 #define INPLUG_INDEPENDENT 0x0080 // The plugin will remain in GetAudio() while playing this song
23 // * CL-Amp will call JumpTo() from thread A instead of thread B
24 // * CL-Amp will call NewSpeed() from thread A instead of thread B
25 // (NewSpeed() is only called if the INPLUG_HANDLE_SPEED flag is given!)
26
27 struct PlayerInfoStruct {
28 char Title[MAX_INPLUG_FNAME_LEN]; // If there is a better title than the filename it can be given here!
29 // Example: A mp3 plugin could read it from the Id tag...
30 // Leave it blank to tell CL-Amp to make a title from the filename!
31 unsigned long Flags;
32 long CurrTime, TotTime; // milliSeconds!
33 long BitRate, Frequency;
34 long BufferVolume; // Promille, Buffer is used by the http handler
35 bool Stereo;
36 bool BufferOn, PreBuffering; // Buffer is used by the http handler
37 bool SampleIsOnly8Bits;
38 short Fader;
39 float *Equalizer;
40 bool NewEqValues, dummy;
41 long SongId; // CL-Amp is setting a Song identification here.
42 // some special plugins may need it...
43 long Future[11];
44 };
45
46 #endif