#pragma once #include #include // Autorelease object definitions void ___source_dummy_addref(obs_source_t*); void ___sceneitem_dummy_addref(obs_sceneitem_t*); void ___data_dummy_addref(obs_data_t*); void ___data_array_dummy_addref(obs_data_array_t*); void ___output_dummy_addref(obs_output_t*); void ___data_item_dummy_addref(obs_data_item_t*); void ___data_item_release(obs_data_item_t*); using OBSSourceAutoRelease = OBSRef; using OBSSceneItemAutoRelease = OBSRef; using OBSDataAutoRelease = OBSRef; using OBSDataArrayAutoRelease = OBSRef; using OBSOutputAutoRelease = OBSRef; using OBSDataItemAutoRelease = OBSRef; class Config; typedef std::shared_ptr ConfigPtr; class WebSocketServer; typedef std::shared_ptr WebSocketServerPtr; class EventHandler; typedef std::shared_ptr EventHandlerPtr; ConfigPtr GetConfig(); WebSocketServerPtr GetWebSocketServer(); EventHandlerPtr GetEventHandler();