mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-22 14:32:58 +02:00
Move library tree where it belongs
This commit is contained in:
194
lib-src/libnyquist/nyquist/cmt/cext.h
Normal file
194
lib-src/libnyquist/nyquist/cmt/cext.h
Normal file
@@ -0,0 +1,194 @@
|
||||
/******************************************************************
|
||||
* modified JCD 27 Apr-88 for AMIGA
|
||||
* cext.h -- extensions to c to make it more portable
|
||||
* Copyright 1989 Carnegie Mellon University
|
||||
*
|
||||
*******************************************************************
|
||||
|
||||
cext must provide the following definitions:
|
||||
|
||||
true -- a constant
|
||||
false -- a boolean constant
|
||||
private -- defined as static, used to declare local functions
|
||||
public -- defined as empty string, used to declare exported functions
|
||||
boolean -- a new type
|
||||
byte -- unsigned 8-bit quantity
|
||||
ushort -- unsigned 16-bit quantity
|
||||
ulong -- unsigned 32-bit quantity
|
||||
Pointer -- pointer to char, a generic pointer
|
||||
ABS() -- absolute value of any type of number
|
||||
MAX() -- maximum of two numbers
|
||||
MIN() -- minimum of two numbers
|
||||
ROUND() -- round a double to long
|
||||
|
||||
NULL -- pointer to nothing, a constant
|
||||
EOS -- end of string, a constant '\0'
|
||||
MALLOC(x) -- allocates x bytes
|
||||
FREE(x) -- frees something from MALLOC
|
||||
AVAILMEM -- tells how much memory is available.
|
||||
(N.B.: no parens, no args.)
|
||||
EXIT(n) -- calls exit(n) after shutting down/deallocating resources
|
||||
|
||||
*****************************************************************************/
|
||||
|
||||
/* CHANGE LOG
|
||||
* --------------------------------------------------------------------
|
||||
* 28Apr03 dm many changes for new conditional compilation switches
|
||||
* 28Apr03 rbd removed macro redefinitions: min, max
|
||||
*/
|
||||
|
||||
#ifndef CEXT_H
|
||||
#ifndef SWITCHES
|
||||
#include "switches.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#if HAS_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
|
||||
#if HAS_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
|
||||
#if HAS_MALLOC_H
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
|
||||
#if NEED_ULONG
|
||||
typedef unsigned long ulong;
|
||||
#endif
|
||||
|
||||
#if NEED_USHORT
|
||||
typedef unsigned long ushort;
|
||||
#endif
|
||||
|
||||
#if NEED_BYTE
|
||||
typedef unsigned char byte;
|
||||
#endif
|
||||
|
||||
/* There's a name conflict between true/false as an enum type in
|
||||
* Apple #includes:Types.h on the Mac, and true/false as #defined below
|
||||
*/
|
||||
#ifndef TRUE
|
||||
#define TRUE 1
|
||||
#endif
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE 0
|
||||
#endif
|
||||
|
||||
#define private static
|
||||
#define public
|
||||
|
||||
#if NEED_DEFINE_MALLOC
|
||||
public void *malloc();
|
||||
#endif
|
||||
|
||||
typedef char *Pointer;
|
||||
|
||||
#ifdef UNIX_MACH
|
||||
typedef int boolean;
|
||||
#else
|
||||
/* hopefully, unsigned short will save sign extension instructions */
|
||||
typedef unsigned char boolean;
|
||||
#endif
|
||||
|
||||
#ifndef ABS
|
||||
#define ABS(a) (((a) > 0) ? (a) : -(a))
|
||||
#endif
|
||||
#ifndef MAX
|
||||
#define MAX(a, b) (((a) > (b)) ? (a) : (b))
|
||||
#endif
|
||||
#ifndef MIN
|
||||
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
|
||||
#endif
|
||||
|
||||
#define MAXULONG 0xffffffff
|
||||
|
||||
#ifndef NULL
|
||||
#define NULL 0L
|
||||
#endif
|
||||
|
||||
#ifndef EOS
|
||||
#define EOS '\0'
|
||||
#endif
|
||||
|
||||
#define SAFETYBUF 10 /* Safety buffer when allocating memory */
|
||||
#define BIGGEST_BLOCK 32765 /* Should find a happy medium for this */
|
||||
|
||||
#ifdef MACINTOSH /*DMH: gets AVAILMEM in record.c*/
|
||||
#include <stddef.h>
|
||||
#define MALLOC(x) malloc((size_t)(x)) /*DMH: size_t is ulong, for MAC*/
|
||||
#define FREE(x) free((char *)(x))
|
||||
#define AVAILMEM MyMaxMem(NULL)/*???*/
|
||||
#endif
|
||||
|
||||
#ifdef LATTICE322
|
||||
#define MALLOC malloc
|
||||
#define FREE free
|
||||
#define AVAILMEM MyMaxMem(NULL)
|
||||
|
||||
#else
|
||||
|
||||
#ifdef DOS /* was MICROSOFT */
|
||||
#define MALLOC malloc
|
||||
#define FREE free
|
||||
#define AVAILMEM MyMaxMem(NULL)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef UNIX
|
||||
#define MALLOC malloc
|
||||
#define FREE free
|
||||
#define AVAILMEM 10000000 /* since we have virtual memory, assume 10Mb */
|
||||
#endif
|
||||
|
||||
#ifdef AMIGA
|
||||
#define MALLOC malloc
|
||||
#define FREE free
|
||||
#define AVAILMEM 128000
|
||||
#endif
|
||||
|
||||
public ulong MyMaxMem(ushort *);
|
||||
|
||||
#ifndef MEM
|
||||
#include "mem.h"
|
||||
#endif
|
||||
|
||||
#ifndef CLEANUP
|
||||
#include "cleanup.h"
|
||||
#endif
|
||||
|
||||
#ifdef CMTSTUFF
|
||||
#define EXIT cmt_exit
|
||||
public void EXIT(int);
|
||||
/* don't allow anyone to call exit directly */
|
||||
#define exit(n) PLEASE_CALL_EXIT_NOT_exit
|
||||
#else
|
||||
#define EXIT(n) exit(n)
|
||||
#endif
|
||||
|
||||
#define _cext
|
||||
|
||||
#ifndef MALLOC
|
||||
MALLOC is not defined!
|
||||
#endif
|
||||
|
||||
#define ROUND(x) ((long) ((x) + 0.5))
|
||||
|
||||
/* for compatibility */
|
||||
#ifdef NEED_ROUND
|
||||
#define round ROUND
|
||||
#endif
|
||||
|
||||
#ifndef min
|
||||
#define min MIN
|
||||
#define max MAX
|
||||
#endif
|
||||
|
||||
#define CEXT_H
|
||||
#endif
|
Reference in New Issue
Block a user