2012-10-30 03:52:39 +00:00
|
|
|
#ifndef cmDspCtx_h
|
|
|
|
#define cmDspCtx_h
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
typedef cmHandle_t cmDspSysH_t;
|
2013-03-02 01:18:02 +00:00
|
|
|
typedef cmHandle_t cmDspStoreH_t;
|
|
|
|
|
2012-10-30 03:52:39 +00:00
|
|
|
|
|
|
|
struct cmAudioSysCtx_str;
|
2013-03-02 01:18:02 +00:00
|
|
|
struct cmDspGlobalVar_str;
|
2012-10-30 03:52:39 +00:00
|
|
|
|
|
|
|
// DSP system context passed to many DSP instance functions
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
cmDspSysH_t dspH;
|
|
|
|
cmRpt_t* rpt;
|
|
|
|
cmCtx_t* cmCtx; // global pgm context
|
|
|
|
struct cmCtx_str* cmProcCtx; // context used by cmProc objects
|
|
|
|
struct cmAudioSysCtx_str* ctx; // audio sub-system context this DSP program is executing within
|
|
|
|
cmLHeapH_t lhH;
|
|
|
|
cmJsonH_t jsH;
|
|
|
|
cmSymTblH_t stH;
|
2013-03-02 01:18:02 +00:00
|
|
|
cmDspStoreH_t dsH;
|
2012-10-30 03:52:39 +00:00
|
|
|
cmJsonH_t rsrcJsH;
|
|
|
|
unsigned cycleCnt; // count of DSP execution cycles (multiply by cmDspSamplesPerCycle() to get time since start of DSP system in samples)
|
|
|
|
|
2013-03-02 01:18:02 +00:00
|
|
|
|
2012-10-30 03:52:39 +00:00
|
|
|
unsigned _disableSymId;
|
|
|
|
unsigned _enableSymId;
|
|
|
|
|
|
|
|
unsigned execDurUsecs;
|
|
|
|
} cmDspCtx_t;
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|