tesseract  4.0.0-1-g2a2b
_TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 > Class Template Reference

#include <tesscallback.h>

Inheritance diagram for _TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 >:
TessResultCallback1< R, A1 >

Public Types

typedef TessResultCallback1< R, A1 > base
 
typedef R(T::* MemberSignature) (P1, P2, A1)
 

Public Member Functions

 _TessMemberResultCallback_2_1 (T *object, MemberSignature member, P1 p1, P2 p2)
 
virtual R Run (A1 a1)
 
- Public Member Functions inherited from TessResultCallback1< R, A1 >
virtual ~TessResultCallback1 ()
 

Detailed Description

template<bool del, class R, class T, class P1, class P2, class A1>
class _TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 >

Definition at line 2244 of file tesscallback.h.

Member Typedef Documentation

◆ base

template<bool del, class R, class T, class P1, class P2, class A1>
typedef TessResultCallback1<R,A1> _TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 >::base

Definition at line 2246 of file tesscallback.h.

◆ MemberSignature

template<bool del, class R, class T, class P1, class P2, class A1>
typedef R(T::* _TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 >::MemberSignature) (P1, P2, A1)

Definition at line 2247 of file tesscallback.h.

Constructor & Destructor Documentation

◆ _TessMemberResultCallback_2_1()

template<bool del, class R, class T, class P1, class P2, class A1>
_TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 >::_TessMemberResultCallback_2_1 ( T *  object,
MemberSignature  member,
P1  p1,
P2  p2 
)
inline

Definition at line 2256 of file tesscallback.h.

2257  : object_(object),
2258  member_(member), p1_(p1), p2_(p2) { }

Member Function Documentation

◆ Run()

template<bool del, class R, class T, class P1, class P2, class A1>
virtual R _TessMemberResultCallback_2_1< del, R, T, P1, P2, A1 >::Run ( A1  a1)
inlinevirtual

Implements TessResultCallback1< R, A1 >.

Definition at line 2260 of file tesscallback.h.

2260  {
2261  if (!del) {
2262  R result = (object_->*member_)(p1_,p2_,a1);
2263  return result;
2264  } else {
2265  R result = (object_->*member_)(p1_,p2_,a1);
2266  // zero out the pointer to ensure segfault if used again
2267  member_ = nullptr;
2268  delete this;
2269  return result;
2270  }
2271  }

The documentation for this class was generated from the following file: