libcm is a C development framework with an emphasis on audio signal processing applications.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

cmDspCtx.h 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. //| Copyright: (C) 2009-2020 Kevin Larke <contact AT larke DOT org>
  2. //| License: GNU GPL version 3.0 or above. See the accompanying LICENSE file.
  3. #ifndef cmDspCtx_h
  4. #define cmDspCtx_h
  5. #ifdef __cplusplus
  6. extern "C" {
  7. #endif
  8. //( { file_desc:"Dataflow global context interface." kw:[snap] }
  9. typedef cmHandle_t cmDspSysH_t;
  10. typedef cmHandle_t cmDspStoreH_t;
  11. struct cmAudioSysCtx_str;
  12. struct cmDspGlobalVar_str;
  13. // DSP system context passed to many DSP instance functions
  14. typedef struct
  15. {
  16. cmDspSysH_t dspH;
  17. cmRpt_t* rpt;
  18. cmCtx_t* cmCtx; // global pgm context
  19. struct cmCtx_str* cmProcCtx; // context used by cmProc objects
  20. struct cmAudioSysCtx_str* ctx; // audio sub-system context this DSP program is executing within
  21. cmLHeapH_t lhH;
  22. cmJsonH_t jsH;
  23. cmSymTblH_t stH;
  24. cmDspStoreH_t dsH;
  25. cmJsonH_t rsrcJsH;
  26. unsigned cycleCnt; // count of DSP execution cycles (multiply by cmDspSamplesPerCycle() to get time since start of DSP system in samples)
  27. unsigned _disableSymId;
  28. unsigned _enableSymId;
  29. unsigned execDurUsecs;
  30. } cmDspCtx_t;
  31. //)
  32. #ifdef __cplusplus
  33. }
  34. #endif
  35. #endif