home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2J (Developer) / os42jdev.iso / NextDeveloper / Examples / DriverKit / SoundBlaster8 / SoundBlaster8_reloc.tproj / SoundBlaster8.h < prev    next >
Text File  |  1996-03-27  |  2KB  |  65 lines

  1. /*
  2.  * Copyright (c) 1994-1996 NeXT Software, Inc.  All rights reserved. 
  3.  *
  4.  * HISTORY
  5.  * 4-Mar-94    Rakesh Dubey at NeXT
  6.  *      Created. 
  7.  */
  8.  
  9. #import <driverkit/IOAudio.h>
  10. #import <driverkit/i386/ioPorts.h>
  11.  
  12. @interface SoundBlaster8 : IOAudio
  13. {
  14. @private
  15.     unsigned int currentDMADirection;
  16.     BOOL interruptTimedOut;
  17.     unsigned int dmaDescriptorSize;      // DMA descriptor size for interrupts
  18.     BOOL isValidRequest;        // Can we do I/O of type requested?
  19. }
  20.  
  21. + (BOOL)probe: deviceDescription;
  22. - (BOOL)reset;
  23. - (void) initializeHardware;
  24.  
  25. - (BOOL) isValidRequest: (BOOL)isRead;
  26.  
  27. - (BOOL) startDMAForChannel: (unsigned int) localChannel
  28.         read: (BOOL) isRead
  29.         buffer: (IOEISADMABuffer) buffer
  30.         bufferSizeForInterrupts: (unsigned int) division;
  31.  
  32. - (void) stopDMAForChannel: (unsigned int) localChannel read: (BOOL) isRead;
  33.  
  34. - (void) interruptOccurredForInput: (BOOL *) serviceInput  
  35.                          forOutput: (BOOL *) serviceOutput;
  36.  
  37. - (void)updateSampleRate;
  38.             
  39. - (void) setBufferCount:(int)count;
  40.  
  41.  
  42. - (IOReturn)enableAllInterrupts;
  43. - (void)disableAllInterrupts;
  44.  
  45. - (BOOL)acceptsContinuousSamplingRates;
  46.  
  47. - (void)getSamplingRatesLow:(int *)lowRate
  48.                                          high:(int *)highRate;
  49.  
  50. - (void)getSamplingRates:(int *)rates
  51.                                 count:(unsigned int *)numRates;
  52.  
  53. - (void)getDataEncodings: (NXSoundParameterTag *)encodings
  54.                                 count:(unsigned int *)numEncodings;
  55.  
  56. - (unsigned int)channelCountLimit;
  57.  
  58. - (void) updateInputGainLeft;
  59. - (void) updateInputGainRight;
  60. - (void) updateOutputMute;
  61. - (void) updateOutputAttenuationLeft;
  62. - (void) updateOutputAttenuationRight;
  63.  
  64. @end
  65.