Data Structures | Defines | Typedefs | Enumerations

remix_types.h File Reference

Base types and public interfaces to libremix. More...

#include <limits.h>
#include "ctxdata.h"

Go to the source code of this file.

Data Structures

union  _RemixTime

Defines

#define RemixNone   NULL
#define REMIX_COUNT_MAX   (LONG_MAX - 1L)
#define REMIX_COUNT_MIN   LONG_MIN
#define REMIX_COUNT_INFINITE   REMIX_COUNT_MAX
#define REMIX_ERROR_OK   0
#define REMIX_ERROR_INVALID   1
#define REMIX_ERROR_NOENTITY   2
#define REMIX_ERROR_EXISTS   3
#define REMIX_ERROR_SILENCE   4
#define REMIX_ERROR_NOOP   5
#define REMIX_ERROR_SYSTEM   6
#define REMIX_RANGE_LOWER_BOUND_VALID   (1<<0)
#define REMIX_RANGE_UPPER_BOUND_VALID   (1<<1)
#define REMIX_RANGE_STEP_VALID   (1<<2)
#define REMIX_RANGE_ALL_VALID
#define REMIX_HINT_DEFAULT   (0)
#define REMIX_HINT_LOG   (1<<0)
#define REMIX_HINT_TIME   (1<<1)
#define REMIX_HINT_FILENAME   (1<<2)
#define REMIX_CONSTRAINT_EMPTY   ((RemixConstraint){NULL})
#define REMIX_SAMPLES(x)   ((RemixTime){(RemixCount)(x)})
#define REMIX_SECONDS(x)   ((RemixTime){(float)(x)})
#define REMIX_BEAT24S(x)   ((RemixTime){(int)(x)})

Typedefs

typedef int RemixError
typedef float RemixPCM
typedef long RemixCount
typedef void RemixOpaque
typedef RemixOpaque RemixBase
typedef CDScalar RemixParameter
typedef int RemixFlags
typedef double RemixSamplerate
typedef double RemixTempo
typedef union _RemixTime RemixTime
typedef RemixOpaque RemixEnv
typedef RemixOpaque RemixPoint
typedef RemixOpaque RemixEnvelope
typedef RemixOpaque RemixChunk
typedef RemixOpaque RemixChannel
typedef RemixOpaque RemixStream
typedef RemixOpaque RemixDeck
typedef RemixOpaque RemixTrack
typedef RemixOpaque RemixLayer
typedef RemixOpaque RemixSound
typedef RemixOpaque RemixMetaAuthor
typedef RemixOpaque RemixMetaText
typedef RemixOpaque RemixPlugin
typedef RemixOpaque RemixSquareTone
typedef RemixOpaque RemixMonitor

Enumerations

enum  RemixChannelName {
  REMIX_CHANNEL_LEFT, REMIX_CHANNEL_RIGHT, REMIX_CHANNEL_CENTRE, REMIX_CHANNEL_REAR,
  REMIX_CHANNEL_REAR_LEFT, REMIX_CHANNEL_REAR_RIGHT, REMIX_CHANNEL_REAR_CENTRE, REMIX_CHANNEL_LFE
}
enum  RemixTimeType { REMIX_TIME_INVALID, REMIX_TIME_SAMPLES, REMIX_TIME_SECONDS, REMIX_TIME_BEAT24S }
enum  RemixEnvelopeType { REMIX_ENVELOPE_LINEAR, REMIX_ENVELOPE_SPLINE }
enum  RemixParameterType {
  REMIX_TYPE_BOOL = 0, REMIX_TYPE_INT, REMIX_TYPE_FLOAT, REMIX_TYPE_STRING,
  REMIX_TYPE_BASE
}
enum  RemixConstraintType { REMIX_CONSTRAINT_TYPE_NONE = 0, REMIX_CONSTRAINT_TYPE_LIST, REMIX_CONSTRAINT_TYPE_RANGE }

Detailed Description

Base types and public interfaces to libremix.


Define Documentation

#define REMIX_BEAT24S (   x  )     ((RemixTime){(int)(x)})
#define REMIX_CONSTRAINT_EMPTY   ((RemixConstraint){NULL})
#define REMIX_COUNT_INFINITE   REMIX_COUNT_MAX
#define REMIX_COUNT_MAX   (LONG_MAX - 1L)
#define REMIX_COUNT_MIN   LONG_MIN
#define REMIX_ERROR_EXISTS   3
#define REMIX_ERROR_INVALID   1
#define REMIX_ERROR_NOENTITY   2
#define REMIX_ERROR_NOOP   5
#define REMIX_ERROR_OK   0
#define REMIX_ERROR_SILENCE   4
#define REMIX_ERROR_SYSTEM   6
#define REMIX_HINT_DEFAULT   (0)
#define REMIX_HINT_FILENAME   (1<<2)
#define REMIX_HINT_LOG   (1<<0)
#define REMIX_HINT_TIME   (1<<1)
#define REMIX_RANGE_ALL_VALID
Value:
#define REMIX_RANGE_LOWER_BOUND_VALID   (1<<0)
#define REMIX_RANGE_STEP_VALID   (1<<2)
#define REMIX_RANGE_UPPER_BOUND_VALID   (1<<1)
#define REMIX_SAMPLES (   x  )     ((RemixTime){(RemixCount)(x)})
#define REMIX_SECONDS (   x  )     ((RemixTime){(float)(x)})
#define RemixNone   NULL

Typedef Documentation

typedef long RemixCount
typedef int RemixError
typedef int RemixFlags
typedef void RemixOpaque
typedef CDScalar RemixParameter
typedef float RemixPCM
typedef double RemixSamplerate
typedef double RemixTempo
typedef union _RemixTime RemixTime

Enumeration Type Documentation

Enumerator:
REMIX_CHANNEL_LEFT 
REMIX_CHANNEL_RIGHT 
REMIX_CHANNEL_CENTRE 
REMIX_CHANNEL_REAR 
REMIX_CHANNEL_REAR_LEFT 
REMIX_CHANNEL_REAR_RIGHT 
REMIX_CHANNEL_REAR_CENTRE 
REMIX_CHANNEL_LFE 
Enumerator:
REMIX_CONSTRAINT_TYPE_NONE 
REMIX_CONSTRAINT_TYPE_LIST 
REMIX_CONSTRAINT_TYPE_RANGE 
Enumerator:
REMIX_ENVELOPE_LINEAR 
REMIX_ENVELOPE_SPLINE 
Enumerator:
REMIX_TYPE_BOOL 
REMIX_TYPE_INT 
REMIX_TYPE_FLOAT 
REMIX_TYPE_STRING 
REMIX_TYPE_BASE 
Enumerator:
REMIX_TIME_INVALID 
REMIX_TIME_SAMPLES 
REMIX_TIME_SECONDS 
REMIX_TIME_BEAT24S