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.

103 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. */
  29. const char* BinaryType2str(const BinaryType type);
  30. const char* PluginType2str(const PluginType type);
  31. const char* PluginCategory2str(const PluginCategory category);
  32. const char* ParameterType2str(const ParameterType type);
  33. const char* InternalParametersIndex2str(const InternalParametersIndex index);
  34. const char* CustomDataType2str(const CustomDataType type);
  35. const char* GuiType2str(const GuiType type);
  36. const char* OptionsType2str(const OptionsType type);
  37. const char* CallbackType2str(const CallbackType type);
  38. const char* ProcessModeType2str(const ProcessModeType type);
  39. CustomDataType getCustomDataStringType(const char* const stype);
  40. const char* getCustomDataTypeString(const CustomDataType type);
  41. const char* getBinaryBidgePath(const BinaryType type);
  42. void* getPointer(const quintptr addr);
  43. PluginCategory getPluginCategoryFromName(const char* const name);
  44. const char* getLastError();
  45. void setLastError(const char* const error);
  46. #ifndef BUILD_BRIDGE
  47. void setOption(const OptionsType option, const int value, const char* const valueStr);
  48. void resetOptions();
  49. // Global options
  50. struct carla_options_t {
  51. ProcessModeType process_mode;
  52. uint max_parameters;
  53. bool prefer_ui_bridges;
  54. bool force_stereo;
  55. bool proccess_hp;
  56. int osc_gui_timeout;
  57. bool use_dssi_chunks;
  58. const char* bridge_unix32;
  59. const char* bridge_unix64;
  60. const char* bridge_win32;
  61. const char* bridge_win64;
  62. const char* bridge_lv2gtk2;
  63. const char* bridge_lv2qt4;
  64. const char* bridge_lv2x11;
  65. const char* bridge_vstx11;
  66. carla_options_t()
  67. : process_mode(PROCESS_MODE_MULTIPLE_CLIENTS),
  68. max_parameters(MAX_PARAMETERS),
  69. prefer_ui_bridges(true),
  70. force_stereo(false),
  71. proccess_hp(false),
  72. osc_gui_timeout(4000/100),
  73. use_dssi_chunks(false),
  74. bridge_unix32(nullptr),
  75. bridge_unix64(nullptr),
  76. bridge_win32(nullptr),
  77. bridge_win64(nullptr),
  78. bridge_lv2gtk2(nullptr),
  79. bridge_lv2qt4(nullptr),
  80. bridge_lv2x11(nullptr),
  81. bridge_vstx11(nullptr) {}
  82. };
  83. extern carla_options_t carlaOptions;
  84. #endif
  85. /**@}*/
  86. CARLA_BACKEND_END_NAMESPACE
  87. #endif // CARLA_SHARED_H