1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
/*
convolve.h:
Copyright (C) 1996 Greg Sullivan
This file is part of Csound.
The Csound Library is free software; you can redistribute it
and/or modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
Csound is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with Csound; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA
*/
#ifndef _CONVOLVE_H_
#define _CONVOLVE_H_
#define CONVOLVE_VERSION_STRING "CONVOLVE VERSION: V1.1\n"
#ifndef NULL
#define NULL 0L
#endif /* !NULL */
#define CVMAGIC 666 /* Evil, eh? */
#define CVDFLTBYTS 4
typedef struct cvstruct
{
long magic; /* magic number to identify */
long headBsize; /* byte offset from start to data */
long dataBsize; /* total number of bytes of data */
long dataFormat; /* (int) format specifier */
MYFLT samplingRate; /* of original sample */
long src_chnls; /* no. of channels in source */
long channel; /* requested channel(s) */
long Hlen; /* length of impulse reponse */
long Format; /* (int) how words are org'd in frm */
char info[CVDFLTBYTS]; /* extendable byte area */
} CVSTRUCT;
/* Error codes returned by CONVOLVE file functions */
#define CVE_OK 0 /* no error*/
#define CVE_NOPEN -1 /* couldn't open file */
#define CVE_NCV -2 /* not a CONVOLVE file */
#define CVE_MALLOC -3 /* couldn't allocate memory */
#define CVE_RDERR -4 /* read error */
#define CVE_WRERR -5 /* write error */
#define CV_UNK_LEN -1L /* flag if dataBsize unknown in hdr */
/* values for dataFormat field */
#define CVMYFLT (4+32) /* 32 bit float data */
/* values for frameFormat field */
#define CVRECT 1 /* real, imag pairs */
/********************************/
/* exported function prototypes */
/********************************/
#endif /* !_CONVOLVE_H_ */
|