ifw-slm 0.1.2
 
Loading...
Searching...
No Matches
ifw::slm::ActionsLoopClose< LOOP_INDEX > Class Template Reference

#include <actionsLoopClose.hpp>

Inheritance diagram for ifw::slm::ActionsLoopClose< LOOP_INDEX >:
ifw::slm::BaseLoopCloseActions

Public Types

using base_type = BaseLoopCloseActions
 

Public Member Functions

 ActionsLoopClose (const std::string &name, rad::Application &appl, rad::ConfigurableActionMgr &action_mgr, DataContext &data, int loop_index, std::shared_ptr< LoopCompletionHandler > completion_handler)
 
 ~ActionsLoopClose () override
 
void Configure (const std::vector< std::string > &keys) override
 
void Execute (scxml4cpp::Context *c) override
 
void Complete (scxml4cpp::Context *c) override
 
void Abort (scxml4cpp::Context *c) override
 
void CycleError (scxml4cpp::Context *c) override
 
void InstallTimer (scxml4cpp::Context *c) override
 
 ActionsLoopClose (const ActionsLoopClose &)=delete
 
ActionsLoopCloseoperator= (const ActionsLoopClose &)=delete
 
- Public Member Functions inherited from ifw::slm::BaseLoopCloseActions
 BaseLoopCloseActions (const std::string &name, rad::Application &appl, rad::ConfigurableActionMgr &action_mgr, DataContext &data, int loop_index, std::shared_ptr< LoopCompletionHandler > completion_handler=nullptr)
 
virtual ~BaseLoopCloseActions ()=default
 
void Initialize () override
 
void Configure (const std::vector< std::string > &keys) override
 
 BaseLoopCloseActions (const BaseLoopCloseActions &)=delete
 
BaseLoopCloseActionsoperator= (const BaseLoopCloseActions &)=delete
 
template<typename T>
GetLoopParam (const std::string &name) const
 
template<typename T>
GetLoopParam (const std::string &name, const T &default_value) const
 

Additional Inherited Members

- Protected Member Functions inherited from ifw::slm::BaseLoopCloseActions
virtual void OnLoopOpen ()
 
virtual void OnLoopClose ()
 
virtual void OnLoopSuspend ()
 
virtual void OnCycleStart ()
 
virtual void OnCycleComplete (bool success)
 
virtual void OnCycleError ()
 
- Protected Attributes inherited from ifw::slm::BaseLoopCloseActions
rad::Application & m_appl
 
rad::ConfigurableActionMgr & m_action_mgr
 
DataContextm_data
 
int m_loop_index
 
std::shared_ptr< LoopCompletionHandlerm_completion_handler
 
LoopStateData m_loop_state
 

Detailed Description

template<int LOOP_INDEX>
class ifw::slm::ActionsLoopClose< LOOP_INDEX >

Template class for CloseLoop actions with timer-based Trigger event posting. This is instantiated for loops 1-9.

Template Parameters
LOOP_INDEXThe loop index (1-9)

Member Typedef Documentation

◆ base_type

template<int LOOP_INDEX>
using ifw::slm::ActionsLoopClose< LOOP_INDEX >::base_type = BaseLoopCloseActions

Constructor & Destructor Documentation

◆ ActionsLoopClose() [1/2]

template<int LOOP_INDEX>
ifw::slm::ActionsLoopClose< LOOP_INDEX >::ActionsLoopClose ( const std::string & name,
rad::Application & appl,
rad::ConfigurableActionMgr & action_mgr,
DataContext & data,
int loop_index,
std::shared_ptr< LoopCompletionHandler > completion_handler )
inline

Constructor

Parameters
nameAction group name (e.g., "ActionsLoop1CloseLoop")
applRAD application reference (provides io_context and PostEvent)
action_mgrAction manager reference
dataData context reference (for configuration access)
loop_indexLoop index (should match template parameter)

◆ ~ActionsLoopClose()

template<int LOOP_INDEX>
ifw::slm::ActionsLoopClose< LOOP_INDEX >::~ActionsLoopClose ( )
inlineoverride

◆ ActionsLoopClose() [2/2]

template<int LOOP_INDEX>
ifw::slm::ActionsLoopClose< LOOP_INDEX >::ActionsLoopClose ( const ActionsLoopClose< LOOP_INDEX > & )
delete

Member Function Documentation

◆ Abort()

template<int LOOP_INDEX>
void ifw::slm::ActionsLoopClose< LOOP_INDEX >::Abort ( scxml4cpp::Context * c)
inlineoverridevirtual

Reimplemented from ifw::slm::BaseLoopCloseActions.

◆ Complete()

template<int LOOP_INDEX>
void ifw::slm::ActionsLoopClose< LOOP_INDEX >::Complete ( scxml4cpp::Context * c)
inlineoverridevirtual

Reimplemented from ifw::slm::BaseLoopCloseActions.

◆ Configure()

template<int LOOP_INDEX>
void ifw::slm::ActionsLoopClose< LOOP_INDEX >::Configure ( const std::vector< std::string > & keys)
inlineoverride

◆ CycleError()

template<int LOOP_INDEX>
void ifw::slm::ActionsLoopClose< LOOP_INDEX >::CycleError ( scxml4cpp::Context * c)
inlineoverridevirtual

Reimplemented from ifw::slm::BaseLoopCloseActions.

◆ Execute()

template<int LOOP_INDEX>
void ifw::slm::ActionsLoopClose< LOOP_INDEX >::Execute ( scxml4cpp::Context * c)
inlineoverridevirtual

Reimplemented from ifw::slm::BaseLoopCloseActions.

◆ InstallTimer()

template<int LOOP_INDEX>
void ifw::slm::ActionsLoopClose< LOOP_INDEX >::InstallTimer ( scxml4cpp::Context * c)
inlineoverridevirtual

Reimplemented from ifw::slm::BaseLoopCloseActions.

◆ operator=()

template<int LOOP_INDEX>
ActionsLoopClose & ifw::slm::ActionsLoopClose< LOOP_INDEX >::operator= ( const ActionsLoopClose< LOOP_INDEX > & )
delete

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