FINAL CUT
Public Types | Public Member Functions | List of all members
finalcut::FCallback Class Reference

Public Types

template<typename T >
using enable_if_ObjectPointer_t = std::enable_if_t< ! std::is_member_function_pointer< T >::value &&! std::is_function< std::remove_pointer_t< T > >::value &&! std::is_function< T >::value &&std::is_pointer< T >::value &&std::is_object< T >::value &&! std::is_class< T >::value, std::nullptr_t >
 
template<typename T >
using enable_if_ClassObject_t = std::enable_if_t< ! std::is_member_function_pointer< T >::value &&! std::is_function< std::remove_pointer_t< T > >::value &&! std::is_function< T >::value &&! std::is_pointer< T >::value &&std::is_object< T >::value &&std::is_class< T >::value, std::nullptr_t >
 
template<typename T >
using enable_if_MemberFunctionPointer_t = std::enable_if_t< std::is_member_function_pointer< T >::value &&! std::is_function< std::remove_pointer_t< T > >::value &&! std::is_function< T >::value &&! std::is_pointer< T >::value &&std::is_object< T >::value &&! std::is_class< T >::value, std::nullptr_t >
 
template<typename T >
using enable_if_FunctionPointer_t = std::enable_if_t< ! std::is_member_function_pointer< T >::value &&std::is_function< std::remove_pointer_t< T > >::value &&! std::is_function< T >::value &&std::is_pointer< T >::value &&std::is_object< T >::value &&! std::is_class< T >::value, std::nullptr_t >
 
template<typename T >
using enable_if_FunctionReference_t = std::enable_if_t< ! std::is_member_function_pointer< T >::value &&std::is_function< std::remove_pointer_t< T > >::value &&std::is_function< T >::value &&! std::is_pointer< T >::value &&! std::is_object< T >::value &&! std::is_class< T >::value, std::nullptr_t >
 

Public Member Functions

 FCallback (const FCallback &)=delete
 
auto operator= (const FCallback &) -> FCallback &=delete
 
auto getClassName () const -> FString
 
auto getCallbackCount () const -> std::size_t
 
template<typename Object , typename Function , enable_if_ObjectPointer_t< Object > = nullptr, enable_if_MemberFunctionPointer_t< Function > = nullptr, typename... Args>
void addCallback (FString &&cb_signal, Object &&cb_instance, Function &&cb_member, Args &&... args) noexcept
 
template<typename Object , typename Function , enable_if_ObjectPointer_t< Object > = nullptr, enable_if_ClassObject_t< Function > = nullptr, typename... Args>
void addCallback (FString &&cb_signal, Object &&cb_instance, Function &&cb_function, Args &&... args) noexcept
 
template<typename Function , enable_if_ClassObject_t< Function > = nullptr, typename... Args>
void addCallback (FString &&cb_signal, Function &&cb_function, Args &&... args) noexcept
 
template<typename Function , enable_if_ClassObject_t< Function > = nullptr, typename... Args>
void addCallback (FString &&cb_signal, Function &cb_function, Args &&... args) noexcept
 
template<typename Function , enable_if_FunctionReference_t< Function > = nullptr, typename... Args>
void addCallback (FString &&cb_signal, Function &cb_function, Args &&... args) noexcept
 
template<typename Function , enable_if_FunctionPointer_t< Function > = nullptr, typename... Args>
void addCallback (FString &&cb_signal, Function &&cb_function, Args &&... args) noexcept
 
template<typename Object , enable_if_ObjectPointer_t< Object > = nullptr>
void delCallback (Object &&cb_instance) noexcept
 
void delCallback (const FString &cb_signal)
 
template<typename Object , enable_if_ObjectPointer_t< Object > = nullptr>
void delCallback (const FString &cb_signal, Object &&cb_instance) noexcept
 
template<typename FunctionPtr , enable_if_FunctionPointer_t< FunctionPtr > = nullptr>
void delCallback (FunctionPtr &&cb_func_ptr) noexcept
 
template<typename Function , enable_if_FunctionReference_t< Function > = nullptr>
void delCallback (const Function &cb_function)
 
void delCallback ()
 
void emitCallback (const FString &emit_signal) const
 

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