ftp.nice.ch/pub/next/developer/hardware/dsp/RecordApp.s.tar.gz#/RecordApp/DSPRecorder.h

This is DSPRecorder.h in view mode; [Download] [Up]

#import <sound/sounddriver.h>
#import <sound/soundstruct.h>
#import "Recorder.h"

/* Tag for DMA messages coming from the DSP */
#define READ_TAG	1

#define HIGH_WATER	((512+256)*1024)
#define LOW_WATER	(512 * 1024)
#define BYTES_PER_16BIT	2
#define REGION_SIZE	HIGH_WATER
#define READ_BUF_SIZE	(vm_page_size / BYTES_PER_16BIT)

@interface DSPRecorder:Recorder
{
  int bytesEnqueued;		/* # of samples allocated for DSP buffers */
  snddriver_handlers_t msgHandlers;
  SNDSoundStruct *dspProgram;	/* DSP program to load and run */
  port_t devicePort;
  port_t ownerPort;
  port_t commandPort;
  port_t streamPort;
  port_t replyPort;
}

+ new;
/*
 * Factory method to instantiate a new recorder object.
 */

/***
 ***
 *** Methods inherited from the Recorder object
 ***
 ***/

- prepare;
/*
 * Prepare to record, state => REC_PAUSED
 */

- run;
/*
 * Start recording, state => REC_RUNNING
 */

- pause;
/*
 * Pause the recording, state => REC_PAUSED
 */

- stop;
/*
 * Stop recording, state => REC_STOPPED
 */

/***
 ***
 *** Internal methods 
 ***
 ***/

- setDspProgram :(SNDSoundStruct *)dsp_program;
- (SNDSoundStruct *)dspProgram;
- (snddriver_handlers_t *)msgHandlers;
- recordedData :(int)tag :(char *)data :(int)nbytes;
- updateStream;

@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.