Open Lighting Architecture: plugins/karate/KaratePlugin.h Source File

| Open Lighting Architecture 0.10.9

Loading...
Searching...
No Matches
KaratePlugin.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 * KaratePlugin.h
17 * Interface for the karate plugin class
18 * Copyright (C) 2005 Simon Newton
19 */
20
21#ifndef PLUGINS_KARATE_KARATEPLUGIN_H_
22#define PLUGINS_KARATE_KARATEPLUGIN_H_
23
24#include <string>
25#include <vector>
26#include "olad/Plugin.h"
27#include "ola/plugin_id.h"
28
29namespace ola {
30namespace plugin {
31namespace karate {
32
33class KarateDevice;
34
35 class KaratePlugin: public Plugin {
36 public:
37 explicit KaratePlugin(PluginAdaptor *plugin_adaptor)
38 : Plugin(plugin_adaptor) {
39 }
40
41 std::string Name() const { return PLUGIN_NAME; }
42 std::string Description() const;
43 ola_plugin_id Id() const { return OLA_PLUGIN_KARATE; }
44 std::string PluginPrefix() const { return PLUGIN_PREFIX; }
45
46 private:
47 bool StartHook();
48 bool StopHook();
49 bool SetDefaultPreferences();
50
51 typedef std::vector<KarateDevice*> DeviceList;
52 DeviceList m_devices;
53
54 static const char PLUGIN_NAME[];
55 static const char PLUGIN_PREFIX[];
56 static const char KARATE_DEVICE_PATH[];
57 static const char KARATE_DEVICE_NAME[];
58 static const char DEVICE_KEY[];
59};
60} // namespace karate
61} // namespace plugin
62} // namespace ola
63
64#endif // PLUGINS_KARATE_KARATEPLUGIN_H_
ola::PluginAdaptor
Definition PluginAdaptor.h:41
ola::Plugin::SetDefaultPreferences
virtual bool SetDefaultPreferences()
Definition Plugin.h:159
ola::plugin::karate::KarateDevice
Definition KarateDevice.h:31
ola::plugin::karate::KaratePlugin::Id
ola_plugin_id Id() const
Get the plugin ID of this plugin.
Definition KaratePlugin.h:43
ola::plugin::karate::KaratePlugin::Name
std::string Name() const
Get the plugin name.
Definition KaratePlugin.h:41
ola::plugin::karate::KaratePlugin::Description
std::string Description() const
Return the description for this plugin.
Definition KaratePlugin.cpp:106
ola::plugin::karate::KaratePlugin::PluginPrefix
std::string PluginPrefix() const
The prefix to use for storing configuration files.
Definition KaratePlugin.h:44
ola::plugin::karate
Code for Karate devices.
ola::plugin
Code for supported devices and protocols.
ola
The namespace containing all OLA symbols.
Definition Credentials.cpp:44