/** * @file plugins/Test/factory.h * @brief eVaf test plugin factory * @author Enar Vaikene * * Copyright (c) 2011 Enar Vaikene * * This file is part of the eVaf C++ cross-platform application development framework. * * This file can be used under the terms of the GNU General Public License * version 3.0 as published by the Free Software Foundation and appearing in * the file LICENSE included in the packaging of this file. Please review the * the following information to ensure the GNU General Public License version * 3.0 requirements will be met: http://www.gnu.org/copyleft/gpl.html. * * Alternatively, this file may be used in accordance with the Commercial License * Agreement provided with the Software. */ #ifndef __TEST_FACTORY_H #define __TEST_FACTORY_H #include "version.h" #include namespace eVaf { /** * Module for testing the eVaf application framework. */ namespace Test { /** * Internal implementation of the test module. */ namespace Internal { class TestPlugin; } // namespace eVaf::Test::Internal /** * Plugin factory class for the test plugin */ class Factory : public Plugins::iPluginFactory { Q_OBJECT Q_INTERFACES(eVaf::Plugins::iPluginFactory) Q_PLUGIN_METADATA(IID VER_MODULE_NAME_STR) public: Factory(); virtual ~Factory(); virtual QObject * create(QString const & name); private: // Members Internal::TestPlugin * mTest; }; } // namespace eVaf::Test } // namespace eVaf #endif // factory.h