Files
fprime/FppTest/component/active/ActiveTest.cpp
M Starch a049743e07 Removing component init() functions where unneeded (#2893)
* Removing component init() functions where unneeded

* Removing spurious assert
2024-09-23 18:39:00 -07:00

709 lines
16 KiB
C++

// ======================================================================
// \title ActiveTest.cpp
// \author tiffany
// \brief cpp file for ActiveTest component implementation class
// ======================================================================
#include "ActiveTest.hpp"
#include <FpConfig.hpp>
#include "FppTest/component/active/SerialPortIndexEnumAc.hpp"
// ----------------------------------------------------------------------
// Construction, initialization, and destruction
// ----------------------------------------------------------------------
ActiveTest ::
ActiveTest(
const char *const compName
) : ActiveTestComponentBase(compName)
{
}
ActiveTest ::
~ActiveTest()
{
}
// ----------------------------------------------------------------------
// Handler implementations for user-defined typed input ports
// ----------------------------------------------------------------------
void ActiveTest ::
arrayArgsAsync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamArray &a,
FormalParamArray &aRef
)
{
this->arrayArgsOut_out(portNum, a, aRef);
}
void ActiveTest ::
enumArgsAsync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
)
{
this->enumArgsOut_out(portNum, en, enRef);
}
void ActiveTest ::
noArgsAsync_handler(
const NATIVE_INT_TYPE portNum
)
{
this->noArgsOut_out(portNum);
}
void ActiveTest ::
primitiveArgsAsync_handler(
const NATIVE_INT_TYPE portNum,
U32 u32,
U32 &u32Ref,
F32 f32,
F32 &f32Ref,
bool b,
bool &bRef
)
{
this->primitiveArgsOut_out(
portNum,
u32,
u32Ref,
f32,
f32Ref,
b,
bRef
);
}
void ActiveTest ::
structArgsAsync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamStruct &s,
FormalParamStruct &sRef
)
{
this->structArgsOut_out(portNum, s, sRef);
}
void ActiveTest ::
stringArgsAsync_handler(
const NATIVE_INT_TYPE portNum,
const Fw::StringBase &str80,
Fw::StringBase &str80Ref,
const Fw::StringBase &str100,
Fw::StringBase &str100Ref
)
{
this->stringArgsOut_out(
portNum,
str80,
str80Ref,
str100,
str100Ref
);
}
void ActiveTest ::
arrayArgsGuarded_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamArray &a,
FormalParamArray &aRef
)
{
this->arrayArgsOut_out(portNum, a, aRef);
}
void ActiveTest ::
arrayArgsSync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamArray &a,
FormalParamArray &aRef
)
{
this->arrayArgsOut_out(portNum, a, aRef);
}
FormalParamArray ActiveTest ::
arrayReturnGuarded_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamArray &a,
FormalParamArray &aRef
)
{
return this->arrayReturnOut_out(portNum, a, aRef);
}
FormalParamArray ActiveTest ::
arrayReturnSync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamArray &a,
FormalParamArray &aRef
)
{
return this->arrayReturnOut_out(portNum, a, aRef);
}
void ActiveTest ::
cmdOut_handler(
NATIVE_INT_TYPE portNum,
FwOpcodeType opCode,
U32 cmdSeq,
Fw::CmdArgBuffer& args
)
{
}
void ActiveTest ::
enumArgsGuarded_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
)
{
this->enumArgsOut_out(portNum, en, enRef);
}
void ActiveTest ::
enumArgsSync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
)
{
this->enumArgsOut_out(portNum, en, enRef);
}
FormalParamEnum ActiveTest ::
enumReturnGuarded_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
)
{
return this->enumReturnOut_out(portNum, en, enRef);
}
FormalParamEnum ActiveTest ::
enumReturnSync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
)
{
return this->enumReturnOut_out(portNum, en, enRef);
}
void ActiveTest ::
noArgsGuarded_handler(
const NATIVE_INT_TYPE portNum
)
{
this->noArgsOut_out(portNum);
}
bool ActiveTest ::
noArgsReturnGuarded_handler(
const NATIVE_INT_TYPE portNum
)
{
return this->noArgsReturnOut_out(portNum);
}
bool ActiveTest ::
noArgsReturnSync_handler(
const NATIVE_INT_TYPE portNum
)
{
return this->noArgsReturnOut_out(portNum);
}
void ActiveTest ::
noArgsSync_handler(
const NATIVE_INT_TYPE portNum
)
{
this->noArgsOut_out(portNum);
}
void ActiveTest ::
primitiveArgsGuarded_handler(
const NATIVE_INT_TYPE portNum,
U32 u32,
U32 &u32Ref,
F32 f32,
F32 &f32Ref,
bool b,
bool &bRef
)
{
this->primitiveArgsOut_out(
portNum,
u32,
u32Ref,
f32,
f32Ref,
b,
bRef
);
}
void ActiveTest ::
primitiveArgsSync_handler(
const NATIVE_INT_TYPE portNum,
U32 u32,
U32 &u32Ref,
F32 f32,
F32 &f32Ref,
bool b,
bool &bRef
)
{
this->primitiveArgsOut_out(
portNum,
u32,
u32Ref,
f32,
f32Ref,
b,
bRef
);
}
U32 ActiveTest ::
primitiveReturnGuarded_handler(
const NATIVE_INT_TYPE portNum,
U32 u32,
U32 &u32Ref,
F32 f32,
F32 &f32Ref,
bool b,
bool &bRef
)
{
return this->primitiveReturnOut_out(
portNum,
u32,
u32Ref,
f32,
f32Ref,
b,
bRef
);
}
U32 ActiveTest ::
primitiveReturnSync_handler(
const NATIVE_INT_TYPE portNum,
U32 u32,
U32 &u32Ref,
F32 f32,
F32 &f32Ref,
bool b,
bool &bRef
)
{
return this->primitiveReturnOut_out(
portNum,
u32,
u32Ref,
f32,
f32Ref,
b,
bRef
);
}
void ActiveTest ::
stringArgsGuarded_handler(
const NATIVE_INT_TYPE portNum,
const Fw::StringBase &str80,
Fw::StringBase &str80Ref,
const Fw::StringBase &str100,
Fw::StringBase &str100Ref
)
{
this->stringArgsOut_out(
portNum,
str80,
str80Ref,
str100,
str100Ref
);
}
void ActiveTest ::
stringArgsSync_handler(
const NATIVE_INT_TYPE portNum,
const Fw::StringBase &str80,
Fw::StringBase &str80Ref,
const Fw::StringBase &str100,
Fw::StringBase &str100Ref
)
{
this->stringArgsOut_out(
portNum,
str80,
str80Ref,
str100,
str100Ref
);
}
void ActiveTest ::
structArgsGuarded_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamStruct &s,
FormalParamStruct &sRef
)
{
this->structArgsOut_out(portNum, s, sRef);
}
void ActiveTest ::
structArgsSync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamStruct &s,
FormalParamStruct &sRef
)
{
this->structArgsOut_out(portNum, s, sRef);
}
FormalParamStruct ActiveTest ::
structReturnGuarded_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamStruct &s,
FormalParamStruct &sRef
)
{
return this->structReturnOut_out(portNum, s, sRef);
}
FormalParamStruct ActiveTest ::
structReturnSync_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamStruct &s,
FormalParamStruct &sRef
)
{
return this->structReturnOut_out(portNum, s, sRef);
}
void ActiveTest ::
enumArgsHook_handler(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
) {}
// ----------------------------------------------------------------------
// Handler implementations for user-defined serial input ports
// ----------------------------------------------------------------------
void ActiveTest ::
serialAsync_handler(
NATIVE_INT_TYPE portNum, /*!< The port number*/
Fw::SerializeBufferBase &Buffer /*!< The serialization buffer*/
)
{
this->serializeStatus = this->serialOut_out(portNum, Buffer);
}
void ActiveTest ::
serialAsyncAssert_handler(
NATIVE_INT_TYPE portNum, /*!< The port number*/
Fw::SerializeBufferBase &Buffer /*!< The serialization buffer*/
)
{
this->serializeStatus = this->serialOut_out(SerialPortIndex::ENUM, Buffer);
}
void ActiveTest ::
serialAsyncBlockPriority_handler(
NATIVE_INT_TYPE portNum, /*!< The port number*/
Fw::SerializeBufferBase &Buffer /*!< The serialization buffer*/
)
{
this->serializeStatus = this->serialOut_out(SerialPortIndex::ARRAY, Buffer);
}
void ActiveTest ::
serialAsyncDropPriority_handler(
NATIVE_INT_TYPE portNum, /*!< The port number*/
Fw::SerializeBufferBase &Buffer /*!< The serialization buffer*/
)
{
this->serializeStatus = this->serialOut_out(SerialPortIndex::STRUCT, Buffer);
}
void ActiveTest ::
serialGuarded_handler(
NATIVE_INT_TYPE portNum, /*!< The port number*/
Fw::SerializeBufferBase &Buffer /*!< The serialization buffer*/
)
{
this->serializeStatus = this->serialOut_out(portNum, Buffer);
}
void ActiveTest ::
serialSync_handler(
NATIVE_INT_TYPE portNum, /*!< The port number*/
Fw::SerializeBufferBase &Buffer /*!< The serialization buffer*/
)
{
this->serializeStatus = this->serialOut_out(portNum, Buffer);
}
// ----------------------------------------------------------------------
// Command handler implementations
// ----------------------------------------------------------------------
void ActiveTest ::
CMD_ASYNC_NO_ARGS_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq
)
{
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ASYNC_PRIMITIVE_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
U32 u32_1,
U32 u32_2,
F32 f32_1,
F32 f32_2,
bool b1,
bool b2
)
{
this->primitiveCmd.args.val1 = u32_1;
this->primitiveCmd.args.val2 = u32_2;
this->primitiveCmd.args.val3 = f32_1;
this->primitiveCmd.args.val4 = f32_2;
this->primitiveCmd.args.val5 = b1;
this->primitiveCmd.args.val6 = b2;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ASYNC_STRINGS_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
const Fw::CmdStringArg& str1,
const Fw::CmdStringArg& str2
)
{
this->stringCmd.args.val1 = str1;
this->stringCmd.args.val2 = str2;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ASYNC_ENUM_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
FormalParamEnum en
)
{
this->enumCmd.args.val = en;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ASYNC_ARRAY_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
FormalParamArray arr
)
{
this->arrayCmd.args.val = arr;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ASYNC_STRUCT_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
FormalParamStruct str
)
{
this->structCmd.args.val = str;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_NO_ARGS_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq
)
{
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_PRIMITIVE_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
U32 u32_1,
U32 u32_2,
F32 f32_1,
F32 f32_2,
bool b1,
bool b2
)
{
this->primitiveCmd.args.val1 = u32_1;
this->primitiveCmd.args.val2 = u32_2;
this->primitiveCmd.args.val3 = f32_1;
this->primitiveCmd.args.val4 = f32_2;
this->primitiveCmd.args.val5 = b1;
this->primitiveCmd.args.val6 = b2;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_STRINGS_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
const Fw::CmdStringArg& str1,
const Fw::CmdStringArg& str2
)
{
this->stringCmd.args.val1 = str1;
this->stringCmd.args.val2 = str2;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ENUM_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
FormalParamEnum en
)
{
this->enumCmd.args.val = en;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_ARRAY_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
FormalParamArray arr
)
{
this->arrayCmd.args.val = arr;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
void ActiveTest ::
CMD_STRUCT_cmdHandler(
const FwOpcodeType opCode,
const U32 cmdSeq,
FormalParamStruct str
)
{
this->structCmd.args.val = str;
this->cmdResponse_out(opCode,cmdSeq,Fw::CmdResponse::OK);
}
// ----------------------------------------------------------------------
// Internal interface handlers
// ----------------------------------------------------------------------
//! Internal interface handler for internalArray
void ActiveTest ::
internalArray_internalInterfaceHandler(
const FormalParamArray& arr //!< An array
)
{
this->arrayInterface.args.val = arr;
}
//! Internal interface handler for internalEnum
void ActiveTest ::
internalEnum_internalInterfaceHandler(
const FormalParamEnum& en //!< An enum
)
{
this->enumInterface.args.val = en;
}
//! Internal interface handler for internalNoArgs
void ActiveTest ::
internalNoArgs_internalInterfaceHandler()
{
}
//! Internal interface handler for internalPrimitive
void ActiveTest ::
internalPrimitive_internalInterfaceHandler(
U32 u32_1, //!< A U32
U32 u32_2, //!< A U32
F32 f32_1, //!< An F32
F32 f32_2, //!< An F32
bool b1, //!< A boolean
bool b2 //!< A boolean
)
{
this->primitiveInterface.args.val1 = u32_1;
this->primitiveInterface.args.val2 = u32_2;
this->primitiveInterface.args.val3 = f32_1;
this->primitiveInterface.args.val4 = f32_2;
this->primitiveInterface.args.val5 = b1;
this->primitiveInterface.args.val6 = b2;
}
//! Internal interface handler for internalString
void ActiveTest ::
internalString_internalInterfaceHandler(
const Fw::InternalInterfaceString& str1, //!< A string
const Fw::InternalInterfaceString& str2 //!< Another string
)
{
this->stringInterface.args.val1 = str1;
this->stringInterface.args.val2 = str2;
}
//! Internal interface handler for internalStruct
void ActiveTest ::
internalStruct_internalInterfaceHandler(
const FormalParamStruct& str //!< A struct
)
{
this->structInterface.args.val = str;
}
// ----------------------------------------------------------------------
// Overflow hook implementations for user-defined async ports interfaces
// ----------------------------------------------------------------------
void ActiveTest ::
enumArgsHook_overflowHook(
const NATIVE_INT_TYPE portNum,
const FormalParamEnum &en,
FormalParamEnum &enRef
)
{
this->enumArgsHookOverflowed_out(portNum, en, enRef);
}