The Gaudi Framework  master (ff829712)
Loading...
Searching...
No Matches
Gaudi::IFSMCallbackHolder Struct Referenceabstract

Interface defining a CallBack registration functionality based on the State Machine of Gaudi. More...

#include </builds/gaudi/Gaudi/GaudiKernel/include/Gaudi/Interfaces/IFSMCallbackHolder.h>

Inheritance diagram for Gaudi::IFSMCallbackHolder:
Collaboration diagram for Gaudi::IFSMCallbackHolder:

Public Types

using CallBack = std::function<void()>
 
- Public Types inherited from IInterface
enum class  Status : StatusCode::code_t {
  FAILURE = 0 , SUCCESS = 1 , NO_INTERFACE , VERSMISMATCH ,
  LAST_ERROR
}
 Return status. More...
 
using iid = Gaudi::InterfaceId<IInterface, 0, 0>
 Interface ID.
 
using ext_iids = Gaudi::interface_list<iid>
 Extra interfaces.
 

Public Member Functions

 DeclareInterfaceID (IFSMCallbackHolder, 1, 0)
 
virtual void registerCallBack (StateMachine::Transition, CallBack)=0
 
- Public Member Functions inherited from IInterface
template<Gaudi::IsInterface TARGET>
TARGET * cast ()
 
template<Gaudi::IsInterface TARGET>
TARGET const * cast () const
 
template<typename TARGET>
requires ( !Gaudi::IsInterface<TARGET> )
TARGET * cast ()
 
template<typename TARGET>
requires ( !Gaudi::IsInterface<TARGET> )
TARGET const * cast () const
 
virtual std::vector< std::string > getInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces.
 
virtual unsigned long addRef () const =0
 Increment the reference count of Interface instance.
 
virtual unsigned long release () const =0
 Release Interface instance.
 
virtual unsigned long refCount () const =0
 Current reference count.
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance.
 
virtual ~IInterface ()=default
 Virtual destructor.
 
virtual void const * i_cast (const InterfaceID &) const =0
 
void * i_cast (const InterfaceID &iid)
 

Additional Inherited Members

- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface.
 
- Protected Member Functions inherited from IInterface
virtual unsigned long decRef () const =0
 Decrement reference count and return the new reference count.
 

Detailed Description

Interface defining a CallBack registration functionality based on the State Machine of Gaudi.

Callbacks are std::function which can be registered for each transition. They will then be called automatically just after the transition took place in the order in which they have been registered.

Definition at line 22 of file IFSMCallbackHolder.h.

Member Typedef Documentation

◆ CallBack

using Gaudi::IFSMCallbackHolder::CallBack = std::function<void()>

Definition at line 27 of file IFSMCallbackHolder.h.

Member Function Documentation

◆ DeclareInterfaceID()

Gaudi::IFSMCallbackHolder::DeclareInterfaceID ( IFSMCallbackHolder ,
1 ,
0  )

◆ registerCallBack()

virtual void Gaudi::IFSMCallbackHolder::registerCallBack ( StateMachine::Transition ,
CallBack  )
pure virtual

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