HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TfPyPolymorphic< Derived > Struct Template Reference

#include <pyPolymorphic.h>

+ Inheritance diagram for TfPyPolymorphic< Derived >:

Public Types

typedef TfPyPolymorphic< Derived > This
 
typedef TfPyOverride Override
 

Public Member Functions

Override GetOverride (char const *func) const
 
Override GetPureOverride (char const *func) const
 
template<typename Ret >
TfPyCall< Ret > CallPureVirtual (char const *func) const
 
template<class Ret , class Cls , typename... Arg>
std::function< Ret(Arg...)> CallVirtual (char const *fname, Ret(Cls::*defaultImpl)(Arg...))
 
template<class Ret , class Cls , typename... Arg>
std::function< Ret(Arg...)> CallVirtual (char const *fname, Ret(Cls::*defaultImpl)(Arg...) const) const
 
template<class Ret , class Cls , typename... Args>
std::function< Ret(Args...)> CallVirtual (char const *fname, Ret(Cls::*defaultImpl)(Args...))
 
template<class Ret , class Cls , typename... Args>
std::function< Ret(Args...)> CallVirtual (char const *fname, Ret(Cls::*defaultImpl)(Args...) const) const
 

Protected Member Functions

virtual ~TfPyPolymorphic ()
 

Detailed Description

template<typename Derived>
struct TfPyPolymorphic< Derived >

Definition at line 52 of file pyPolymorphic.h.

Member Typedef Documentation

template<typename Derived >
typedef TfPyOverride TfPyPolymorphic< Derived >::Override

Definition at line 57 of file pyPolymorphic.h.

template<typename Derived >
typedef TfPyPolymorphic<Derived> TfPyPolymorphic< Derived >::This

Definition at line 56 of file pyPolymorphic.h.

Constructor & Destructor Documentation

template<typename Derived >
TfPyPolymorphic< Derived >::~TfPyPolymorphic ( )
protectedvirtual

Definition at line 191 of file pyPolymorphic.h.

Member Function Documentation

template<typename Derived >
template<typename Ret >
TfPyCall<Ret> TfPyPolymorphic< Derived >::CallPureVirtual ( char const *  func) const
inline

Definition at line 142 of file pyPolymorphic.h.

template<typename Derived >
template<class Ret , class Cls , typename... Arg>
std::function<Ret (Arg...)> TfPyPolymorphic< Derived >::CallVirtual ( char const *  fname,
Ret(Cls::*)(Arg...)  defaultImpl 
)
template<typename Derived >
template<class Ret , class Cls , typename... Arg>
std::function<Ret (Arg...)> TfPyPolymorphic< Derived >::CallVirtual ( char const *  fname,
Ret(Cls::*)(Arg...) const  defaultImpl 
) const
template<typename Derived >
template<class Ret , class Cls , typename... Args>
std::function<Ret (Args...)> TfPyPolymorphic< Derived >::CallVirtual ( char const *  fname,
Ret(Cls::*)(Args...)  defaultImpl 
)
inline

Definition at line 199 of file pyPolymorphic.h.

template<typename Derived >
template<class Ret , class Cls , typename... Args>
std::function<Ret (Args...)> TfPyPolymorphic< Derived >::CallVirtual ( char const *  fname,
Ret(Cls::*)(Args...) const  defaultImpl 
) const
inline

Definition at line 216 of file pyPolymorphic.h.

template<typename Derived >
Override TfPyPolymorphic< Derived >::GetOverride ( char const *  func) const
inline

Definition at line 59 of file pyPolymorphic.h.

template<typename Derived >
Override TfPyPolymorphic< Derived >::GetPureOverride ( char const *  func) const
inline

Definition at line 124 of file pyPolymorphic.h.


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