]> vaikene.ee Git - evaf/blob - src/plugins/Test/factory.h
089d86962c2db23cbdd27f2aec05f486372c003c
[evaf] / src / plugins / Test / factory.h
1 /**
2 * @file plugins/Test/factory.h
3 * @brief eVaf test plugin factory
4 * @author Enar Vaikene
5 *
6 * Copyright (c) 2011 Enar Vaikene
7 *
8 * This file is part of the eVaf C++ cross-platform application development framework.
9 *
10 * This file can be used under the terms of the GNU General Public License
11 * version 3.0 as published by the Free Software Foundation and appearing in
12 * the file LICENSE included in the packaging of this file. Please review the
13 * the following information to ensure the GNU General Public License version
14 * 3.0 requirements will be met: http://www.gnu.org/copyleft/gpl.html.
15 *
16 * Alternatively, this file may be used in accordance with the Commercial License
17 * Agreement provided with the Software.
18 */
19
20 #ifndef __TEST_FACTORY_H
21 #define __TEST_FACTORY_H
22
23 #include <Plugins/iPluginFactory>
24
25 namespace eVaf {
26
27 /**
28 * Module for testing the eVaf application framework.
29 */
30 namespace Test {
31
32 /**
33 * Internal implementation of the test module.
34 */
35 namespace Internal {
36 class TestPlugin;
37 } // namespace eVaf::Test::Internal
38
39
40 /**
41 * Plugin factory class for the test plugin
42 */
43 class Factory : public Plugins::iPluginFactory
44 {
45 Q_OBJECT
46 Q_INTERFACES(eVaf::Plugins::iPluginFactory)
47
48 public:
49
50 Factory();
51
52 virtual ~Factory();
53
54 virtual QObject * create(QString const & name);
55
56
57 private: // Members
58
59 Internal::TestPlugin * mTest;
60
61 };
62
63 } // namespace eVaf::Test
64 } // namespace eVaf
65
66 #endif // factory.h