tesseract  4.1.1
_TessMemberResultCallback_0_0< del, R, T > Class Template Reference

#include <tesscallback.h>

Inheritance diagram for _TessMemberResultCallback_0_0< del, R, T >:
TessResultCallback< R >

Public Types

using base = TessResultCallback< R >
 
using MemberSignature = R(T::*)()
 

Public Member Functions

 _TessMemberResultCallback_0_0 (T *object, MemberSignature member)
 
Run () override
 
- Public Member Functions inherited from TessResultCallback< R >
virtual ~TessResultCallback ()=default
 

Detailed Description

template<bool del, class R, class T>
class _TessMemberResultCallback_0_0< del, R, T >

Definition at line 36 of file tesscallback.h.

Member Typedef Documentation

◆ base

template<bool del, class R, class T>
using _TessMemberResultCallback_0_0< del, R, T >::base = TessResultCallback<R>

Definition at line 38 of file tesscallback.h.

◆ MemberSignature

template<bool del, class R, class T>
using _TessMemberResultCallback_0_0< del, R, T >::MemberSignature = R (T::*)()

Definition at line 39 of file tesscallback.h.

Constructor & Destructor Documentation

◆ _TessMemberResultCallback_0_0()

template<bool del, class R, class T>
_TessMemberResultCallback_0_0< del, R, T >::_TessMemberResultCallback_0_0 ( T *  object,
MemberSignature  member 
)
inline

Definition at line 46 of file tesscallback.h.

47  : object_(object), member_(member) {}

Member Function Documentation

◆ Run()

template<bool del, class R, class T>
R _TessMemberResultCallback_0_0< del, R, T >::Run ( )
inlineoverridevirtual

Implements TessResultCallback< R >.

Definition at line 49 of file tesscallback.h.

49  {
50  if (!del) {
51  R result = (object_->*member_)();
52  return result;
53  }
54  R result = (object_->*member_)();
55  // zero out the pointer to ensure segfault if used again
56  member_ = nullptr;
57  delete this;
58  return result;
59  }

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