tesseract  4.0.0-1-g2a2b
_TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 > Class Template Reference

#include <tesscallback.h>

Inheritance diagram for _TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 >:
TessResultCallback3< R, A1, A2, A3 >

Public Types

typedef TessResultCallback3< R, A1, A2, A3 > base
 
typedef R(T::* MemberSignature) (A1, A2, A3)
 

Public Member Functions

 _TessMemberResultCallback_0_3 (T *object, MemberSignature member)
 
virtual R Run (A1 a1, A2 a2, A3 a3)
 
- Public Member Functions inherited from TessResultCallback3< R, A1, A2, A3 >
virtual ~TessResultCallback3 ()
 

Detailed Description

template<bool del, class R, class T, class A1, class A2, class A3>
class _TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 >

Definition at line 5014 of file tesscallback.h.

Member Typedef Documentation

◆ base

template<bool del, class R, class T, class A1, class A2, class A3>
typedef TessResultCallback3<R,A1,A2,A3> _TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 >::base

Definition at line 5016 of file tesscallback.h.

◆ MemberSignature

template<bool del, class R, class T, class A1, class A2, class A3>
typedef R(T::* _TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 >::MemberSignature) (A1, A2, A3)

Definition at line 5017 of file tesscallback.h.

Constructor & Destructor Documentation

◆ _TessMemberResultCallback_0_3()

template<bool del, class R, class T, class A1, class A2, class A3>
_TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 >::_TessMemberResultCallback_0_3 ( T *  object,
MemberSignature  member 
)
inline

Definition at line 5024 of file tesscallback.h.

5026  : object_(object),
5027  member_(member) {
5028  }

Member Function Documentation

◆ Run()

template<bool del, class R, class T, class A1, class A2, class A3>
virtual R _TessMemberResultCallback_0_3< del, R, T, A1, A2, A3 >::Run ( A1  a1,
A2  a2,
A3  a3 
)
inlinevirtual

Implements TessResultCallback3< R, A1, A2, A3 >.

Definition at line 5030 of file tesscallback.h.

5030  {
5031  if (!del) {
5032  R result = (object_->*member_)(a1,a2,a3);
5033  return result;
5034  } else {
5035  R result = (object_->*member_)(a1,a2,a3);
5036  // zero out the pointer to ensure segfault if used again
5037  member_ = nullptr;
5038  delete this;
5039  return result;
5040  }
5041  }

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