/* front-end include file for Amiga audio samples created by Karl's
 * IFF 8SVX to C source converter.  19 June 87
 */

#ifndef SAMPLE_H

#define SAMPLE_H

#ifndef I8SVX_H
#include "iff/8svx.h"
#endif

#define MAXOCTAVES 6

typedef struct sample_struct
{
	struct Node node;
	Voice8Header sampleheader;
	struct sample_struct *nextsample;
	char *sampledata;
	LONG samplebytes;
	short octaveshift;
	short high_c;
	short low_c;
	short octave_of_periods[12];
	struct OctaveStruct {
		char *OctaveShotSample;
		LONG OctaveShotLength;
		char *OctaveLoopSample;
		LONG OctaveLoopLength;
	} Octave[MAXOCTAVES];
#ifndef NOAUDIT
	short magic;
#endif
} Sample;



#define SAMPLE_MAGIC 17385

#ifndef NOAUDIT
#define ASSERT_SAMPLE_MAGIC(x) assert(x->magic == SAMPLE_MAGIC);
#else
#define ASSERT_SAMPLE_MAGIC(x)
#endif

#endif

/* end of sample.h */
