TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 > Class Template Reference

#include <common.h>

Public Types

typedef void(Class::* MethodType )(Arg1 arg1, Arg2 arg2)
 

Public Member Functions

 MethodClosure2 (Class *object, MethodType method, bool self_deleting, Arg1 arg1, Arg2 arg2)
 
 ~MethodClosure2 ()
 
void Run ()
 
- Public Member Functions inherited from google::protobuf::Closure
 Closure ()
 
virtual ~Closure ()
 

Private Attributes

Class * object_
 
MethodType method_
 
bool self_deleting_
 
Arg1 arg1_
 
Arg2 arg2_
 

Member Typedef Documentation

template<typename Class, typename Arg1, typename Arg2>
typedef void(Class::* google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::MethodType)(Arg1 arg1, Arg2 arg2)

Constructor & Destructor Documentation

template<typename Class, typename Arg1, typename Arg2>
google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::MethodClosure2 ( Class *  object,
MethodType  method,
bool  self_deleting,
Arg1  arg1,
Arg2  arg2 
)
inline
984  : object_(object), method_(method), self_deleting_(self_deleting),
985  arg1_(arg1), arg2_(arg2) {}
Arg2 arg2_
Definition: common.h:999
bool self_deleting_
Definition: common.h:997
MethodType method_
Definition: common.h:996
Arg1 arg1_
Definition: common.h:998
Class * object_
Definition: common.h:995
template<typename Class, typename Arg1, typename Arg2>
google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::~MethodClosure2 ( )
inline
986 {}

Member Function Documentation

template<typename Class, typename Arg1, typename Arg2>
void google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::Run ( )
inlinevirtual

Implements google::protobuf::Closure.

988  {
989  bool needs_delete = self_deleting_; // read in case callback deletes
990  (object_->*method_)(arg1_, arg2_);
991  if (needs_delete) delete this;
992  }
Arg2 arg2_
Definition: common.h:999
bool self_deleting_
Definition: common.h:997
MethodType method_
Definition: common.h:996
Arg1 arg1_
Definition: common.h:998
Class * object_
Definition: common.h:995

Member Data Documentation

template<typename Class, typename Arg1, typename Arg2>
Arg1 google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::arg1_
private
template<typename Class, typename Arg1, typename Arg2>
Arg2 google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::arg2_
private
template<typename Class, typename Arg1, typename Arg2>
MethodType google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::method_
private
template<typename Class, typename Arg1, typename Arg2>
Class* google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::object_
private
template<typename Class, typename Arg1, typename Arg2>
bool google::protobuf::internal::MethodClosure2< Class, Arg1, Arg2 >::self_deleting_
private

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