/** * @file LogView/factory.h * @brief LogView module's factory class * @author Enar Vaikene * * Copyright (c) 2011-2019 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 __LOGVIEW_FACTORY_H # define __LOGVIEW_FACTORY_H #include "version.h" #include namespace eVaf { namespace LogView { namespace Internal { class Module; } // namespace eVaf::LogView::Internal /** * Plugin factory class for the module */ 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::Module * mPlugin; }; } // namespace eVaf::LogView } // namespace eVaf #endif // factory.h