obslua.i 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. %module obslua
  2. %{
  3. #define SWIG_FILE_WITH_INIT
  4. #define DEPRECATED_START
  5. #define DEPRECATED_END
  6. #include <graphics/graphics.h>
  7. #include <graphics/vec4.h>
  8. #include <graphics/vec3.h>
  9. #include <graphics/vec2.h>
  10. #include <graphics/matrix4.h>
  11. #include <graphics/matrix3.h>
  12. #include <graphics/quat.h>
  13. #include <graphics/image-file.h>
  14. #include <obs.h>
  15. #include <obs-hotkey.h>
  16. #include <obs-source.h>
  17. #include <obs-data.h>
  18. #include <obs-properties.h>
  19. #include <obs-interaction.h>
  20. #include <callback/calldata.h>
  21. #include <callback/proc.h>
  22. #include <callback/signal.h>
  23. #include <util/bmem.h>
  24. #include <util/base.h>
  25. #include "cstrcache.h"
  26. #include "obs-scripting-config.h"
  27. #if UI_ENABLED
  28. #include "obs-frontend-api.h"
  29. #endif
  30. %}
  31. #define DEPRECATED_START
  32. #define DEPRECATED_END
  33. #define EXPORT
  34. %rename(blog) wrap_blog;
  35. %inline %{
  36. static inline void wrap_blog(int log_level, const char *message)
  37. {
  38. blog(log_level, "%s", message);
  39. }
  40. %}
  41. %include "stdint.i"
  42. /* Used to free when using %newobject functions. E.G.:
  43. * %newobject obs_module_get_config_path; */
  44. %typemap(newfree) char * "bfree($1);";
  45. %ignore blog;
  46. %ignore blogva;
  47. %ignore bcrash;
  48. %ignore obs_source_info;
  49. %ignore obs_register_source_s(const struct obs_source_info *info, size_t size);
  50. %ignore obs_output_set_video(obs_output_t *output, video_t *video);
  51. %ignore obs_output_video(const obs_output_t *output);
  52. %ignore obs_add_tick_callback;
  53. %ignore obs_remove_tick_callback;
  54. %ignore obs_add_main_render_callback;
  55. %ignore obs_remove_main_render_callback;
  56. %ignore obs_enum_sources;
  57. %ignore obs_source_enum_filters;
  58. %ignore obs_properties_add_button;
  59. %ignore obs_property_set_modified_callback;
  60. %ignore signal_handler_connect;
  61. %ignore signal_handler_disconnect;
  62. %ignore signal_handler_connect_global;
  63. %ignore signal_handler_disconnect_global;
  64. %ignore signal_handler_remove_current;
  65. %ignore obs_hotkey_register_frontend;
  66. %ignore obs_hotkey_register_encoder;
  67. %ignore obs_hotkey_register_output;
  68. %ignore obs_hotkey_register_service;
  69. %ignore obs_hotkey_register_source;
  70. %ignore obs_hotkey_pair_register_frontend;
  71. %ignore obs_hotkey_pair_register_encoder;
  72. %ignore obs_hotkey_pair_register_output;
  73. %ignore obs_hotkey_pair_register_service;
  74. %ignore obs_hotkey_pair_register_source;
  75. %include "graphics/graphics.h"
  76. %include "graphics/vec4.h"
  77. %include "graphics/vec3.h"
  78. %include "graphics/vec2.h"
  79. %include "graphics/matrix4.h"
  80. %include "graphics/matrix3.h"
  81. %include "graphics/quat.h"
  82. %include "graphics/image-file.h"
  83. %include "obs-scripting-config.h"
  84. %include "obs-data.h"
  85. %include "obs-source.h"
  86. %include "obs-properties.h"
  87. %include "obs-interaction.h"
  88. %include "obs-hotkey.h"
  89. %include "obs.h"
  90. %include "callback/calldata.h"
  91. %include "callback/proc.h"
  92. %include "callback/signal.h"
  93. %include "util/bmem.h"
  94. %include "util/base.h"
  95. #if UI_ENABLED
  96. %include "obs-frontend-api.h"
  97. #endif