00001 00002 // LeaveFunction.h // 00004 00005 #ifndef LEAVEFUNCTION_H 00006 #define LEAVEFUNCTION_H 00007 00008 #include "X3DActiveFunction.h" 00009 #include "X3DTypes.h" 00010 00011 namespace X3DTK { 00012 00014 00015 class LeaveFunction : public X3DActiveFunction 00016 { 00017 public: 00019 LeaveFunction(const ptrToLeaveFunction leave, const X3DComponentVisitor *component); 00021 ~LeaveFunction(); 00022 00024 inline void leave(SFAbstractNode N) const {(component_->*ptr2leave_)(N);}; 00025 00026 private: 00027 const ptrToLeaveFunction ptr2leave_; 00028 const X3DComponentVisitor *component_; 00029 }; 00030 00031 } 00032 00033 #endif