store the pre-alphacomposit hook and allow it to be queried.
[AROS.git] / workbench / devs / AHI / Device / debug.h
blob89ebed62ccc71af1116c4e8da1cdfc8e15472c21
1 /*
2 AHI - Hardware independent audio subsystem
3 Copyright (C) 1996-2005 Martin Blom <martin@blom.org>
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details.
15 You should have received a copy of the GNU Library General Public
16 License along with this library; if not, write to the
17 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Cambridge,
18 MA 02139, USA.
21 #ifndef ahi_debug_h
22 #define ahi_debug_h
24 #include <devices/ahi.h>
25 #include <proto/exec.h>
28 void
29 KPrintFArgs( UBYTE* fmt,
30 ULONG* args );
32 #ifndef __AMIGAOS4__
33 #define KPrintF( fmt, ... ) \
34 ({ \
35 ULONG _args[] = { __VA_ARGS__ }; \
36 KPrintFArgs( (fmt), _args ); \
38 #else
39 #define KPrintF DebugPrintF
40 #endif
42 void
43 Debug_AllocAudioA( struct TagItem *tags );
45 void
46 Debug_FreeAudio( struct AHIPrivAudioCtrl *audioctrl );
48 void
49 Debug_KillAudio( void );
51 void
52 Debug_ControlAudioA( struct AHIPrivAudioCtrl *audioctrl, struct TagItem *tags );
55 void
56 Debug_SetVol( UWORD chan, Fixed vol, sposition pan, struct AHIPrivAudioCtrl *audioctrl, ULONG flags);
58 void
59 Debug_SetFreq( UWORD chan, ULONG freq, struct AHIPrivAudioCtrl *audioctrl, ULONG flags);
61 void
62 Debug_SetSound( UWORD chan, UWORD sound, ULONG offset, LONG length, struct AHIPrivAudioCtrl *audioctrl, ULONG flags);
64 void
65 Debug_SetEffect( ULONG *effect, struct AHIPrivAudioCtrl *audioctrl );
67 void
68 Debug_LoadSound( UWORD sound, ULONG type, APTR info, struct AHIPrivAudioCtrl *audioctrl );
70 void
71 Debug_UnloadSound( UWORD sound, struct AHIPrivAudioCtrl *audioctrl );
73 void
74 Debug_NextAudioID( ULONG id);
76 void
77 Debug_GetAudioAttrsA( ULONG id, struct AHIPrivAudioCtrl *audioctrl, struct TagItem *tags );
79 void
80 Debug_BestAudioIDA( struct TagItem *tags );
82 void
83 Debug_AllocAudioRequestA( struct TagItem *tags );
85 void
86 Debug_AudioRequestA( struct AHIAudioModeRequester *req, struct TagItem *tags );
88 void
89 Debug_FreeAudioRequest( struct AHIAudioModeRequester *req );
91 void
92 Debug_PlayA( struct AHIPrivAudioCtrl *audioctrl, struct TagItem *tags );
94 void
95 Debug_SampleFrameSize( ULONG sampletype);
97 void
98 Debug_AddAudioMode(struct TagItem *tags );
100 void
101 Debug_RemoveAudioMode( ULONG id);
103 void
104 Debug_LoadModeFile( STRPTR name);
106 #endif /* ahi_debug_h */