Merge branch 'nasa:main' into aleem-b

This commit is contained in:
Mishaal 2025-07-21 21:38:42 -07:00 committed by GitHub
commit dd5d52748e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
122 changed files with 1684 additions and 282 deletions

View File

@ -2,14 +2,15 @@ name: Build Native Images
on:
push:
branches: [ "main", "release/**", "feature/**" ]
branches: [ "main", "release/**" ]
pull_request:
branches: [ "main", "release/**", "feature/**" ]
types: [opened, synchronize, reopened, ready_for_review]
release:
types: [ published ]
jobs:
run:
if: github.event.pull_request.draft == false
name: "Package"
uses: "./.github/workflows/native-build.yml"
with:

View File

@ -2,15 +2,16 @@ name: FPP CI
on:
push:
branches: [ "main", "release/**", "feature/**" ]
branches: [ "main", "release/**" ]
pull_request:
branches: [ "main", "release/**", "feature/**" ]
types: [opened, synchronize, reopened, ready_for_review]
permissions:
contents: read
jobs:
build:
if: github.event.pull_request.draft == false
runs-on: ubuntu-22.04

View File

@ -964,7 +964,7 @@ case class ComponentCppWriter (
|"""
),
lines(
"return Fw::Time(TB_NONE, 0, 0);"
"return Fw::Time(TimeBase::TB_NONE, 0, 0);"
)
),
CppDoc.Function.NonSV,

View File

@ -717,6 +717,7 @@ case class ComponentInternalStateMachines(
smClassName,
Some(s"public $smBaseClassName"),
List.concat(
getFriendClassMembers,
getConstructorMembers,
getInitMembers,
getGetterMembers,
@ -726,6 +727,25 @@ case class ComponentInternalStateMachines(
)
)
private def getFriendClassMembers: List[CppDoc.Class.Member] =
List(
linesClassMember(
List(
CppDocWriter.writeBannerComment(
"Friend classes"
),
lines(
s"""|
|//! Autocoded test harness for the enclosing component
|friend class ${componentName}TesterBase;
|//! Test implementation for the enclosing component
|friend class ${componentName}Tester;
|"""
)
).flatten
)
)
private def getActionMember(action: StateMachineSymbol.Action) = {
val actionName = action.getUnqualifiedName
val componentActionFunctionName =

View File

@ -41,6 +41,7 @@ case class StateMachineCppWriter(
private def getClassMembers: List[CppDoc.Class.Member] =
List.concat(
getFriendClassMembers,
getTypeMembers,
getConstructorDestructorMembers,
getInitMembers,
@ -295,4 +296,22 @@ case class StateMachineCppWriter(
CppDoc.Lines.Hpp
)
private def getFriendClassMembers: List[CppDoc.Class.Member] = {
List(
linesClassMember(
List(
CppDocWriter.writeBannerComment(
"Friend classes"
),
lines(
s"""|
|//! Tester class for the state machine
|friend class ${name}Tester;
|"""
)
).flatten
)
)
}
}

View File

@ -3766,7 +3766,7 @@ Fw::Time ActiveAsyncProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -4298,7 +4298,7 @@ Fw::Time ActiveCommandsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3853,7 +3853,7 @@ Fw::Time ActiveEventsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3617,7 +3617,7 @@ Fw::Time ActiveExternalParamsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3615,7 +3615,7 @@ Fw::Time ActiveGetProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3703,7 +3703,7 @@ Fw::Time ActiveGuardedProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -1917,7 +1917,7 @@ Fw::Time ActiveOverflowComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3538,7 +3538,7 @@ Fw::Time ActiveParamsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -6973,7 +6973,7 @@ Fw::Time ActiveSerialComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3697,7 +3697,7 @@ Fw::Time ActiveSyncProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3600,7 +3600,7 @@ Fw::Time ActiveTelemetryComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -6878,7 +6878,7 @@ namespace M {
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2919,7 +2919,7 @@ Fw::Time PassiveCommandsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2867,7 +2867,7 @@ Fw::Time PassiveEventsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2631,7 +2631,7 @@ Fw::Time PassiveExternalParamsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2629,7 +2629,7 @@ Fw::Time PassiveGetProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2717,7 +2717,7 @@ Fw::Time PassiveGuardedProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2552,7 +2552,7 @@ Fw::Time PassiveParamsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -4881,7 +4881,7 @@ Fw::Time PassiveSerialComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2711,7 +2711,7 @@ Fw::Time PassiveSyncProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -2614,7 +2614,7 @@ Fw::Time PassiveTelemetryComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -5150,7 +5150,7 @@ Fw::Time PassiveTestComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3766,7 +3766,7 @@ Fw::Time QueuedAsyncProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -4298,7 +4298,7 @@ Fw::Time QueuedCommandsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3853,7 +3853,7 @@ Fw::Time QueuedEventsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3617,7 +3617,7 @@ Fw::Time QueuedExternalParamsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3615,7 +3615,7 @@ Fw::Time QueuedGetProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3703,7 +3703,7 @@ Fw::Time QueuedGuardedProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -1917,7 +1917,7 @@ Fw::Time QueuedOverflowComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3538,7 +3538,7 @@ Fw::Time QueuedParamsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -6973,7 +6973,7 @@ Fw::Time QueuedSerialComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3697,7 +3697,7 @@ Fw::Time QueuedSyncProductsComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -3600,7 +3600,7 @@ Fw::Time QueuedTelemetryComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -6876,7 +6876,7 @@ Fw::Time QueuedTestComponentBase ::
return _time;
}
else {
return Fw::Time(TB_NONE, 0, 0);
return Fw::Time(TimeBase::TB_NONE, 0, 0);
}
}

View File

@ -66,6 +66,15 @@ namespace FppTest {
public FppTest::SmChoice::BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -116,6 +125,15 @@ namespace FppTest {
public FppTest::SmChoice::BasicU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -168,6 +186,15 @@ namespace FppTest {
public FppTest::SmChoice::ChoiceToChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -228,6 +255,15 @@ namespace FppTest {
public FppTest::SmChoice::ChoiceToStateStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -288,6 +324,15 @@ namespace FppTest {
public FppTest::SmChoice::InputPairU16U32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -335,6 +380,15 @@ namespace FppTest {
public FppTest::SmChoice::SequenceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -390,6 +444,15 @@ namespace FppTest {
public FppTest::SmChoice::SequenceU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor
@ -447,6 +510,15 @@ namespace FppTest {
public FppTest::SmChoiceActive_BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceActiveTester;
public:
//! Constructor

View File

@ -72,6 +72,15 @@ namespace FppTest {
public FppTest::SmChoice::BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -122,6 +131,15 @@ namespace FppTest {
public FppTest::SmChoice::BasicU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -174,6 +192,15 @@ namespace FppTest {
public FppTest::SmChoice::ChoiceToChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -234,6 +261,15 @@ namespace FppTest {
public FppTest::SmChoice::ChoiceToStateStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -294,6 +330,15 @@ namespace FppTest {
public FppTest::SmChoice::InputPairU16U32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -341,6 +386,15 @@ namespace FppTest {
public FppTest::SmChoice::SequenceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -396,6 +450,15 @@ namespace FppTest {
public FppTest::SmChoice::SequenceU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor
@ -453,6 +516,15 @@ namespace FppTest {
public FppTest::SmChoiceQueued_BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmChoiceQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmChoiceQueuedTester;
public:
//! Constructor

View File

@ -64,6 +64,15 @@ namespace FppTest {
public FppTest::SmInitial::BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialActiveTester;
public:
//! Constructor
@ -102,6 +111,15 @@ namespace FppTest {
public FppTest::SmInitial::ChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialActiveTester;
public:
//! Constructor
@ -147,6 +165,15 @@ namespace FppTest {
public FppTest::SmInitial::NestedStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialActiveTester;
public:
//! Constructor
@ -185,6 +212,15 @@ namespace FppTest {
public FppTest::SmInitialActive_BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialActiveTester;
public:
//! Constructor
@ -223,6 +259,15 @@ namespace FppTest {
public FppTest::SmInitialActive_ChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialActiveTester;
public:
//! Constructor
@ -268,6 +313,15 @@ namespace FppTest {
public FppTest::SmInitialActive_NestedStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialActiveTester;
public:
//! Constructor

View File

@ -70,6 +70,15 @@ namespace FppTest {
public FppTest::SmInitial::BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialQueuedTester;
public:
//! Constructor
@ -108,6 +117,15 @@ namespace FppTest {
public FppTest::SmInitial::ChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialQueuedTester;
public:
//! Constructor
@ -153,6 +171,15 @@ namespace FppTest {
public FppTest::SmInitial::NestedStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialQueuedTester;
public:
//! Constructor
@ -191,6 +218,15 @@ namespace FppTest {
public FppTest::SmInitialQueued_BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialQueuedTester;
public:
//! Constructor
@ -229,6 +265,15 @@ namespace FppTest {
public FppTest::SmInitialQueued_ChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialQueuedTester;
public:
//! Constructor
@ -274,6 +319,15 @@ namespace FppTest {
public FppTest::SmInitialQueued_NestedStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmInitialQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmInitialQueuedTester;
public:
//! Constructor

View File

@ -98,6 +98,15 @@ namespace FppTest {
public FppTest::SmState::BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -136,6 +145,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -181,6 +199,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardStringStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -228,6 +255,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestAbsTypeStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -275,6 +311,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestArrayStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -322,6 +367,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestEnumStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -369,6 +423,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestStructStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -416,6 +479,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -463,6 +535,15 @@ namespace FppTest {
public FppTest::SmState::BasicInternalStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -501,6 +582,15 @@ namespace FppTest {
public FppTest::SmState::BasicSelfStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -539,6 +629,15 @@ namespace FppTest {
public FppTest::SmState::BasicStringStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -583,6 +682,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestAbsTypeStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -627,6 +735,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestArrayStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -671,6 +788,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestEnumStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -715,6 +841,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestStructStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -759,6 +894,15 @@ namespace FppTest {
public FppTest::SmState::BasicU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -803,6 +947,15 @@ namespace FppTest {
public FppTest::SmState::InternalStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -841,6 +994,15 @@ namespace FppTest {
public FppTest::SmState::PolymorphismStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Initialize the state machine
@ -860,6 +1022,15 @@ namespace FppTest {
public FppTest::SmState::StateToChildStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -918,6 +1089,15 @@ namespace FppTest {
public FppTest::SmState::StateToChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -998,6 +1178,15 @@ namespace FppTest {
public FppTest::SmState::StateToSelfStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -1066,6 +1255,15 @@ namespace FppTest {
public FppTest::SmState::StateToStateStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor
@ -1144,6 +1342,15 @@ namespace FppTest {
public FppTest::SmStateActive_BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateActiveTesterBase;
//! Test implementation for the enclosing component
friend class SmStateActiveTester;
public:
//! Constructor

View File

@ -104,6 +104,15 @@ namespace FppTest {
public FppTest::SmState::BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -142,6 +151,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -187,6 +205,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardStringStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -234,6 +261,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestAbsTypeStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -281,6 +317,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestArrayStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -328,6 +373,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestEnumStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -375,6 +429,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardTestStructStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -422,6 +485,15 @@ namespace FppTest {
public FppTest::SmState::BasicGuardU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -469,6 +541,15 @@ namespace FppTest {
public FppTest::SmState::BasicInternalStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -507,6 +588,15 @@ namespace FppTest {
public FppTest::SmState::BasicSelfStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -545,6 +635,15 @@ namespace FppTest {
public FppTest::SmState::BasicStringStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -589,6 +688,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestAbsTypeStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -633,6 +741,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestArrayStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -677,6 +794,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestEnumStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -721,6 +847,15 @@ namespace FppTest {
public FppTest::SmState::BasicTestStructStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -765,6 +900,15 @@ namespace FppTest {
public FppTest::SmState::BasicU32StateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -809,6 +953,15 @@ namespace FppTest {
public FppTest::SmState::InternalStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -847,6 +1000,15 @@ namespace FppTest {
public FppTest::SmState::PolymorphismStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Initialize the state machine
@ -866,6 +1028,15 @@ namespace FppTest {
public FppTest::SmState::StateToChildStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -924,6 +1095,15 @@ namespace FppTest {
public FppTest::SmState::StateToChoiceStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -1004,6 +1184,15 @@ namespace FppTest {
public FppTest::SmState::StateToSelfStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -1072,6 +1261,15 @@ namespace FppTest {
public FppTest::SmState::StateToStateStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor
@ -1150,6 +1348,15 @@ namespace FppTest {
public FppTest::SmStateQueued_BasicStateMachineBase
{
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Autocoded test harness for the enclosing component
friend class SmStateQueuedTesterBase;
//! Test implementation for the enclosing component
friend class SmStateQueuedTester;
public:
//! Constructor

View File

@ -1397,7 +1397,7 @@ class ActiveAsyncProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1446,7 +1446,7 @@ class ActiveCommandsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1423,7 +1423,7 @@ class ActiveEventsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1546,7 +1546,7 @@ class ActiveExternalParamsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1375,7 +1375,7 @@ class ActiveGetProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1397,7 +1397,7 @@ class ActiveGuardedProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1456,7 +1456,7 @@ class ActiveParamsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -2237,7 +2237,7 @@ class ActiveSerialTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1397,7 +1397,7 @@ class ActiveSyncProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1431,7 +1431,7 @@ class ActiveTelemetryTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -2178,7 +2178,7 @@ namespace M {
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1225,7 +1225,7 @@ class PassiveCommandsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1234,7 +1234,7 @@ class PassiveEventsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1357,7 +1357,7 @@ class PassiveExternalParamsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1186,7 +1186,7 @@ class PassiveGetProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1208,7 +1208,7 @@ class PassiveGuardedProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1267,7 +1267,7 @@ class PassiveParamsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1920,7 +1920,7 @@ class PassiveSerialTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1208,7 +1208,7 @@ class PassiveSyncProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1242,7 +1242,7 @@ class PassiveTelemetryTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1955,7 +1955,7 @@ class PassiveTestTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1397,7 +1397,7 @@ class QueuedAsyncProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1430,7 +1430,7 @@ class QueuedCommandsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1407,7 +1407,7 @@ class QueuedEventsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1530,7 +1530,7 @@ class QueuedExternalParamsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1375,7 +1375,7 @@ class QueuedGetProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1397,7 +1397,7 @@ class QueuedGuardedProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1440,7 +1440,7 @@ class QueuedParamsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -2221,7 +2221,7 @@ class QueuedSerialTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1397,7 +1397,7 @@ class QueuedSyncProductsTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_noArgsOut

View File

@ -1415,7 +1415,7 @@ class QueuedTelemetryTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -2160,7 +2160,7 @@ class QueuedTestTesterBase :
static void from_timeGetOut_static(
Fw::PassiveComponentBase* const callComp, //!< The component instance
FwIndexType portNum, //!< The port number
Fw::Time& time //!< The time tag
Fw::Time& time //!< Reference to Time object
);
//! Static function for port from_tlmOut

View File

@ -1,10 +1,23 @@
module Fw {
type Time
@ Time port
port Time(
ref $time: Fw.Time @< The time tag
)
ref $time: Fw.Time @< Reference to Time object
)
@ Data structure for Time Interval
struct TimeIntervalValue {
seconds: U32 @< seconds portion of TimeInterval
useconds: U32 @< microseconds portion of TimeInterval
}
type TimeInterval
@ Time interval port
port TimeInterval(
ref timeInterval: Fw.TimeInterval @< Reference to TimeInterval object
)
}

View File

@ -14,8 +14,8 @@ type PlatformSizeType = U64
@ for signed offsets, e.g., file seek offsets. Must be signed.
type PlatformSignedSizeType = I64
@ The type of smaller indicies internal to the software, used
@ for array indicies, e.g., port indicies. Must be signed.
@ The type of smaller indices internal to the software, used
@ for array indices, e.g., port indices. Must be signed.
type PlatformIndexType = I16
@ The type of arguments to assert functions. Supplied by platform,
@ -26,6 +26,10 @@ type PlatformAssertArgType = I32
@ overridable by project.
type PlatformTaskPriorityType = U8
@ The type of task identifiers. Supplied by platform,
@ overridable by project.
type PlatformTaskIdType = I32
@ The type of queue priorities used. Supplied by platform,
@ overridable by project.
type PlatformQueuePriorityType = U8

View File

@ -0,0 +1,48 @@
# ======================================================================
# FPP file for configuration of the communications stack
#
# The only reason to modify these definitions is if you are writing your own
# Framer/Deframer implementations and need more contextual data than what is
# defined
# ======================================================================
module ComCfg {
# Needed in dictionary:
# - spacecraftId
# - TmFrameFixedSize
# - potentially APID enum ?
constant SpacecraftId = 0x0044 # Spacecraft ID (10 bits)
constant TmFrameFixedSize = 1024 # Needs to be at least COM_BUFFER_MAX_SIZE + (2 * SpacePacketHeaderSize) + 1
@ APIDs are 11 bits in the Space Packet protocol, so we use U16. Max value 7FF
enum APID : U16 {
# APIDs prefixed with FW are reserved for F Prime and need to be present
# in the enumeration. Their values can be changed
FW_PACKET_COMMAND = 0x0000 @< Command packet type - incoming
FW_PACKET_TELEM = 0x0001 @< Telemetry packet type - outgoing
FW_PACKET_LOG = 0x0002 @< Log type - outgoing
FW_PACKET_FILE = 0x0003 @< File type - incoming and outgoing
FW_PACKET_PACKETIZED_TLM = 0x0004 @< Packetized telemetry packet type
FW_PACKET_DP = 0x0005 @< Data Product packet type
FW_PACKET_IDLE = 0x0006 @< F Prime idle
FW_PACKET_HAND = 0x00FE @< F Prime handshake
FW_PACKET_UNKNOWN = 0x00FF @< F Prime unknown packet
SPP_IDLE_PACKET = 0x07FF @< Per Space Packet Standard, all 1s (11bits) is reserved for Idle Packets
INVALID_UNINITIALIZED = 0x0800 @< Anything equal or higher value is invalid and should not be used
} default INVALID_UNINITIALIZED
@ Type used to pass context info between components during framing/deframing
struct FrameContext {
comQueueIndex: FwIndexType @< Queue Index used by the ComQueue, other components shall not modify
apid: APID @< 11 bits APID in CCSDS
sequenceCount: U16 @< 14 bit Sequence count - sequence count is incremented per APID
vcId: U8 @< 6 bit Virtual Channel ID - used for TC and TM
} default {
comQueueIndex = 0
apid = APID.FW_PACKET_UNKNOWN
sequenceCount = 0
vcId = 1
}
}

View File

@ -1,6 +1,6 @@
# ======================================================================
# \title Fw/FPrimeBasicTypes.hpp
# \author tumbar, mstarch
# \title config/FpConfig.fpp
# \author mstarch
# \brief FPP alias configuration file
#
# \copyright
@ -13,8 +13,8 @@
# ======================================================================
####
# Interger type aliases:
# Used for the project to override types supplied by the platform for things like sizes, indicies, etc.
# Integer type aliases:
# Used for the project to override types supplied by the platform for things like sizes, indices, etc.
####
@ The unsigned type of larger sizes internal to the software,
@ -25,19 +25,24 @@ type FwSizeType = PlatformSizeType
@ for signed offsets, e.g., file seek offsets. Must be signed.
type FwSignedSizeType = PlatformSignedSizeType
@ The type of smaller indicies internal to the software, used
@ for array indicies, e.g., port indicies. Must be signed.
@ The type of smaller indices internal to the software, used
@ for array indices, e.g., port indices. Must be signed.
type FwIndexType = PlatformIndexType
@ The type of arguments to assert functions.
type FwAssertArgType = PlatformAssertArgType
@ The type of task priorities used.
type FwTaskPriorityType = PlatformTaskPriorityType;
type FwTaskPriorityType = PlatformTaskPriorityType
@ The type of queue priorities used.
type FwQueuePriorityType = PlatformQueuePriorityType
@ The id type.
type FwIdType = U32
@ The type of task priorities used.
type FwTaskIdType = PlatformTaskIdType
####
# GDS type aliases:
@ -45,25 +50,25 @@ type FwQueuePriorityType = PlatformQueuePriorityType
####
@ The type of a telemetry channel identifier
type FwChanIdType = U32
type FwChanIdType = FwIdType
@ The type of a data product identifier
type FwDpIdType = U32
type FwDpIdType = FwIdType
@ The type of a data product priority
type FwDpPriorityType = U32
@ The type of an event identifier
type FwEventIdType = U32
type FwEventIdType = FwIdType
@ The type of a command opcode
type FwOpcodeType = U32
type FwOpcodeType = FwIdType
@ The type of a com packet descriptor
type FwPacketDescriptorType = U32
type FwPacketDescriptorType = FwIdType
@ The type of a parameter identifier
type FwPrmIdType = U32
type FwPrmIdType = FwIdType
@ The type used to serialize a size value
type FwSizeStoreType = U16

View File

@ -28,6 +28,7 @@ FwDpIdType
FwDpPriorityType
FwEnumStoreType
FwEventIdType
FwIdType
FwIndexType
FwOpcodeType
FwPacketDescriptorType
@ -36,6 +37,7 @@ FwQueuePriorityType
FwSignedSizeType
FwSizeStoreType
FwSizeType
FwTaskIdType
FwTaskPriorityType
FwTimeBaseStoreType
FwTimeContextStoreType
@ -43,12 +45,13 @@ FwTlmPacketizeIdType
FwTraceIdType
"
fp_platform_aliases="
PlatformSizeType
PlatformSignedSizeType
PlatformIndexType
PlatformAssertArgType
PlatformTaskPriorityType
PlatformIndexType
PlatformQueuePriorityType
PlatformSignedSizeType
PlatformSizeType
PlatformTaskIdType
PlatformTaskPriorityType
"
for base in ${fp_config_aliases}
@ -75,5 +78,8 @@ done
mv Param*.hpp Param*.cpp Fw/Prm
mv Sched*.hpp Sched*.cpp Svc/Sched
# Move config files into place
mv APIDEnum* config
# Remaining files go into types
mv *.hpp *.cpp Fw/Types

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a choice
class BasicStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a U32 choice
class BasicU32StateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicU32Tester;
public:
// ----------------------------------------------------------------------

View File

@ -20,6 +20,13 @@ namespace FppTest {
//! with hierarchy
class ChoiceToChoiceStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class ChoiceToChoiceTester;
public:
// ----------------------------------------------------------------------

View File

@ -20,6 +20,13 @@ namespace FppTest {
//! with hierarchy
class ChoiceToStateStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class ChoiceToStateTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A state machine with two inputs to a choice
class InputPairU16U32StateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class InputPairU16U32Tester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a choice sequence
class SequenceStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class SequenceTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a U32 choice sequence
class SequenceU32StateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class SequenceU32Tester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine
class BasicStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A state machine with an initial choice
class ChoiceStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class ChoiceTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A state machine with nested initial transitions
class NestedStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class NestedTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a guard
class BasicGuardStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a string guard
class BasicGuardStringStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardStringTester;
public:
// ----------------------------------------------------------------------

View File

@ -20,6 +20,13 @@ namespace FppTest {
//! A basic state machine with a TestAbsType guard
class BasicGuardTestAbsTypeStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardTestAbsTypeTester;
public:
// ----------------------------------------------------------------------

View File

@ -20,6 +20,13 @@ namespace FppTest {
//! A basic state machine with a TestArray guard
class BasicGuardTestArrayStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardTestArrayTester;
public:
// ----------------------------------------------------------------------

View File

@ -20,6 +20,13 @@ namespace FppTest {
//! A basic state machine with a TestEnum guard
class BasicGuardTestEnumStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardTestEnumTester;
public:
// ----------------------------------------------------------------------

View File

@ -20,6 +20,13 @@ namespace FppTest {
//! A basic state machine with a TestStruct guard
class BasicGuardTestStructStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardTestStructTester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with a U32 guard
class BasicGuardU32StateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicGuardU32Tester;
public:
// ----------------------------------------------------------------------

View File

@ -19,6 +19,13 @@ namespace FppTest {
//! A basic state machine with an internal transition
class BasicInternalStateMachineBase {
// ----------------------------------------------------------------------
// Friend classes
// ----------------------------------------------------------------------
//! Tester class for the state machine
friend class BasicInternalTester;
public:
// ----------------------------------------------------------------------

Some files were not shown because too many files have changed in this diff Show More