You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
3.2 KiB
C
100 lines
3.2 KiB
C
//$file${.::app.h} vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
|
|
//
|
|
// Model: real-time.qm
|
|
// File: ${.::app.h}
|
|
//
|
|
// This code has been generated by QM 7.0.1 <www.state-machine.com/qm>.
|
|
// DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
|
|
//
|
|
// Copyright (c) 2005 Quantum Leaps, LLC. All rights reserved.
|
|
//
|
|
// ____________________________________
|
|
// / /
|
|
// / GGGGGGG PPPPPPPP LL /
|
|
// / GG GG PP PP LL /
|
|
// / GG PP PP LL /
|
|
// / GG GGGGG PPPPPPPP LL /
|
|
// / GG GG PP LL /
|
|
// / GGGGGGG PP LLLLLLL /
|
|
// /___________________________________/
|
|
//
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
//
|
|
// This generated code is open-source software licensed under the GNU
|
|
// General Public License (GPL) as published by the Free Software Foundation
|
|
// (see <https://www.gnu.org/licenses>).
|
|
//
|
|
// NOTE:
|
|
// The GPL does NOT permit the incorporation of this code into proprietary
|
|
// programs. Please contact Quantum Leaps for commercial licensing options,
|
|
// which expressly supersede the GPL and are designed explicitly for
|
|
// closed-source distribution.
|
|
//
|
|
// Quantum Leaps contact information:
|
|
// <www.state-machine.com/licensing>
|
|
// <info@state-machine.com>
|
|
//
|
|
//$endhead${.::app.h} ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
#ifndef APP_H_
|
|
#define APP_H_
|
|
|
|
//$declare${Shared} vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
|
|
|
|
//${Shared::AppSignals} ......................................................
|
|
enum AppSignals {
|
|
PERIODIC_SPEC_SIG = Q_USER_SIG,
|
|
TIMEOUT_SIG,
|
|
SPORADIC_A_SIG,
|
|
SPORADIC_B_SIG,
|
|
REMINDER_SIG,
|
|
// ...
|
|
MAX_SIG // the last signal
|
|
};
|
|
|
|
//${Shared::PeriodicSpecEvt} .................................................
|
|
typedef struct {
|
|
// protected:
|
|
QEvt super;
|
|
|
|
// public:
|
|
uint16_t toggles;
|
|
uint8_t ticks;
|
|
} PeriodicSpecEvt;
|
|
|
|
//${Shared::SporadicSpecEvt} .................................................
|
|
typedef struct {
|
|
// protected:
|
|
QEvt super;
|
|
|
|
// public:
|
|
uint16_t toggles;
|
|
uint16_t rtc_toggles;
|
|
} SporadicSpecEvt;
|
|
|
|
//${Shared::AO_Periodic1} ....................................................
|
|
extern QActive * const AO_Periodic1;
|
|
|
|
//${Shared::Periodic1_ctor} ..................................................
|
|
void Periodic1_ctor(void);
|
|
|
|
//${Shared::AO_Periodic4} ....................................................
|
|
extern QActive * const AO_Periodic4;
|
|
|
|
//${Shared::Periodic4_ctor} ..................................................
|
|
void Periodic4_ctor(void);
|
|
|
|
//${Shared::AO_Sporadic2} ....................................................
|
|
extern QActive * const AO_Sporadic2;
|
|
|
|
//${Shared::Sporadic2_ctor} ..................................................
|
|
void Sporadic2_ctor(void);
|
|
|
|
//${Shared::AO_Sporadic3} ....................................................
|
|
extern QActive * const AO_Sporadic3;
|
|
|
|
//${Shared::Sporadic3_ctor} ..................................................
|
|
void Sporadic3_ctor(void);
|
|
//$enddecl${Shared} ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
#endif // APP_H_
|