Collection of tools useful for audio production
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.

102 lines
3.0KB

  1. /*
  2. * Carla Backend
  3. * Copyright (C) 2011-2012 Filipe Coelho <falktx@gmail.com>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License as published by
  7. * the Free Software Foundation; either version 2 of the License, or
  8. * any later version.
  9. *
  10. * This program is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * For a full copy of the GNU General Public License see the COPYING file
  16. */
  17. #ifndef CARLA_SHARED_H
  18. #define CARLA_SHARED_H
  19. #include "carla_backend.h"
  20. CARLA_BACKEND_START_NAMESPACE
  21. #if 0
  22. } /* adjust editor indent */
  23. #endif
  24. /*!
  25. * @defgroup CarlaBackendShared Carla Backend shared code
  26. * @{
  27. */
  28. const char* BinaryType2str(const BinaryType type);
  29. const char* PluginType2str(const PluginType type);
  30. const char* PluginCategory2str(const PluginCategory category);
  31. const char* ParameterType2str(const ParameterType type);
  32. const char* InternalParametersIndex2str(const InternalParametersIndex index);
  33. const char* CustomDataType2str(const CustomDataType type);
  34. const char* GuiType2str(const GuiType type);
  35. const char* OptionsType2str(const OptionsType type);
  36. const char* CallbackType2str(const CallbackType type);
  37. const char* ProcessModeType2str(const ProcessModeType type);
  38. CustomDataType getCustomDataStringType(const char* const stype);
  39. const char* getCustomDataTypeString(const CustomDataType type);
  40. const char* getBinaryBidgePath(const BinaryType type);
  41. void* getPointer(const quintptr addr);
  42. PluginCategory getPluginCategoryFromName(const char* const name);
  43. const char* getLastError();
  44. void setLastError(const char* const error);
  45. #ifndef BUILD_BRIDGE
  46. void setOption(const OptionsType option, const int value, const char* const valueStr);
  47. void resetOptions();
  48. // Global options
  49. struct carla_options_t {
  50. ProcessModeType process_mode;
  51. uint max_parameters;
  52. bool prefer_ui_bridges;
  53. bool force_stereo;
  54. bool proccess_hp;
  55. int osc_gui_timeout;
  56. bool use_dssi_chunks;
  57. const char* bridge_unix32;
  58. const char* bridge_unix64;
  59. const char* bridge_win32;
  60. const char* bridge_win64;
  61. const char* bridge_lv2gtk2;
  62. const char* bridge_lv2qt4;
  63. const char* bridge_lv2x11;
  64. const char* bridge_vstx11;
  65. carla_options_t()
  66. : process_mode(PROCESS_MODE_MULTIPLE_CLIENTS),
  67. max_parameters(MAX_PARAMETERS),
  68. prefer_ui_bridges(true),
  69. force_stereo(false),
  70. proccess_hp(false),
  71. osc_gui_timeout(4000/100),
  72. use_dssi_chunks(false),
  73. bridge_unix32(nullptr),
  74. bridge_unix64(nullptr),
  75. bridge_win32(nullptr),
  76. bridge_win64(nullptr),
  77. bridge_lv2gtk2(nullptr),
  78. bridge_lv2qt4(nullptr),
  79. bridge_lv2x11(nullptr),
  80. bridge_vstx11(nullptr) {}
  81. };
  82. extern carla_options_t carlaOptions;
  83. #endif
  84. /**@}*/
  85. CARLA_BACKEND_END_NAMESPACE
  86. #endif // CARLA_SHARED_H