NAME
A member function of omni::event
omni::event::detach
A member function of omni::event
#include <omni/delegate/0.hpp>
template < class T, Ret (T::*fnptr)() > void omni::event::detach(const T *const obj)
DESCRIPTION
Removes the last attached delegate that matches the signature, method and object of the delegate being passed in, subsequently calling that delegates destructor. If there is no match, nothing happens and no errors are thrown.
top
Removes the last attached delegate that matches the signature, method and object of the delegate being passed in, subsequently calling that delegates destructor. If there is no match, nothing happens and no errors are thrown.
top
PARAMETERS
top
obj
- The instance of the class to reference T
- The type of class to associate with the delegate fnptr
- The function to detach
top
CONSIDERATIONS
If the OMNI_SAFE_EVENT defines are not enabled, it is undefined if this event is invoked and edited at the same
top
If the OMNI_SAFE_EVENT defines are not enabled, it is undefined if this event is invoked and edited at the same
time
; i.e. a race condition can occur if you detach to an event from one thread while invoking from another.
top
NOTES
See the notes on
top
See the notes on
omni::delegate::~delegate
about the implications regarding destruction of the delegate class while a bound function is still running.
top