NuriaProject Framework  0.1
The NuriaProject Framework
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Modules
qtmetaobjectwrapper.hpp
1 /* Copyright (c) 2014-2015, The Nuria Project
2  * The NuriaProject Framework is free software: you can redistribute it and/or
3  * modify it under the terms of the GNU Lesser General Public License as
4  * published by the Free Software Foundation, either version 3 of the License,
5  * or (at your option) any later version.
6  *
7  * The NuriaProject Framework 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 Lesser General Public License for more details.
11  *
12  * You should have received a copy of the GNU Lesser General Public License
13  * along with The NuriaProject Framework.
14  * If not, see <http://www.gnu.org/licenses/>.
15  */
16 
17 #ifndef NURIA_QTMETAOBJECTWRAPPER_HPP
18 #define NURIA_QTMETAOBJECTWRAPPER_HPP
19 
20 #include "runtimemetaobject.hpp"
21 
22 namespace Nuria {
23 
24 class QtMetaObjectWrapperPrivate;
25 
52 class NURIA_CORE_EXPORT QtMetaObjectWrapper : public RuntimeMetaObject {
53 public:
54 
60  QtMetaObjectWrapper (const QMetaObject *metaObject);
61 
63  ~QtMetaObjectWrapper () override;
64 
65 private:
66 
67  void installDeleter ();
68  void populateAnnotations (const QMetaObject *meta);
69  void populateMethods (const QMetaObject *meta);
70  void populateEnums (const QMetaObject *meta);
71  void populateFields (const QMetaObject *meta);
72 
73 };
74 
75 }
76 
77 #endif // NURIA_QTMETAOBJECTWRAPPER_HPP
RuntimeMetaObject lets you easily define types at run-time.
Definition: runtimemetaobject.hpp:56
Definition: abstractsessionmanager.hpp:24
QtMetaObjectWrapper lets you use a QMetaObject as Nuria::MetaObject.
Definition: qtmetaobjectwrapper.hpp:52