OpenCPN Partial API docs
usb_watch_factory.cpp
Go to the documentation of this file.
1 /**************************************************************************
2  * Copyright (C) 2024 Alec Leamas *
3  * *
4  * This program is free software; you can redistribute it and/or modify *
5  * it under the terms of the GNU General Public License as published by *
6  * the Free Software Foundation; either version 2 of the License, or *
7  * (at your option) any later version. *
8  * *
9  * This program is distributed in the hope that it will be useful, *
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
12  * GNU General Public License for more details. *
13  * *
14  * You should have received a copy of the GNU General Public License *
15  * along with this program; if not, write to the *
16  * Free Software Foundation, Inc., *
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
18  **************************************************************************/
19 
22 #if defined(__linux__) && !defined(__ANDROID__)
23 #include "model/linux_usb_watch.h"
24 #include "model/sys_events.h"
25 
26 UsbWatchDaemon& UsbWatchDaemon::GetInstance() {
27  static LinuxUsbWatchDaemon instance(SystemEvents::GetInstance());
28  return instance;
29 }
30 
31 #elif defined(_WIN32)
32 #include "model/win_usb_watch.h"
33 #include "model/sys_events.h"
34 
35 UsbWatchDaemon& UsbWatchDaemon::GetInstance() {
36  static WinUsbWatchDaemon instance(SystemEvents::GetInstance());
37  return instance;
38 }
39 
40 
41 #else
42 #include "model/usb_watch_daemon.h"
43 
44 UsbWatchDaemon& UsbWatchDaemon::GetInstance() {
45  static DummyWatchDaemon instance;
46  return instance;
47 }
48 #endif
Empty placeholder, does not do anything meaningful.
Listen to DBus system bus signals reflecting for example suspend/resume, new USB devicesbeing plugged...
Listen to hardware events and notifies SystemEvents when new devices are plugged in.
Listen to OS signals reflecting for example suspend/resume, new USB devicesbeing plugged in,...
Definition: win_usb_watch.h:35
Linux specific hardware events DBus interface.
Generic hardware events interface.
Windows specific hardware events interface.