OpenCPN Partial API docs
Loading...
Searching...
No Matches
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, see <https://www.gnu.org/licenses/ *
16 **************************************************************************/
17
24#if defined(__linux__) && !defined(__ANDROID__)
26#include "model/sys_events.h"
27
28UsbWatchDaemon& UsbWatchDaemon::GetInstance() {
29 static LinuxUsbWatchDaemon instance(SystemEvents::GetInstance());
30 return instance;
31}
32
33#elif defined(_WIN32)
34#include "model/win_usb_watch.h"
35#include "model/sys_events.h"
36
37UsbWatchDaemon& UsbWatchDaemon::GetInstance() {
38 static WinUsbWatchDaemon instance(SystemEvents::GetInstance());
39 return instance;
40}
41
42#else
44
45UsbWatchDaemon& UsbWatchDaemon::GetInstance() {
46 static DummyWatchDaemon instance;
47 return instance;
48}
49#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,...
Linux specific hardware events DBus interface.
Suspend/resume and new devices events exchange point.
Generic hardware events interface.
Windows specific hardware events interface.