24#ifndef  _SB_DELEGATE_MEMBER_FUN_IMPL_H_ 
   25#define  _SB_DELEGATE_MEMBER_FUN_IMPL_H_ 
   27#include <Inventor/SbDelegateImpl.h> 
   28#include <Inventor/misc/SoRefCounter.h> 
   40template<
typename ReturnType, 
typename ArgType, 
typename ClassType>
 
   45  typedef  ReturnType (ClassType::*FPTR) (ArgType);
 
   56  SbDelegateMemberFunImpl(ClassType& a, FPTR f)
 
   63  virtual ReturnType call(ArgType arg)
 const 
   65    return (m_a.*m_fMem)(arg);
 
   69  virtual SbDelegateImpl<ReturnType, ArgType>* clone()
 const 
   71    return new SbDelegateMemberFunImpl(m_a, m_fMem);
 
   78  bool equal(ClassType& a, FPTR f)
 const 
   80    return (&m_a == &a) && (f == m_fMem);