2 * Implementationclass to derive controllers from
5 * ***** BEGIN GPL LICENSE BLOCK *****
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
22 * All rights reserved.
24 * The Original Code is: all of this file.
26 * Contributor(s): none yet.
28 * ***** END GPL LICENSE BLOCK *****
31 /** \file SG_Controller.h
35 #ifndef __SG_CONTROLLER_H__
36 #define __SG_CONTROLLER_H__
38 #include "SG_IObject.h"
41 * A scenegraph controller
80 class SG_Node* destnode
84 * Hacky way of passing options to specific controllers
85 * \param option An integer identifying the option.
86 * \param value The value of this option.
87 * \attention This has been placed here to give sca-elements
88 * \attention some control over the controllers. This is
89 * \attention necessary because the identity of the controller
90 * \attention is lost on the way here.
100 * Option-identifiers: SG_CONTR_<controller-type>_<option>.
101 * Options only apply to a specific controller type. The
102 * semantics are defined by whoever uses the setting.
104 enum SG_Controller_option {
106 SG_CONTR_IPO_IPO_AS_FORCE,
107 SG_CONTR_IPO_IPO_ADD,
110 SG_CONTR_CAMIPO_LENS,
111 SG_CONTR_CAMIPO_CLIPEND,
112 SG_CONTR_CAMIPO_CLIPSTART,
117 SG_IObject* m_pObject;
119 #ifdef WITH_CXX_GUARDEDALLOC
120 MEM_CXX_CLASS_ALLOC_FUNCS("GE:SG_Controller")
124 #endif //__SG_CONTROLLER_H__