Minecraft Community Edition 0.1.0
Loading...
Searching...
No Matches
mce::ThreadMemberFunctorWithArgs< C, Args > Struct Template Reference

Adapter that wraps a member function with arbitrary arguments. More...

#include <Thread.hpp>

Inheritance diagram for mce::ThreadMemberFunctorWithArgs< C, Args >:
mce::ThreadFunc

Public Member Functions

 ThreadMemberFunctorWithArgs (void(C::*function)(Args...), C *object, Args &&... args)
 Construct with member function pointer, target object and arguments.
virtual void run () override
 Invoke the stored member function forwarding the stored arguments.
Public Member Functions inherited from mce::ThreadFunc
virtual ~ThreadFunc ()
 Virtual destructor to allow safe deletion via base pointer.

Public Attributes

void(C::* functor )(Args...)
 Pointer to the member function to invoke.
C * object
 Pointer to the object instance used when invoking the member function.
std::tuple< Args... > args
 Tuple holding the arguments to forward to the member function.

Detailed Description

template<typename C, typename... Args>
struct mce::ThreadMemberFunctorWithArgs< C, Args >

Adapter that wraps a member function with arbitrary arguments.

Template Parameters
CClass type that owns the member function.
ArgsTypes of the arguments to forward when invoking the member function.

Constructor & Destructor Documentation

◆ ThreadMemberFunctorWithArgs()

template<typename C, typename... Args>
mce::ThreadMemberFunctorWithArgs< C, Args >::ThreadMemberFunctorWithArgs ( void(C::* function )(Args...),
C * object,
Args &&... args )
inline

Construct with member function pointer, target object and arguments.

Parameters
functionMember function pointer to call.
objectTarget object on which to call the member function.
argsArguments to forward when invoking the member function.

Member Function Documentation

◆ run()

template<typename C, typename... Args>
virtual void mce::ThreadMemberFunctorWithArgs< C, Args >::run ( )
inlineoverridevirtual

Invoke the stored member function forwarding the stored arguments.

Implements mce::ThreadFunc.


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