Open Lighting Architecture: plugins/milinst/MilInstDevice.h Source File

| Open Lighting Architecture 0.10.9

Loading...
Searching...
No Matches
MilInstDevice.h
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation; either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU Library General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program; if not, write to the Free Software
14 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
15 *
16 * MilInstDevice.h
17 * Interface for the milinst device
18 * Copyright (C) 2013 Peter Newman
19 */
20
21#ifndef PLUGINS_MILINST_MILINSTDEVICE_H_
22#define PLUGINS_MILINST_MILINSTDEVICE_H_
23
24#include <memory>
25#include <string>
26
27#include "olad/Device.h"
28
29namespace ola {
30
31class AbstractPlugin;
32
33namespace plugin {
34namespace milinst {
35
36 class MilInstDevice: public ola::Device {
37 public:
38 MilInstDevice(AbstractPlugin *owner,
39 class Preferences *preferences,
40 const std::string &dev_path);
41 ~MilInstDevice();
42
43 std::string DeviceId() const { return m_path; }
44 ola::io::ConnectedDescriptor *GetSocket() const;
45
46 protected:
47 bool StartHook();
48 void PrePortStop();
49
50 private:
51 std::string m_path;
52 class Preferences *m_preferences;
53 std::auto_ptr<class MilInstWidget> m_widget;
54
55 static const char MILINST_DEVICE_NAME[];
56
57 // Per device options
58 std::string DeviceTypeKey() const;
59
60 void SetDeviceDefaults();
61
62 static const char TYPE_1463[];
63 static const char TYPE_1553[];
64};
65} // namespace milinst
66} // namespace plugin
67} // namespace ola
68#endif // PLUGINS_MILINST_MILINSTDEVICE_H_
ola::AbstractPlugin
Definition Plugin.h:38
ola::Device
Definition Device.h:89
ola::Preferences
Definition Preferences.h:148
ola::io::ConnectedDescriptor
A BidirectionalFileDescriptor that also generates notifications when closed.
Definition Descriptor.h:283
ola::plugin::milinst::MilInstDevice::StartHook
bool StartHook()
Called during Start().
Definition MilInstDevice.cpp:84
ola::plugin::milinst::MilInstDevice::DeviceId
std::string DeviceId() const
The device ID.
Definition MilInstDevice.h:43
ola::plugin::milinst
Code for Milford Instruments devices.
ola::plugin
Code for supported devices and protocols.
ola
The namespace containing all OLA symbols.
Definition Credentials.cpp:44