home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright (C) 1994, Silicon Graphics, Inc.
- * All Rights Reserved.
- *
- * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
- * the contents of this file may not be disclosed to third parties, copied or
- * duplicated in any form, in whole or in part, without the prior written
- * permission of Silicon Graphics, Inc.
- *
- * RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
- * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
- * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
- * rights reserved under the Copyright Laws of the United States.
- */
- #ifndef RECORDCLASS_H
- #define RECORDCLASS_H
-
- #include <audio.h>
- #include <audiofile.h>
-
- class RecordClass {
-
- private:
- long frames_per_sec;
- long bits_per_samp;
- long samps_per_frame;
- long time_limit_specified;
- double time_limit;
- long compression;
- long filefmt;
-
- void set_defaults();
- void record_audio(ALport, AFfilehandle);
- static void go(void *);
-
- char *filename; /* input file name */
- char *myname;
- int fd; /* input file descriptor */
- short verbose; /* global flag */
- short quiet; /* global flag */
- short fork;
- short cilmi; /* flag set when process ready to be killed */
- int audio_pid;
- short caught_sigint;
- int beginRecording(); /* start recording without forking a separate
- process */
- short isLive;
-
- public:
- RecordClass(char *, char *);
- ~RecordClass();
- void setFrames(long);
- void setBits(long);
- void setSamps(long);
- void setTimeLimit(float);
- void setCompression(char *);
- void setFormat(char *);
- void setFilename(char *);
- void setVerbose(short);
- void setQuiet(short);
- int start(); // record with forking off another process
- void stop(); // kill other process
- short getIsLive();
-
- };
-
- #endif
-