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,
26 #include <exec/lists.h>
27 #include <exec/nodes.h>
35 FindNode ( struct List
*list
,
39 Fixed2Shift( Fixed f
);
42 ReqA( const char* text
, APTR args
);
44 #define Req(a0, args...) \
45 ({IPTR _args[] = { args }; ReqA((a0), (APTR)_args);})
48 SprintfA( char *dst
, const char *fmt
, IPTR
* args
);
50 #define Sprintf(a0, a1, args...) \
51 ({IPTR _args[] = { args }; SprintfA((a0), (a1), (IPTR*)_args);})
56 AHIInitSemaphore( struct SignalSemaphore
* ss
);
59 AHIObtainSemaphore( struct SignalSemaphore
* ss
);
62 AHIReleaseSemaphore( struct SignalSemaphore
* ss
);
65 AHIAttemptSemaphore( struct SignalSemaphore
* ss
);
70 AHIAllocVec( ULONG byteSize
,
74 AHIFreeVec( APTR memoryBlock
);
77 AHILoadObject( const char* objname
);
80 AHIUnloadObject( void* obj
);
83 AHIGetELFSymbol( const char* name
,
87 #if !defined( WORDS_BIGENDIAN )
88 void EndianSwap( size_t size
, void* data
);
90 # define EndianSwap(s, x)
94 PreTimerFunc( struct Hook
* hook
,
95 struct AHIPrivAudioCtrl
* audioctrl
,
99 PostTimerFunc( struct Hook
* hook
,
100 struct AHIPrivAudioCtrl
* audioctrl
,
104 PreTimer( struct AHIPrivAudioCtrl
* audioctrl
);
107 PostTimer( struct AHIPrivAudioCtrl
* audioctrl
);
109 #endif /* ahi_misc_h */