Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Common/vtkCallbackCommand.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkCallbackCommand.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00041 #ifndef __vtkCallbackCommand_h 00042 #define __vtkCallbackCommand_h 00043 00044 #include "vtkCommand.h" 00045 00046 class VTK_COMMON_EXPORT vtkCallbackCommand : public vtkCommand 00047 { 00048 public: 00049 static vtkCallbackCommand *New() 00050 {return new vtkCallbackCommand;}; 00051 00056 void Execute(vtkObject *caller, unsigned long eid, void *callData); 00057 00059 00061 void SetClientData(void *cd) 00062 {this->ClientData = cd;} 00063 void* GetClientData() 00064 {return this->ClientData; } 00065 void SetCallback(void (*f)(vtkObject *caller, unsigned long eid, 00066 void *clientdata, void *calldata)) 00067 {this->Callback = f;} 00068 void SetClientDataDeleteCallback(void (*f)(void *)) 00069 {this->ClientDataDeleteCallback = f;} 00071 00072 void *ClientData; 00073 void (*Callback)(vtkObject *, unsigned long, void *, void *); 00074 void (*ClientDataDeleteCallback)(void *); 00075 00076 protected: 00077 vtkCallbackCommand(); 00078 ~vtkCallbackCommand(); 00079 }; 00080 00081 00082 00083 #endif /* __vtkCallbackCommand_h */ 00084