summaryrefslogtreecommitdiff
path: root/src/input_common/main.cpp
diff options
context:
space:
mode:
authorGravatar german772021-10-11 00:43:11 -0500
committerGravatar Narr the Reg2021-11-24 20:30:24 -0600
commit06a5ef5874144a70e30e577a83ba68d1dad79e78 (patch)
tree867fa1153c7285c858cdb5bd7f60f08266532a88 /src/input_common/main.cpp
parentcore: Update input interpreter (diff)
downloadyuzu-06a5ef5874144a70e30e577a83ba68d1dad79e78.tar.gz
yuzu-06a5ef5874144a70e30e577a83ba68d1dad79e78.tar.xz
yuzu-06a5ef5874144a70e30e577a83ba68d1dad79e78.zip
core/hid: Add output devices
Diffstat (limited to 'src/input_common/main.cpp')
-rw-r--r--src/input_common/main.cpp30
1 files changed, 20 insertions, 10 deletions
diff --git a/src/input_common/main.cpp b/src/input_common/main.cpp
index 46ca6b76c..b7fe9cb37 100644
--- a/src/input_common/main.cpp
+++ b/src/input_common/main.cpp
@@ -46,8 +46,10 @@ struct InputSubsystem::Impl {
46 46
47 gcadapter = std::make_shared<GCAdapter>("gcpad"); 47 gcadapter = std::make_shared<GCAdapter>("gcpad");
48 gcadapter->SetMappingCallback(mapping_callback); 48 gcadapter->SetMappingCallback(mapping_callback);
49 gcadapter_factory = std::make_shared<InputFactory>(gcadapter); 49 gcadapter_input_factory = std::make_shared<InputFactory>(gcadapter);
50 Input::RegisterFactory<Input::InputDevice>(gcadapter->GetEngineName(), gcadapter_factory); 50 gcadapter_output_factory = std::make_shared<OutputFactory>(gcadapter);
51 Input::RegisterFactory<Input::InputDevice>(gcadapter->GetEngineName(), gcadapter_input_factory);
52 Input::RegisterFactory<Input::OutputDevice>(gcadapter->GetEngineName(), gcadapter_output_factory);
51 53
52 udp_client = std::make_shared<CemuhookUDP::UDPClient>("cemuhookudp"); 54 udp_client = std::make_shared<CemuhookUDP::UDPClient>("cemuhookudp");
53 udp_client->SetMappingCallback(mapping_callback); 55 udp_client->SetMappingCallback(mapping_callback);
@@ -62,8 +64,10 @@ struct InputSubsystem::Impl {
62#ifdef HAVE_SDL2 64#ifdef HAVE_SDL2
63 sdl = std::make_shared<SDLDriver>("sdl"); 65 sdl = std::make_shared<SDLDriver>("sdl");
64 sdl->SetMappingCallback(mapping_callback); 66 sdl->SetMappingCallback(mapping_callback);
65 sdl_factory = std::make_shared<InputFactory>(sdl); 67 sdl_input_factory = std::make_shared<InputFactory>(sdl);
66 Input::RegisterFactory<Input::InputDevice>(sdl->GetEngineName(), sdl_factory); 68 sdl_output_factory = std::make_shared<OutputFactory>(sdl);
69 Input::RegisterFactory<Input::InputDevice>(sdl->GetEngineName(), sdl_input_factory);
70 Input::RegisterFactory<Input::OutputDevice>(sdl->GetEngineName(), sdl_output_factory);
67#endif 71#endif
68 72
69 Input::RegisterFactory<Input::InputDevice>("touch_from_button", 73 Input::RegisterFactory<Input::InputDevice>("touch_from_button",
@@ -247,21 +251,27 @@ struct InputSubsystem::Impl {
247 } 251 }
248 252
249 std::shared_ptr<MappingFactory> mapping_factory; 253 std::shared_ptr<MappingFactory> mapping_factory;
254
250 std::shared_ptr<Keyboard> keyboard; 255 std::shared_ptr<Keyboard> keyboard;
251 std::shared_ptr<InputFactory> keyboard_factory;
252 std::shared_ptr<Mouse> mouse; 256 std::shared_ptr<Mouse> mouse;
253 std::shared_ptr<InputFactory> mouse_factory;
254 std::shared_ptr<GCAdapter> gcadapter; 257 std::shared_ptr<GCAdapter> gcadapter;
255 std::shared_ptr<InputFactory> gcadapter_factory;
256 std::shared_ptr<TouchScreen> touch_screen; 258 std::shared_ptr<TouchScreen> touch_screen;
257 std::shared_ptr<InputFactory> touch_screen_factory; 259 std::shared_ptr<TasInput::Tas> tas_input;
258 std::shared_ptr<CemuhookUDP::UDPClient> udp_client; 260 std::shared_ptr<CemuhookUDP::UDPClient> udp_client;
261
262 std::shared_ptr<InputFactory> keyboard_factory;
263 std::shared_ptr<InputFactory> mouse_factory;
264 std::shared_ptr<InputFactory> gcadapter_input_factory;
265 std::shared_ptr<InputFactory> touch_screen_factory;
259 std::shared_ptr<InputFactory> udp_client_factory; 266 std::shared_ptr<InputFactory> udp_client_factory;
260 std::shared_ptr<TasInput::Tas> tas_input;
261 std::shared_ptr<InputFactory> tas_input_factory; 267 std::shared_ptr<InputFactory> tas_input_factory;
268
269 std::shared_ptr<OutputFactory> gcadapter_output_factory;
270
262#ifdef HAVE_SDL2 271#ifdef HAVE_SDL2
263 std::shared_ptr<SDLDriver> sdl; 272 std::shared_ptr<SDLDriver> sdl;
264 std::shared_ptr<InputFactory> sdl_factory; 273 std::shared_ptr<InputFactory> sdl_input_factory;
274 std::shared_ptr<OutputFactory> sdl_output_factory;
265#endif 275#endif
266}; 276};
267 277