1 #ifndef CLIB_AHI_PROTOS_H
    2 #define CLIB_AHI_PROTOS_H
    3 
    4 /*
    5 **      $VER: ahi_protos.h 4.1 (2.4.97)
    6 **      :ts=8 (TAB SIZE: 8)
    7 **
    8 **      C prototypes. For use with 32 bit integers only.
    9 **
   10 **      (C) Copyright 1994-1997 Martin Blom
   11 **      All Rights Reserved.
   12 **
   13 */
   14 
   15 #ifndef EXEC_TYPES_H
   16 #include <exec/types.h>
   17 #endif
   18 #ifndef  UTILITY_TAGITEM_H
   19 #include <utility/tagitem.h>
   20 #endif
   21 #ifndef  DEVICES_AHI_H
   22 #include <devices/ahi.h>
   23 #endif
   24 
   25 #ifdef __cplusplus
   26 extern "C" {
   27 #endif /* __cplusplus */
   28 
   29 struct AHIAudioCtrl *AHI_AllocAudioA( struct TagItem * );
   30 struct AHIAudioCtrl *AHI_AllocAudio( Tag, ... );
   31 void AHI_FreeAudio( struct AHIAudioCtrl * );
   32 void AHI_KillAudio( void );
   33 ULONG AHI_ControlAudioA( struct AHIAudioCtrl *, struct TagItem * );
   34 ULONG AHI_ControlAudio( struct AHIAudioCtrl *, Tag, ... );
   35 void AHI_SetVol( UWORD, Fixed, sposition, struct AHIAudioCtrl *, ULONG );
   36 void AHI_SetFreq( UWORD, ULONG, struct AHIAudioCtrl *, ULONG );
   37 void AHI_SetSound( UWORD, UWORD, ULONG, LONG, struct AHIAudioCtrl *, ULONG );
   38 ULONG AHI_SetEffect( APTR, struct AHIAudioCtrl * );
   39 ULONG AHI_LoadSound( UWORD, ULONG, APTR, struct AHIAudioCtrl * );
   40 void AHI_UnloadSound( UWORD, struct AHIAudioCtrl * );
   41 ULONG AHI_NextAudioID( ULONG );
   42 BOOL AHI_GetAudioAttrsA( ULONG, struct AHIAudioCtrl *, struct TagItem * );
   43 BOOL AHI_GetAudioAttrs( ULONG, struct AHIAudioCtrl *, Tag, ... );
   44 ULONG AHI_BestAudioIDA( struct TagItem * );
   45 ULONG AHI_BestAudioID( Tag, ... );
   46 struct AHIAudioModeRequester *AHI_AllocAudioRequestA( struct TagItem * );
   47 struct AHIAudioModeRequester *AHI_AllocAudioRequest( Tag, ... );
   48 BOOL AHI_AudioRequestA( struct AHIAudioModeRequester *, struct TagItem * );
   49 BOOL AHI_AudioRequest( struct AHIAudioModeRequester *, Tag, ... );
   50 void AHI_FreeAudioRequest( struct AHIAudioModeRequester * );
   51 /* --- New for V4 --- */
   52 void AHI_PlayA( struct AHIAudioCtrl *, struct TagItem * );
   53 void AHI_Play( struct AHIAudioCtrl *, Tag, ... );
   54 ULONG AHI_SampleFrameSize( ULONG );
   55 ULONG AHI_AddAudioMode(struct TagItem * );
   56 ULONG AHI_RemoveAudioMode( ULONG );
   57 ULONG AHI_LoadModeFile( STRPTR );
   58 
   59 #ifdef __cplusplus
   60 }
   61 #endif /* __cplusplus */
   62 
   63 #endif /* CLIB_AHI_PROTOS_H */