CuteHMI - Services (CuteHMI.Services.3)
cutehmi::services::ServiceGroup Class Reference

Service group. More...

#include <cutehmi/services/ServiceGroup.hpp>

Inheritance diagram for cutehmi::services::ServiceGroup:
cutehmi::services::AbstractService QQmlParserStatus cutehmi::services::Serviceable QObject CuteHMI::Services::ServiceGroup

Public Types

enum  EventType { CONDITION_CHECK_EVENT = QEvent::User + 1 , SUBCLASS_EVENT }
 
- Public Types inherited from cutehmi::services::Serviceable
typedef std::function< void(QState &state, const QString &status)> AssignStatusFunction
 

Public Slots

void postConditionCheckEvent () const
 
- Public Slots inherited from cutehmi::services::AbstractService
void start ()
 
void stop ()
 
void activate ()
 

Signals

void startedCountChanged ()
 
void startingCountChanged ()
 
void stoppingCountChanged ()
 
void stoppedCountChanged ()
 
void brokenCountChanged ()
 
void repairingCountChanged ()
 
void evacuatingCountChanged ()
 
void interruptedCountChanged ()
 
void activeCountChanged ()
 
void yieldingCountChanged ()
 
void idlingCountChanged ()
 
- Signals inherited from cutehmi::services::AbstractService
void stopTimeoutChanged ()
 
void startTimeoutChanged ()
 
void repairTimeoutChanged ()
 
void shutdownTimeoutChanged ()
 
void nameChanged ()
 
void statusChanged ()
 
void started ()
 
void stopped ()
 
void activated ()
 
void initialized ()
 This signal is emitted, when service has performed all the initialization tasks and it is ready to be started. More...
 

Public Member Functions

 ServiceGroup (QObject *parent=nullptr)
 
 ~ServiceGroup () override
 
int startedCount () const
 
int startingCount () const
 
int stoppingCount () const
 
int stoppedCount () const
 
int brokenCount () const
 
int repairingCount () const
 
int evacuatingCount () const
 
int interruptedCount () const
 
int activeCount () const
 
int yieldingCount () const
 
int idlingCount () const
 
QQmlListProperty< cutehmi::services::ServiceGroupRuleruleList ()
 
Q_INVOKABLE void appendRule (cutehmi::services::ServiceGroupRule *rule)
 
Q_INVOKABLE void clearRules ()
 
QQmlListProperty< cutehmi::services::AbstractServiceserviceList ()
 
Q_INVOKABLE void appendService (cutehmi::services::AbstractService *service)
 
Q_INVOKABLE void clearServices ()
 
void configureStarting (QState *starting, AssignStatusFunction assignStatus) override
 Configure starting state. More...
 
void configureStarted (QState *active, const QState *idling, const QState *yielding, AssignStatusFunction assignStatus) override
 Configure started state. More...
 
void configureStopping (QState *stopping, AssignStatusFunction assignStatus) override
 Configure stopping state. More...
 
void configureBroken (QState *broken, AssignStatusFunction assignStatus) override
 Configure broken state. More...
 
void configureRepairing (QState *repairing, AssignStatusFunction assignStatus) override
 Configure repairing state. More...
 
void configureEvacuating (QState *evacuating, AssignStatusFunction assignStatus) override
 Configure evacuating state. More...
 
std::unique_ptr< QAbstractTransitiontransitionToStarted () const override
 Transition to started state. More...
 
std::unique_ptr< QAbstractTransitiontransitionToStopped () const override
 Transition to stopped state. More...
 
std::unique_ptr< QAbstractTransitiontransitionToBroken () const override
 Transition to broken state. More...
 
std::unique_ptr< QAbstractTransitiontransitionToYielding () const override
 Transition to yielding state. More...
 
std::unique_ptr< QAbstractTransitiontransitionToIdling () const override
 Transition to idling state. More...
 
void classBegin () override
 
void componentComplete () override
 
- Public Member Functions inherited from cutehmi::services::AbstractService
 ~AbstractService () override
 
int shutdownTimeout () const
 
void setShutdownTimeout (int shutdownTimeout)
 Set shutdown timeout. More...
 
int stopTimeout () const
 
void setStopTimeout (int stopTimeout)
 Set stop timeout. More...
 
int startTimeout () const
 
void setStartTimeout (int startTimeout)
 Set start timeout. More...
 
int repairTimeout () const
 
void setRepairTimeout (int repairTimeout)
 Set repair timeout. More...
 
QString name () const
 
void setName (const QString &name)
 
QString status () const
 
cutehmi::services::StateInterfacestates () const
 Get state interface. More...
 
QQmlListProperty< cutehmi::services::AbstractServiceControllerdefaultControllerList ()
 
QQmlListProperty< cutehmi::services::AbstractServiceControllercontrollerList ()
 
Q_INVOKABLE void appendController (cutehmi::services::AbstractServiceController *controller)
 
Q_INVOKABLE void clearControllers ()
 
- Public Member Functions inherited from QObject
virtual const QMetaObjectmetaObject () const const
 
 QObject (QObject *parent)
 
virtual ~QObject ()
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
QString objectName () const const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
bool blockSignals (bool block)
 
QThreadthread () const const
 
void moveToThread (QThread *targetThread)
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
void killTimer (int id)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
const QObjectListchildren () const const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
void dumpObjectTree () const const
 
void dumpObjectInfo () const const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const const
 
QList< QByteArraydynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
 Q_CLASSINFO (Name, Value)
 
 Q_INTERFACES (...)
 
 Q_PROPERTY (...)
 
 Q_ENUMS (...)
 
 Q_FLAGS (...)
 
 Q_ENUM (...)
 
 Q_FLAG (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG_NS (...)
 
 Q_OBJECT Q_OBJECT
 
 Q_GADGET Q_GADGET
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SLOTS Q_SLOTS
 
 Q_SLOT Q_SLOT
 
 Q_EMIT Q_EMIT
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
virtual void classBegin ()=0
 
virtual void componentComplete ()=0
 
virtual void configureStarting (QState *starting, AssignStatusFunction assignStatus)=0
 Configure starting state. More...
 
virtual void configureStarted (QState *active, const QState *idling, const QState *yielding, AssignStatusFunction assignStatus)=0
 Configure started state. More...
 
virtual void configureStopping (QState *stopping, AssignStatusFunction assignStatus)=0
 Configure stopping state. More...
 
virtual void configureBroken (QState *broken, AssignStatusFunction assignStatus)=0
 Configure broken state. More...
 
virtual void configureRepairing (QState *repairing, AssignStatusFunction assignStatus)=0
 Configure repairing state. More...
 
virtual void configureEvacuating (QState *evacuating, AssignStatusFunction assignStatus)=0
 Configure evacuating state. More...
 
virtual std::unique_ptr< QAbstractTransitiontransitionToStarted () const =0
 Transition to started state. More...
 
virtual std::unique_ptr< QAbstractTransitiontransitionToStopped () const =0
 Transition to stopped state. More...
 
virtual std::unique_ptr< QAbstractTransitiontransitionToBroken () const =0
 Transition to broken state. More...
 
virtual std::unique_ptr< QAbstractTransitiontransitionToYielding () const =0
 Transition to yielding state. More...
 
virtual std::unique_ptr< QAbstractTransitiontransitionToIdling () const =0
 Transition to idling state. More...
 

Static Public Member Functions

static void PostConditionCheckEvent (QStateMachine *stateMachine)
 
- Static Public Member Functions inherited from QObject
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 

Protected Types

typedef QList< ServiceGroupRule * > RulesContainer
 
typedef QList< AbstractService * > ServicesContainer
 
- Protected Types inherited from cutehmi::services::AbstractService
typedef QList< AbstractServiceController * > ControllersContainer
 

Protected Slots

void handleCounters ()
 
- Protected Slots inherited from cutehmi::services::AbstractService
void setStatus (const QString &status)
 

Protected Member Functions

void setStartedCount (int count)
 
void setStartingCount (int count)
 
void setStoppingCount (int count)
 
void setStoppedCount (int count)
 
void setBrokenCount (int count)
 
void setRepairingCount (int count)
 
void setEvacuatingCount (int count)
 
void setInterruptedCount (int count)
 
void setActiveCount (int count)
 
void setYieldingCount (int count)
 
void setIdlingCount (int count)
 
const RulesContainerrules () const
 
RulesContainerrules ()
 
const ServicesContainerservices () const
 
ServicesContainerservices ()
 
Q_SIGNAL void groupBroken ()
 
Q_SIGNAL void groupStarted ()
 
Q_SIGNAL void groupStopped ()
 
- Protected Member Functions inherited from cutehmi::services::AbstractService
 AbstractService (StateInterface *stateInterface, const QString &status, QObject *parent=nullptr, const ControllersContainer *defaultControllers=&DefaultControllers())
 Constructor. More...
 
const ControllersContainercontrollers () const
 
ControllersContainercontrollers ()
 
- Protected Member Functions inherited from QObject
QObjectsender () const const
 
int senderSignalIndex () const const
 
int receivers (const char *signal) const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
- Protected Member Functions inherited from cutehmi::services::Serviceable
 Serviceable ()=default
 
virtual ~Serviceable ()=default
 
 Serviceable (const Serviceable &other)=default
 
Serviceableoperator= (const Serviceable &other)=default
 

Static Protected Member Functions

static const ControllersContainerDefaultControllers ()
 
- Static Protected Member Functions inherited from cutehmi::services::AbstractService
static const ControllersContainerDefaultControllers ()
 

Properties

int startedCount
 
int startingCount
 
int stoppingCount
 
int stoppedCount
 
int brokenCount
 
int repairingCount
 
int evacuatingCount
 
int interruptedCount
 
int activeCount
 
int yieldingCount
 
int idlingCount
 
QQmlListProperty< cutehmi::services::ServiceGroupRulerules
 
QQmlListProperty< cutehmi::services::AbstractServiceservices
 
- Properties inherited from cutehmi::services::AbstractService
int shutdownTimeout
 
int stopTimeout
 
int startTimeout
 
int repairTimeout
 
QString name
 
QString status
 
cutehmi::services::StateInterfacestates
 
QQmlListProperty< cutehmi::services::AbstractServiceControllerdefaultControllers
 
QQmlListProperty< cutehmi::services::AbstractServiceControllercontrollers
 
- Properties inherited from QObject
 objectName
 

Additional Inherited Members

- Public Attributes inherited from QObject
typedef QObjectList
 
- Static Public Attributes inherited from cutehmi::services::AbstractService
static constexpr int INITIAL_SHUTDOWN_TIMEOUT = 180000
 
static constexpr int INITIAL_STOP_TIMEOUT = 30000
 
static constexpr int INITIAL_START_TIMEOUT = 30000
 
static constexpr int INITIAL_REPAIR_TIMEOUT = 30000
 
static constexpr const char * INITIAL_NAME = "Unnamed Service"
 

Detailed Description

Service group.

Service group allows to collectively manage a group of services. By its most basic principle, whenever any of start(), stop() or activate() slots is called on the group it forwards the call to the services managed by it. This basic behavior can be customized by the use of rules.

Service group is a service by itself, so it makes use of the state machine to handle propagation of slot calls. Internally for each service it creates substates, which are a children of its own states configured via Serviceable interface. These substates are executed in parallel, so for example all services will be started at once. However if some service group rule can be applied to a particular service, then additional subsequent states are added to the substate created for a particular service and the rule defines the transition between them.

Member Typedef Documentation

◆ RulesContainer

◆ ServicesContainer

Member Enumeration Documentation

◆ EventType

Enumerator
CONDITION_CHECK_EVENT 
SUBCLASS_EVENT 

Constructor & Destructor Documentation

◆ ServiceGroup()

cutehmi::services::ServiceGroup::ServiceGroup ( QObject parent = nullptr)
explicit

◆ ~ServiceGroup()

cutehmi::services::ServiceGroup::~ServiceGroup ( )
override

Member Function Documentation

◆ activeCount()

int cutehmi::services::ServiceGroup::activeCount ( ) const

◆ activeCountChanged

void cutehmi::services::ServiceGroup::activeCountChanged ( )
signal

◆ appendRule()

void cutehmi::services::ServiceGroup::appendRule ( cutehmi::services::ServiceGroupRule rule)

◆ appendService()

void cutehmi::services::ServiceGroup::appendService ( cutehmi::services::AbstractService service)

◆ brokenCount()

int cutehmi::services::ServiceGroup::brokenCount ( ) const

◆ brokenCountChanged

void cutehmi::services::ServiceGroup::brokenCountChanged ( )
signal

◆ classBegin()

void cutehmi::services::ServiceGroup::classBegin ( )
overridevirtual

Implements QQmlParserStatus.

◆ clearRules()

void cutehmi::services::ServiceGroup::clearRules ( )

◆ clearServices()

void cutehmi::services::ServiceGroup::clearServices ( )

◆ componentComplete()

void cutehmi::services::ServiceGroup::componentComplete ( )
overridevirtual

Implements QQmlParserStatus.

◆ configureBroken()

void cutehmi::services::ServiceGroup::configureBroken ( QState broken,
AssignStatusFunction  assignStatus 
)
overridevirtual

Configure broken state.

Parameters
brokenstate.
assignStatusa function callback that allows one to associate the state with custom service status.

Implements cutehmi::services::Serviceable.

◆ configureEvacuating()

void cutehmi::services::ServiceGroup::configureEvacuating ( QState evacuating,
AssignStatusFunction  assignStatus 
)
overridevirtual

Configure evacuating state.

Parameters
evacuatingstate.
assignStatusa function callback that allows one to associate the state with custom service status.

Implements cutehmi::services::Serviceable.

◆ configureRepairing()

void cutehmi::services::ServiceGroup::configureRepairing ( QState repairing,
AssignStatusFunction  assignStatus 
)
overridevirtual

Configure repairing state.

Parameters
repairingstate.
assignStatusa function callback that allows one to associate the state with custom service status.

Implements cutehmi::services::Serviceable.

◆ configureStarted()

void cutehmi::services::ServiceGroup::configureStarted ( QState active,
const QState idling,
const QState yielding,
AssignStatusFunction  assignStatus 
)
overridevirtual

Configure started state.

Started state is not directly accessible. Intead its child states shall be configured.

Parameters
activeactive state. In this state any resource-hungry and intense operations shall be performed. Serviceable object may add child states to active state for its own use.
idlingidling state. In this state a serviceable should not perform any intense operations or consume resources. Serviceable decides by itself when to enter idling state. Some objects may never activate the transition to idling state. When serviceable object is ready to become active again it should signal it by activating transitionToIdling(). No child states can be added to idling state.
yieldingyielding state. In this state a service should not perform any intense operations or consume resources. It should just wait until it is activated, therefore no child states can be added to yielding state.
assignStatusa function callback that allows one to associate the state with custom service status.

Implements cutehmi::services::Serviceable.

◆ configureStarting()

void cutehmi::services::ServiceGroup::configureStarting ( QState starting,
AssignStatusFunction  assignStatus 
)
overridevirtual

Configure starting state.

Parameters
startingstate.
assignStatusa function callback that allows one to associate the state with custom service status.

Implements cutehmi::services::Serviceable.

◆ configureStopping()

void cutehmi::services::ServiceGroup::configureStopping ( QState stopping,
AssignStatusFunction  assignStatus 
)
overridevirtual

Configure stopping state.

Parameters
stoppingstate.
assignStatusa function callback that allows one to associate the state with custom service status.

Implements cutehmi::services::Serviceable.

◆ DefaultControllers()

const AbstractService::ControllersContainer & cutehmi::services::ServiceGroup::DefaultControllers ( )
staticprotected

◆ evacuatingCount()

int cutehmi::services::ServiceGroup::evacuatingCount ( ) const

◆ evacuatingCountChanged

void cutehmi::services::ServiceGroup::evacuatingCountChanged ( )
signal

◆ groupBroken()

Q_SIGNAL void cutehmi::services::ServiceGroup::groupBroken ( )
protected

◆ groupStarted()

Q_SIGNAL void cutehmi::services::ServiceGroup::groupStarted ( )
protected

◆ groupStopped()

Q_SIGNAL void cutehmi::services::ServiceGroup::groupStopped ( )
protected

◆ handleCounters

void cutehmi::services::ServiceGroup::handleCounters ( )
protectedslot

◆ idlingCount()

int cutehmi::services::ServiceGroup::idlingCount ( ) const

◆ idlingCountChanged

void cutehmi::services::ServiceGroup::idlingCountChanged ( )
signal

◆ interruptedCount()

int cutehmi::services::ServiceGroup::interruptedCount ( ) const

◆ interruptedCountChanged

void cutehmi::services::ServiceGroup::interruptedCountChanged ( )
signal

◆ postConditionCheckEvent

void cutehmi::services::ServiceGroup::postConditionCheckEvent ( ) const
slot

◆ PostConditionCheckEvent()

void cutehmi::services::ServiceGroup::PostConditionCheckEvent ( QStateMachine stateMachine)
static

◆ repairingCount()

int cutehmi::services::ServiceGroup::repairingCount ( ) const

◆ repairingCountChanged

void cutehmi::services::ServiceGroup::repairingCountChanged ( )
signal

◆ ruleList()

QQmlListProperty< ServiceGroupRule > cutehmi::services::ServiceGroup::ruleList ( )

◆ rules() [1/2]

RulesContainer & cutehmi::services::ServiceGroup::rules ( )
protected

◆ rules() [2/2]

const ServiceGroup::RulesContainer & cutehmi::services::ServiceGroup::rules ( ) const
protected

◆ serviceList()

QQmlListProperty< AbstractService > cutehmi::services::ServiceGroup::serviceList ( )

◆ services() [1/2]

ServicesContainer & cutehmi::services::ServiceGroup::services ( )
protected

◆ services() [2/2]

const ServiceGroup::ServicesContainer & cutehmi::services::ServiceGroup::services ( ) const
protected

◆ setActiveCount()

void cutehmi::services::ServiceGroup::setActiveCount ( int  count)
protected

◆ setBrokenCount()

void cutehmi::services::ServiceGroup::setBrokenCount ( int  count)
protected

◆ setEvacuatingCount()

void cutehmi::services::ServiceGroup::setEvacuatingCount ( int  count)
protected

◆ setIdlingCount()

void cutehmi::services::ServiceGroup::setIdlingCount ( int  count)
protected

◆ setInterruptedCount()

void cutehmi::services::ServiceGroup::setInterruptedCount ( int  count)
protected

◆ setRepairingCount()

void cutehmi::services::ServiceGroup::setRepairingCount ( int  count)
protected

◆ setStartedCount()

void cutehmi::services::ServiceGroup::setStartedCount ( int  count)
protected

◆ setStartingCount()

void cutehmi::services::ServiceGroup::setStartingCount ( int  count)
protected

◆ setStoppedCount()

void cutehmi::services::ServiceGroup::setStoppedCount ( int  count)
protected

◆ setStoppingCount()

void cutehmi::services::ServiceGroup::setStoppingCount ( int  count)
protected

◆ setYieldingCount()

void cutehmi::services::ServiceGroup::setYieldingCount ( int  count)
protected

◆ startedCount()

int cutehmi::services::ServiceGroup::startedCount ( ) const

◆ startedCountChanged

void cutehmi::services::ServiceGroup::startedCountChanged ( )
signal

◆ startingCount()

int cutehmi::services::ServiceGroup::startingCount ( ) const

◆ startingCountChanged

void cutehmi::services::ServiceGroup::startingCountChanged ( )
signal

◆ stoppedCount()

int cutehmi::services::ServiceGroup::stoppedCount ( ) const

◆ stoppedCountChanged

void cutehmi::services::ServiceGroup::stoppedCountChanged ( )
signal

◆ stoppingCount()

int cutehmi::services::ServiceGroup::stoppingCount ( ) const

◆ stoppingCountChanged

void cutehmi::services::ServiceGroup::stoppingCountChanged ( )
signal

◆ transitionToBroken()

std::unique_ptr< QAbstractTransition > cutehmi::services::ServiceGroup::transitionToBroken ( ) const
overridevirtual

Transition to broken state.

Returns
transition to broken state. It is allowed to return nullptr. In such case service will never enter broken or repairing states.

Implements cutehmi::services::Serviceable.

◆ transitionToIdling()

std::unique_ptr< QAbstractTransition > cutehmi::services::ServiceGroup::transitionToIdling ( ) const
overridevirtual

Transition to idling state.

Returns
transition to idling state. It is allowed to return nullptr. In such case service will not enter idling state and will remain persistently active. This will make service impolite.

Implements cutehmi::services::Serviceable.

◆ transitionToStarted()

std::unique_ptr< QAbstractTransition > cutehmi::services::ServiceGroup::transitionToStarted ( ) const
overridevirtual

Transition to started state.

Returns
transition to started state. It is allowed to return nullptr. In such case transition from starting to started state will be immediate.

Implements cutehmi::services::Serviceable.

◆ transitionToStopped()

std::unique_ptr< QAbstractTransition > cutehmi::services::ServiceGroup::transitionToStopped ( ) const
overridevirtual

Transition to stopped state.

Returns
transition to stopped state. It is allowed to return nullptr. In such case transition from stopping to stopped state will be immediate.

Implements cutehmi::services::Serviceable.

◆ transitionToYielding()

std::unique_ptr< QAbstractTransition > cutehmi::services::ServiceGroup::transitionToYielding ( ) const
overridevirtual

Transition to yielding state.

Returns
transition to yielding state. It is allowed to return nullptr. In such case service will skip yielding state and immediately become active. This will make service impolite.

Implements cutehmi::services::Serviceable.

◆ yieldingCount()

int cutehmi::services::ServiceGroup::yieldingCount ( ) const

◆ yieldingCountChanged

void cutehmi::services::ServiceGroup::yieldingCountChanged ( )
signal

Property Documentation

◆ activeCount

int cutehmi::services::ServiceGroup::activeCount
read

◆ brokenCount

int cutehmi::services::ServiceGroup::brokenCount
read

◆ evacuatingCount

int cutehmi::services::ServiceGroup::evacuatingCount
read

◆ idlingCount

int cutehmi::services::ServiceGroup::idlingCount
read

◆ interruptedCount

int cutehmi::services::ServiceGroup::interruptedCount
read

◆ repairingCount

int cutehmi::services::ServiceGroup::repairingCount
read

◆ rules

ServiceGroup::RulesContainer & cutehmi::services::ServiceGroup::rules
read

◆ services

ServiceGroup::ServicesContainer & cutehmi::services::ServiceGroup::services
read

◆ startedCount

int cutehmi::services::ServiceGroup::startedCount
read

◆ startingCount

int cutehmi::services::ServiceGroup::startingCount
read

◆ stoppedCount

int cutehmi::services::ServiceGroup::stoppedCount
read

◆ stoppingCount

int cutehmi::services::ServiceGroup::stoppingCount
read

◆ yieldingCount

int cutehmi::services::ServiceGroup::yieldingCount
read