SMACC2
Loading...
Searching...
No Matches
Public Member Functions | List of all members
smacc2::utils::Bind< 2 > Struct Reference

#include <smacc_state_machine_impl.hpp>

Collaboration diagram for smacc2::utils::Bind< 2 >:
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 337 of file smacc_state_machine_impl.hpp.

Member Function Documentation

◆ bindaux()

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

Definition at line 340 of file smacc_state_machine_impl.hpp.

343 {
344 return signal.connect(
345 [=](auto a1)
346 {
347 if (callbackCounter == nullptr)
348 {
349 return (object->*callback)(a1);
350 }
351 else if (callbackCounter->acquire())
352 {
353 (object->*callback)(a1);
354 callbackCounter->release();
355 }
356 });
357 }

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