SMACC
Loading...
Searching...
No Matches
Public Member Functions | List of all members
smacc::utils::Bind< 3 > Struct Reference

#include <smacc_state_machine_impl.h>

Collaboration diagram for smacc::utils::Bind< 3 >:
Collaboration graph

Public Member Functions

template<typename TSmaccSignal , typename TMemberFunctionPrototype , typename TSmaccObjectType >
boost::signals2::connection bindaux (TSmaccSignal &signal, TMemberFunctionPrototype callback, TSmaccObjectType *object, std::shared_ptr< CallbackCounterSemaphore > callbackCounter)
 

Detailed Description

Definition at line 300 of file smacc_state_machine_impl.h.

Member Function Documentation

◆ bindaux()

template<typename TSmaccSignal , typename TMemberFunctionPrototype , typename TSmaccObjectType >
boost::signals2::connection smacc::utils::Bind< 3 >::bindaux ( TSmaccSignal &  signal,
TMemberFunctionPrototype  callback,
TSmaccObjectType *  object,
std::shared_ptr< CallbackCounterSemaphore callbackCounter 
)
inline

Definition at line 303 of file smacc_state_machine_impl.h.

304 {
305 return signal.connect([=](auto a1, auto a2) {
306 if(callbackCounter == nullptr)
307 {
308 (object->*callback)(a1,a2);
309 }
310 else if (callbackCounter->acquire())
311 {
312 (object->*callback)(a1,a2);
313 callbackCounter->release();
314
315 }
316 });
317 }

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