home *** CD-ROM | disk | FTP | other *** search
/ CD-X 1 / cdx_01.iso / demodisc / basq / dualmodp / cdi.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-05-07  |  2.2 KB  |  64 lines

  1. // ************************************************************************
  2. // *
  3. // *    File        : CDI.H
  4. // *
  5. // *    Description : Channel Distributor header file
  6. // *
  7. // *    Copyright ( C) 1993 Otto Chrons
  8. // *
  9. // ************************************************************************
  10.  
  11. #ifndef __DEF_CDI
  12. #define __DEF_CDI
  13.  
  14. #ifndef __DSMIDEF_H
  15. #include "dsmidef.h"
  16. #endif
  17.  
  18. typedef struct {
  19.         void    *setsample,*playsample,*setvolume,*setfrequency,\
  20.                 *setlinearrate,*setposition,*setpanning,*setmastervolume,\
  21.                 *mutechannel,*unmutechannel,*stopchannel,*muteall,\
  22.                 *unmuteall,*poll,*getdelta,*download,*unload,*unloadall,\
  23.                 *getvoume,*getfrequency,*getposition,*getpan,*getsample,*setupch;
  24. } CDIDEVICE;
  25.  
  26. #ifdef __cplusplus
  27. extern "C" {
  28. #endif
  29.  
  30. int cdecl cdiInit(void);
  31. int cdecl cdiRegister( CDIDEVICE *cdi, long firstCh, long lastCh );
  32. void cdecl  cdiClose(void);
  33. void cdecl  cdiSetMasterVolume( ulong channel,ulong volume );
  34. int cdecl cdiSetInstrument( long channel, void *ins );
  35. int cdecl cdiPlayNote( long channel, ulong rate, ulong volume );
  36. int cdecl cdiStopNote( long channel );
  37. int cdecl cdiSetVolume( long channel, ulong volume );
  38. int cdecl cdiSetFrequency( long channel, ulong freq );
  39. int cdecl cdiSetLinear( long channel, ulong linearRate );
  40. int cdecl cdiSetPosition( long channel, ulong pos );
  41. int cdecl cdiSetPan( long channel, long pan );
  42. int cdecl cdiMute( long channel );
  43. int cdecl cdiUnmute( long channel );
  44. int cdecl cdiMuteAll( long channel );
  45. int cdecl cdiUnmuteAll( long channel );
  46. ulong cdecl cdiPoll( long channel, ulong time );
  47. ulong cdecl cdiGetDelta( long channel );
  48. int cdecl cdiDownloadSample( long channel, void *sample, void *sampletag, ulong len );
  49. int cdecl cdiUnloadSample( long channel, void *sample );
  50. int cdecl cdiUnloadAll( long channel );
  51. ulong cdecl cdiGetVolume( long channel );
  52. ulong cdecl cdiGetFrequency( long channel );
  53. ulong cdecl cdiGetPosition( long channel );
  54. int cdecl cdiGetPan( long channel );
  55. void * cdecl cdiGetInstrument( long channel );
  56. int cdecl cdiGetChannelStatus( long channel );
  57. int cdecl cdiSetupChannels( long channel, long count, ushort *volTable );
  58.  
  59. #ifdef __cplusplus
  60. }
  61. #endif
  62.  
  63. #endif
  64.