libcm is a C development framework with an emphasis on audio signal processing applications.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

cmDspPgmPPMain.h 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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 cmDspPgmPPMain_h
  4. #define cmDspPgmPPMain_h
  5. //( { file_desc:"'fluxo' implementation header." kw:[fluxo] }
  6. cmDspInst_t* _cmDspSys_PresetMgmt( cmDspSysH_t h, const cmChar_t* preLbl, unsigned presetGroupSymId );
  7. typedef struct
  8. {
  9. cmErr_t* err;
  10. unsigned nsCnt; // count of noise shapers (4)
  11. cmDspInst_t* chCfg;
  12. cmDspInst_t* print;
  13. unsigned iChCnt;
  14. unsigned oChCnt;
  15. } _cmDspPP_Ctx_t;
  16. typedef struct
  17. {
  18. const cmChar_t* title;
  19. const cmChar_t* preLbl;
  20. } _cmDspPP_CircDesc_t;
  21. typedef struct
  22. {
  23. // These fields are provided by _cmDspPP_CircuitSwitchAlloc()
  24. // public:
  25. unsigned circuitCnt; // count of circuits (cn)
  26. cmDspInst_t** omix; // omix[ circuitCnt] one audio mixer per output channel
  27. } cmDspPP_CircuitSwitch_t;
  28. unsigned _cmDspPP_CircuitDescCount();
  29. const _cmDspPP_CircDesc_t* _cmDspPP_CircuitDesc( unsigned idx );
  30. cmDspRC_t _cmDspPP_CircuitSwitchAlloc( cmDspSysH_t h, _cmDspPP_Ctx_t* ctx, cmDspPP_CircuitSwitch_t* p, cmDspInst_t* reset, cmDspInst_t** csel, cmDspInst_t** ain, cmDspInst_t** ef );
  31. cmDspRC_t _cmDspPP_CircuitSwitchFree( cmDspSysH_t h, cmDspPP_CircuitSwitch_t* p);
  32. //)
  33. #ifdef __cplusplus
  34. extern "C" {
  35. #endif
  36. #ifdef __cplusplus
  37. }
  38. #endif
  39. #endif