Frapper  1.0a
ViewNode.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 VIEWNODE_H
35 #define VIEWNODE_H
36 
37 #include "CurveEditorDataNode.h"
38 #include <Ogre.h>
39 #if (OGRE_PLATFORM == OGRE_PLATFORM_WIN32)
40 #include <windows.h>
41 #endif
42 
43 namespace Frapper {
44 
52 {
53 
54  Q_OBJECT
55 
56 public:
57 
64  ViewNode ( const QString &name, ParameterGroup *parameterRoot );
65 
73  virtual ~ViewNode ();
74 
75 public: // functions
76 
82  unsigned int getStageIndex () const;
83 
90  bool isViewed () const;
91 
101  virtual Ogre::SceneNode * getSceneNode ();
102 
111  virtual Ogre::TexturePtr getImage ();
112 
113  public slots: //
114 
120  virtual void setEvaluate ( bool evaluate );
121 
129  virtual void setView ( bool view, bool suppressViewSetSignal = false );
130 
136  void setStageIndex ( unsigned int stageIndex );
137 
138 signals: //
139 
143  void triggerRedraw ();
144 
151  void viewSet ( unsigned int stageIndex, ViewNode *viewNode );
152 
157  void viewNodeUpdated ();
158 
159 protected: // functions
160 
169  void addOutputParameter ( Parameter *outputParameter );
170 
176  void removeOutputParameter ( Parameter *outputParameter );
177 
178 
182  void requestRedraw ();
183 
184  private slots: //
185 
191  void checkViewFlag ();
192 
193 protected: // data
194 
198  unsigned int m_stageIndex;
199 
204  bool m_view;
205 
206 };
207 
208 } // end namespace Frapper
209 
210 #endif