Frapper  1.0a
SceneNodeParameter.h
Go to the documentation of this file.
1 /*
2 -----------------------------------------------------------------------------
3 This source file is part of FRAPPER
4 research.animationsinstitut.de
5 sourceforge.net/projects/frapper
6 
7 Copyright (c) 2008-2009 Filmakademie Baden-Wuerttemberg, Institute of Animation
8 
9 This program is free software; you can redistribute it and/or modify it under
10 the terms of the GNU Lesser General Public License as published by the Free Software
11 Foundation; version 2.1 of the License.
12 
13 This program is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
16 
17 You should have received a copy of the GNU Lesser General Public License along with
18 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19 Place - Suite 330, Boston, MA 02111-1307, USA, or go to
20 http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
21 -----------------------------------------------------------------------------
22 */
23 
33 
34 #ifndef SCENENODEPARAMETER_H
35 #define SCENENODEPARAMETER_H
36 
37 #include "Parameter.h"
38 #include <Ogre.h>
39 #if (OGRE_PLATFORM == OGRE_PLATFORM_WIN32)
40 #include <windows.h>
41 #endif
42 
43 namespace Frapper {
44 
48 template <Parameter::Type T>
50 {
51 
52 public: // static data
53 
57  static const QVariant DefaultValue;
58 
59 public: // constructors and destructors
60 
66  SceneNodeParameter ( const QString &name );
67 
73  SceneNodeParameter ( const SceneNodeParameter<T> &parameter );
74 
82  virtual ~SceneNodeParameter ();
83 
84 public: // functions
85 
91  virtual AbstractParameter * clone ();
92 
98  Ogre::SceneNode * getSceneNode ();
99 
100 private: // functions
101 
105  void createSceneNode ();
106 
110  void destroySceneNode ();
111 
112 };
113 
114 
118 
119 
124 
129 
134 
135 } // end namespace Frapper
136 
137 #endif