diff options
author | Fawzi Mohamed <fawzi.mohamed@theqtcompany.com> | 2015-02-17 17:37:32 +0100 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@theqtcompany.com> | 2015-03-19 12:46:37 +0000 |
commit | e7feb956280105113b3e58f12e5f32f54199a95a (patch) | |
tree | ccfa134ed3cea580c91dcc6881058e04b3c24ed0 /src/corelib/statemachine/qstatemachine_p.h | |
parent | dcf0ececbf167502ac9943c6435bb9ddeeb29d5e (diff) |
qstatemachine: add methods detect when a machine has processed an event
currently when adding an event it is not possible to know when processing
it has finished.
In particular if the event is ignored no method is called.
Adding virtual methods to the private implementation (binary compatibility).
These methods allow for extended automatic testing of the state machines.
Change-Id: Ib2d4caccc90ecc126e362d52c3558f5f9f846452
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Diffstat (limited to 'src/corelib/statemachine/qstatemachine_p.h')
-rw-r--r-- | src/corelib/statemachine/qstatemachine_p.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/corelib/statemachine/qstatemachine_p.h b/src/corelib/statemachine/qstatemachine_p.h index 3a93c47c5b..b7f2644255 100644 --- a/src/corelib/statemachine/qstatemachine_p.h +++ b/src/corelib/statemachine/qstatemachine_p.h @@ -123,6 +123,10 @@ public: QAbstractTransition *createInitialTransition() const; void microstep(QEvent *event, const QList<QAbstractTransition*> &transitionList); + virtual void noMicrostep(); + virtual void processedPendingEvents(bool didChange); + virtual void beginMacrostep(); + virtual void endMacrostep(bool didChange); bool isPreempted(const QAbstractState *s, const QSet<QAbstractTransition*> &transitions) const; QSet<QAbstractTransition*> selectTransitions(QEvent *event) const; void exitStates(QEvent *event, const QList<QAbstractState *> &statesToExit_sorted, |