Orxonox  0.0.5 Codename: Arcturus
OrxonoxClass.h
Go to the documentation of this file.
1 /*
2  * ORXONOX - the hottest 3D action shooter ever to exist
3  * > www.orxonox.net <
4  *
5  *
6  * License notice:
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License
10  * as published by the Free Software Foundation; either version 2
11  * of the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  *
22  * Author:
23  * Fabian 'x3n' Landau
24  * Co-authors:
25  * ...
26  *
27  */
28 
40 #ifndef _OrxonoxClass_H__
41 #define _OrxonoxClass_H__
42 
43 #include "core/CorePrereqs.h"
44 
47 
48 namespace orxonox
49 {
53  class _CoreExport OrxonoxClass : virtual public Configurable, virtual public Destroyable
54  {
55  public:
56  OrxonoxClass();
57 
58  // This is only here to work around a bogus warning in GCC:
59  //
60  // OrxonoxClass.h:53:23: warning: defaulted move assignment for 'orxonox::OrxonoxClass' calls a non-trivial move assignment operator for virtual base 'orxonox::Configurable' [-Wvirtual-move-assign]
61  // class _CoreExport OrxonoxClass : virtual public Configurable, virtual public Destroyable
62  //
63  // You can remove this line if the whole project compiles without warnings in future versions of GCC.
64  OrxonoxClass& operator=(const OrxonoxClass&) = default;
65  };
66 }
67 
68 #endif /* _OrxonoxClass_H__ */
This is the class from which all objects of the game-logic (not the engine) are derived from...
Definition: OrxonoxClass.h:53
Shared library macros, enums, constants and forward declarations for the core library ...
This is the base class of all objects which may contain config values.
Definition: Configurable.h:47
Die Wagnis Klasse hat die folgenden Aufgaben:
Definition: ApplicationPaths.cc:66
#define _CoreExport
Definition: CorePrereqs.h:61
Declaration of Destroyable, the base class of all objects which can be used with StrongPtr and WeakPt...
Declaration of Configurable, the base class of all objects which may contain config values...
Classes must inherit from this class if they should be used with StrongPtr or WeakPtr.
Definition: Destroyable.h:47