VTK
vtkCommand.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCommand.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
204 #ifndef __vtkCommand_h
205 #define __vtkCommand_h
206 
207 #include "vtkObjectBase.h"
208 #include "vtkObject.h" // Need vtkTypeMacro
209 
210 // The superclass that all commands should be subclasses of
212 {
213 public:
214  vtkTypeMacro(vtkCommand,vtkObjectBase);
215 
217 
220  void UnRegister();
221  virtual void UnRegister(vtkObjectBase *)
222  { this->UnRegister(); }
224 
226 
235  virtual void Execute(vtkObject *caller, unsigned long eventId,
236  void *callData) = 0;
238 
240 
242  static const char *GetStringFromEventId(unsigned long event);
243  static unsigned long GetEventIdFromString(const char *event);
245 
247 
249  void SetAbortFlag(int f)
250  { this->AbortFlag = f; }
252  { return this->AbortFlag; }
253  void AbortFlagOn()
254  { this->SetAbortFlag(1); }
256  { this->SetAbortFlag(0); }
258 
260 
264  void SetPassiveObserver(int f)
265  { this->PassiveObserver = f; }
267  { return this->PassiveObserver; }
269  { this->SetPassiveObserver(1); }
271  { this->SetPassiveObserver(0); }
273 
274 //BTX
276 
280  enum EventIds {
281  NoEvent = 0,
322  StartInteractionEvent, //mainly used by vtkInteractorObservers
335  StartAnimationCueEvent, // used by vtkAnimationCue
362  TDxMotionEvent, // 3D Connexion device event
363  TDxButtonPressEvent, // 3D Connexion device event
364  TDxButtonReleaseEvent, // 3D Connexion device event
375  UserEvent = 1000
376  };
377 //ETX
379 
380 protected:
383 
384  vtkCommand();
385  virtual ~vtkCommand() {}
386 
387  friend class vtkSubjectHelper;
388 //BTX
390  void operator=(const vtkCommand&) {}
391 //ETX
392 };
393 
394 #endif /* __vtkCommand_h */
395 
void SetPassiveObserver(int f)
Definition: vtkCommand.h:264
void AbortFlagOff()
Definition: vtkCommand.h:255
void operator=(const vtkCommand &)
Definition: vtkCommand.h:390
abstract base class for most VTK objects
Definition: vtkObject.h:60
void AbortFlagOn()
Definition: vtkCommand.h:253
vtkCommand(const vtkCommand &c)
Definition: vtkCommand.h:389
int PassiveObserver
Definition: vtkCommand.h:382
void SetAbortFlag(int f)
Definition: vtkCommand.h:249
int AbortFlag
Definition: vtkCommand.h:381
void PassiveObserverOn()
Definition: vtkCommand.h:268
superclass for callback/observer methods
Definition: vtkCommand.h:211
virtual void UnRegister(vtkObjectBase *o)
void PassiveObserverOff()
Definition: vtkCommand.h:270
virtual ~vtkCommand()
Definition: vtkCommand.h:385
#define VTK_COMMON_EXPORT
abstract base class for most VTK objects
Definition: vtkObjectBase.h:59
int GetAbortFlag()
Definition: vtkCommand.h:251
int GetPassiveObserver()
Definition: vtkCommand.h:266
virtual void UnRegister(vtkObjectBase *)
Definition: vtkCommand.h:221