Open Lighting Architecture
0.9.3
Main Page
Modules
Related Pages
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
plugins
usbpro
UsbSerialDevice.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
* UsbSerialDevice.h
17
* Interface for the usb devices
18
* Copyright (C) 2010 Simon Newton
19
*/
20
21
#ifndef PLUGINS_USBPRO_USBSERIALDEVICE_H_
22
#define PLUGINS_USBPRO_USBSERIALDEVICE_H_
23
24
#include <string>
25
#include "
ola/Callback.h
"
26
#include "olad/Device.h"
27
#include "plugins/usbpro/SerialWidgetInterface.h"
28
29
namespace
ola {
30
namespace
plugin {
31
namespace
usbpro {
32
33
/*
34
* A USB device
35
*/
36
class
UsbSerialDevice
:
public
ola::Device
{
37
public
:
38
UsbSerialDevice
(
ola::AbstractPlugin
*owner,
39
const
std::string &name,
40
SerialWidgetInterface
*widget):
41
Device
(owner, name),
42
m_widget(widget) {}
43
44
virtual
~
UsbSerialDevice
() {}
45
46
void
PrePortStop() {
47
m_widget->Stop();
48
}
49
50
void
SetOnRemove(
ola::SingleUseCallback0<void>
*on_close) {
51
m_widget->GetDescriptor()->
SetOnClose
(on_close);
52
}
53
54
SerialWidgetInterface
*GetWidget()
const
{
return
m_widget; }
55
56
protected
:
57
SerialWidgetInterface
*m_widget;
58
};
59
}
// namespace usbpro
60
}
// namespace plugin
61
}
// namespace ola
62
#endif // PLUGINS_USBPRO_USBSERIALDEVICE_H_
Generated on Sun Nov 16 2014 15:43:11 for Open Lighting Architecture by
1.8.1.2