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

#include <tesscallback.h>

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

Public Types

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

Public Member Functions

 _TessMemberResultCallback_3_1 (T *object, MemberSignature member, P1 p1, P2 p2, P3 p3)
 
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 P3, class A1>
class _TessMemberResultCallback_3_1< del, R, T, P1, P2, P3, A1 >

Definition at line 2466 of file tesscallback.h.

Member Typedef Documentation

◆ base

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

Definition at line 2468 of file tesscallback.h.

◆ MemberSignature

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

Definition at line 2469 of file tesscallback.h.

Constructor & Destructor Documentation

◆ _TessMemberResultCallback_3_1()

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

Definition at line 2479 of file tesscallback.h.

2480  : object_(object),
2481  member_(member), p1_(p1), p2_(p2), p3_(p3) { }

Member Function Documentation

◆ Run()

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

Implements TessResultCallback1< R, A1 >.

Definition at line 2483 of file tesscallback.h.

2483  {
2484  if (!del) {
2485  R result = (object_->*member_)(p1_,p2_,p3_,a1);
2486  return result;
2487  } else {
2488  R result = (object_->*member_)(p1_,p2_,p3_,a1);
2489  // zero out the pointer to ensure segfault if used again
2490  member_ = nullptr;
2491  delete this;
2492  return result;
2493  }
2494  }

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