60 рядки
1.4 KiB
C
60 рядки
1.4 KiB
C
#ifndef cmAudDsp_h
|
|
#define cmAudDsp_h
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
// This API supports a serialized interface to an internal instance of
|
|
// cmAudioSys and cmDspSys.
|
|
|
|
enum
|
|
{
|
|
kOkAdRC = cmOkRC,
|
|
kAudioPortFailAdRC,
|
|
kAudioSysFailAdRC,
|
|
kMidiSysFailAdRC,
|
|
kDspSysFailAdRC,
|
|
kFileSysFailAdRC,
|
|
kJsonFailAdRC,
|
|
kSendMsgFailAdRC,
|
|
kInvalidCfgIdxAdRC,
|
|
kNoPgmLoadedAdRC,
|
|
kInvalidSubSysIdxAdRC,
|
|
kUnknownMsgTypeAdRC,
|
|
kAggDevSysFailAdRC,
|
|
kAggDevCreateFailAdRC,
|
|
kNrtDevSysFailAdRC,
|
|
kAfpDevSysFailAdRC,
|
|
kNetSysFailAdRC
|
|
};
|
|
|
|
|
|
typedef cmRC_t cmAdRC_t;
|
|
typedef cmHandle_t cmAdH_t;
|
|
|
|
extern cmAdH_t cmAdNullHandle;
|
|
|
|
// Create a audio dsp engine and send device and program information to the
|
|
// host application.
|
|
// cbPtr provides a function used by cmAudDsp to send messages to the client.
|
|
cmAdRC_t cmAudDspAlloc( cmCtx_t* ctx, cmAdH_t* hp, cmMsgSendFuncPtr_t cbPtr, void* cbDataPtr );
|
|
cmAdRC_t cmAudDspFree( cmAdH_t* hp );
|
|
|
|
// Send the setup to the UI (device list,system cfg list, DSP programs)
|
|
cmAdRC_t cmAudDspSendSetup( cmAdH_t h );
|
|
|
|
bool cmAudDspIsValid( cmAdH_t h );
|
|
|
|
// This function provides the primary interface for communication from the
|
|
// client program to the aud_dsp system.
|
|
cmAdRC_t cmAudDspReceiveClientMsg( cmAdH_t h, unsigned msgBytecnt, const void* msg );
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
|
|
#endif
|