mirror of
https://github.com/nasa/fpp.git
synced 2025-12-12 15:59:33 -06:00
2081 lines
69 KiB
C++
Vendored
2081 lines
69 KiB
C++
Vendored
// ======================================================================
|
|
// \title ActiveExternalParamsComponentAc.hpp
|
|
// \author Generated by fpp-to-cpp
|
|
// \brief hpp file for ActiveExternalParams component base class
|
|
// ======================================================================
|
|
|
|
#ifndef ActiveExternalParamsComponentAc_HPP
|
|
#define ActiveExternalParamsComponentAc_HPP
|
|
|
|
#include "AArrayAc.hpp"
|
|
#include "AliasTypedPortAc.hpp"
|
|
#include "AliasTypedReturnPortAc.hpp"
|
|
#include "AliasTypedReturnStringPortAc.hpp"
|
|
#include "EEnumAc.hpp"
|
|
#include "Fw/Cmd/CmdPortAc.hpp"
|
|
#include "Fw/Cmd/CmdRegPortAc.hpp"
|
|
#include "Fw/Cmd/CmdResponsePortAc.hpp"
|
|
#include "Fw/Cmd/CmdString.hpp"
|
|
#include "Fw/Comp/ActiveComponentBase.hpp"
|
|
#include "Fw/FPrimeBasicTypes.hpp"
|
|
#include "Fw/Log/LogPortAc.hpp"
|
|
#if FW_ENABLE_TEXT_LOGGING == 1
|
|
#include "Fw/Log/LogTextPortAc.hpp"
|
|
#endif
|
|
#include "Fw/Port/InputSerializePort.hpp"
|
|
#include "Fw/Port/OutputSerializePort.hpp"
|
|
#include "Fw/Prm/PrmExternalTypes.hpp"
|
|
#include "Fw/Prm/PrmGetPortAc.hpp"
|
|
#include "Fw/Prm/PrmSetPortAc.hpp"
|
|
#include "Fw/Prm/PrmString.hpp"
|
|
#include "Fw/Time/TimePortAc.hpp"
|
|
#include "Fw/Tlm/TlmPortAc.hpp"
|
|
#include "NoArgsAliasStringReturnPortAc.hpp"
|
|
#include "NoArgsPortAc.hpp"
|
|
#include "NoArgsReturnPortAc.hpp"
|
|
#include "NoArgsStringReturnPortAc.hpp"
|
|
#include "Os/Mutex.hpp"
|
|
#include "SSerializableAc.hpp"
|
|
#include "TypedPortAc.hpp"
|
|
#include "TypedReturnPortAc.hpp"
|
|
|
|
//! \class ActiveExternalParamsComponentBase
|
|
//! \brief Auto-generated base for ActiveExternalParams component
|
|
//!
|
|
//! An active component with external params only
|
|
class ActiveExternalParamsComponentBase :
|
|
public Fw::ActiveComponentBase
|
|
{
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Friend classes
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Friend class tester to support autocoded test harness
|
|
friend class ActiveExternalParamsTesterBase;
|
|
//! Friend class tester implementation to support white-box testing
|
|
friend class ActiveExternalParamsTester;
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Constants
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Enumerations for numbers of special input ports
|
|
enum {
|
|
NUM_CMDIN_INPUT_PORTS = 1,
|
|
};
|
|
|
|
//! Enumerations for numbers of typed input ports
|
|
enum {
|
|
NUM_ALIASTYPEDASYNC_INPUT_PORTS = 1,
|
|
NUM_NOARGSALIASSTRINGRETURNSYNC_INPUT_PORTS = 1,
|
|
NUM_NOARGSASYNC_INPUT_PORTS = 1,
|
|
NUM_NOARGSGUARDED_INPUT_PORTS = 1,
|
|
NUM_NOARGSRETURNGUARDED_INPUT_PORTS = 1,
|
|
NUM_NOARGSRETURNSYNC_INPUT_PORTS = 3,
|
|
NUM_NOARGSSTRINGRETURNSYNC_INPUT_PORTS = 1,
|
|
NUM_NOARGSSYNC_INPUT_PORTS = 3,
|
|
NUM_TYPEDALIASGUARDED_INPUT_PORTS = 1,
|
|
NUM_TYPEDALIASRETURNSYNC_INPUT_PORTS = 3,
|
|
NUM_TYPEDALIASSTRINGRETURNSYNC_INPUT_PORTS = 3,
|
|
NUM_TYPEDASYNC_INPUT_PORTS = 1,
|
|
NUM_TYPEDASYNCASSERT_INPUT_PORTS = 1,
|
|
NUM_TYPEDASYNCBLOCKPRIORITY_INPUT_PORTS = 1,
|
|
NUM_TYPEDASYNCDROPPRIORITY_INPUT_PORTS = 1,
|
|
NUM_TYPEDGUARDED_INPUT_PORTS = 1,
|
|
NUM_TYPEDRETURNGUARDED_INPUT_PORTS = 1,
|
|
NUM_TYPEDRETURNSYNC_INPUT_PORTS = 3,
|
|
NUM_TYPEDSYNC_INPUT_PORTS = 3,
|
|
};
|
|
|
|
//! Enumerations for numbers of special output ports
|
|
enum {
|
|
NUM_CMDREGOUT_OUTPUT_PORTS = 1,
|
|
NUM_CMDRESPONSEOUT_OUTPUT_PORTS = 1,
|
|
NUM_EVENTOUT_OUTPUT_PORTS = 1,
|
|
NUM_PRMGETOUT_OUTPUT_PORTS = 1,
|
|
NUM_PRMSETOUT_OUTPUT_PORTS = 1,
|
|
NUM_TEXTEVENTOUT_OUTPUT_PORTS = 1,
|
|
NUM_TIMEGETOUT_OUTPUT_PORTS = 1,
|
|
NUM_TLMOUT_OUTPUT_PORTS = 1,
|
|
};
|
|
|
|
//! Enumerations for numbers of typed output ports
|
|
enum {
|
|
NUM_NOARGSOUT_OUTPUT_PORTS = 1,
|
|
NUM_NOARGSRETURNOUT_OUTPUT_PORTS = 1,
|
|
NUM_NOARGSSTRINGRETURNOUT_OUTPUT_PORTS = 1,
|
|
NUM_TYPEDALIASOUT_OUTPUT_PORTS = 1,
|
|
NUM_TYPEDALIASRETURNOUT_OUTPUT_PORTS = 1,
|
|
NUM_TYPEDALIASRETURNSTRINGOUT_OUTPUT_PORTS = 1,
|
|
NUM_TYPEDOUT_OUTPUT_PORTS = 1,
|
|
NUM_TYPEDRETURNOUT_OUTPUT_PORTS = 1,
|
|
};
|
|
|
|
//! Command opcodes
|
|
enum {
|
|
OPCODE_PARAMI32EXT_SET = 0x0, //!< Opcode to set parameter ParamI32Ext
|
|
OPCODE_PARAMI32EXT_SAVE = 0x1, //!< Opcode to save parameter ParamI32Ext
|
|
OPCODE_PARAMF64EXT_SET = 0x2, //!< Opcode to set parameter ParamF64Ext
|
|
OPCODE_PARAMF64EXT_SAVE = 0x3, //!< Opcode to save parameter ParamF64Ext
|
|
OPCODE_PARAMSTRINGEXT_SET = 0x4, //!< Opcode to set parameter ParamStringExt
|
|
OPCODE_PARAMSTRINGEXT_SAVE = 0x5, //!< Opcode to save parameter ParamStringExt
|
|
OPCODE_PARAMENUMEXT_SET = 0x6, //!< Opcode to set parameter ParamEnumExt
|
|
OPCODE_PARAMENUMEXT_SAVE = 0x7, //!< Opcode to save parameter ParamEnumExt
|
|
OPCODE_PARAMARRAYEXT_SET = 0x8, //!< Opcode to set parameter ParamArrayExt
|
|
OPCODE_PARAMARRAYEXT_SAVE = 0x65, //!< Opcode to save parameter ParamArrayExt
|
|
OPCODE_PARAMSTRUCTEXT_SET = 0x70, //!< Opcode to set parameter ParamStructExt
|
|
OPCODE_PARAMSTRUCTEXT_SAVE = 0x75, //!< Opcode to save parameter ParamStructExt
|
|
};
|
|
|
|
//! Parameter IDs
|
|
enum {
|
|
PARAMID_PARAMI32EXT = 0x0, //!< An externally stored parameter with I32 data
|
|
//!< Second line of annotation
|
|
PARAMID_PARAMF64EXT = 0x1, //!< An externally stored parameter with F64 data
|
|
PARAMID_PARAMSTRINGEXT = 0x2, //!< An externally stored parameter with string data and default value
|
|
PARAMID_PARAMENUMEXT = 0x60, //!< An externally stored parameter with enum data
|
|
PARAMID_PARAMARRAYEXT = 0x61, //!< An externally stored parameter with array data, default value, and save opcode
|
|
PARAMID_PARAMSTRUCTEXT = 0x62, //!< An externally stored parameter with struct data and set/save opcodes
|
|
};
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Component initialization
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Initialize ActiveExternalParamsComponentBase object
|
|
void init(
|
|
FwSizeType queueDepth, //!< The queue depth
|
|
FwEnumStoreType instance = 0 //!< The instance number
|
|
);
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Getters for special input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get special input port at index
|
|
//!
|
|
//! \return cmdIn[portNum]
|
|
Fw::InputCmdPort* get_cmdIn_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Getters for typed input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return aliasTypedAsync[portNum]
|
|
Ports::InputAliasTypedPort* get_aliasTypedAsync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsAliasStringReturnSync[portNum]
|
|
Ports::InputNoArgsAliasStringReturnPort* get_noArgsAliasStringReturnSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsAsync[portNum]
|
|
Ports::InputNoArgsPort* get_noArgsAsync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsGuarded[portNum]
|
|
Ports::InputNoArgsPort* get_noArgsGuarded_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsReturnGuarded[portNum]
|
|
Ports::InputNoArgsReturnPort* get_noArgsReturnGuarded_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsReturnSync[portNum]
|
|
Ports::InputNoArgsReturnPort* get_noArgsReturnSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsStringReturnSync[portNum]
|
|
Ports::InputNoArgsStringReturnPort* get_noArgsStringReturnSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return noArgsSync[portNum]
|
|
Ports::InputNoArgsPort* get_noArgsSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAliasGuarded[portNum]
|
|
Ports::InputAliasTypedPort* get_typedAliasGuarded_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAliasReturnSync[portNum]
|
|
Ports::InputAliasTypedReturnPort* get_typedAliasReturnSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAliasStringReturnSync[portNum]
|
|
Ports::InputAliasTypedReturnStringPort* get_typedAliasStringReturnSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAsync[portNum]
|
|
Ports::InputTypedPort* get_typedAsync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAsyncAssert[portNum]
|
|
Ports::InputTypedPort* get_typedAsyncAssert_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAsyncBlockPriority[portNum]
|
|
Ports::InputTypedPort* get_typedAsyncBlockPriority_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedAsyncDropPriority[portNum]
|
|
Ports::InputTypedPort* get_typedAsyncDropPriority_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedGuarded[portNum]
|
|
Ports::InputTypedPort* get_typedGuarded_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedReturnGuarded[portNum]
|
|
Ports::InputTypedReturnPort* get_typedReturnGuarded_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedReturnSync[portNum]
|
|
Ports::InputTypedReturnPort* get_typedReturnSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Get typed input port at index
|
|
//!
|
|
//! \return typedSync[portNum]
|
|
Ports::InputTypedPort* get_typedSync_InputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Connect input ports to special output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Connect port to cmdRegOut[portNum]
|
|
void set_cmdRegOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputCmdRegPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to cmdResponseOut[portNum]
|
|
void set_cmdResponseOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputCmdResponsePort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to eventOut[portNum]
|
|
void set_eventOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputLogPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to prmGetOut[portNum]
|
|
void set_prmGetOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputPrmGetPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to prmSetOut[portNum]
|
|
void set_prmSetOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputPrmSetPort* port //!< The input port
|
|
);
|
|
|
|
#if FW_ENABLE_TEXT_LOGGING == 1
|
|
|
|
//! Connect port to textEventOut[portNum]
|
|
void set_textEventOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputLogTextPort* port //!< The input port
|
|
);
|
|
|
|
#endif
|
|
|
|
//! Connect port to timeGetOut[portNum]
|
|
void set_timeGetOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputTimePort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to tlmOut[portNum]
|
|
void set_tlmOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputTlmPort* port //!< The input port
|
|
);
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Connect typed input ports to typed output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Connect port to noArgsOut[portNum]
|
|
void set_noArgsOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputNoArgsPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to noArgsReturnOut[portNum]
|
|
void set_noArgsReturnOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputNoArgsReturnPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to noArgsStringReturnOut[portNum]
|
|
void set_noArgsStringReturnOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputNoArgsStringReturnPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to typedAliasOut[portNum]
|
|
void set_typedAliasOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputAliasTypedPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to typedAliasReturnOut[portNum]
|
|
void set_typedAliasReturnOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputAliasTypedReturnPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to typedAliasReturnStringOut[portNum]
|
|
void set_typedAliasReturnStringOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputAliasTypedReturnStringPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to typedOut[portNum]
|
|
void set_typedOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputTypedPort* port //!< The input port
|
|
);
|
|
|
|
//! Connect port to typedReturnOut[portNum]
|
|
void set_typedReturnOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Ports::InputTypedReturnPort* port //!< The input port
|
|
);
|
|
|
|
#if FW_PORT_SERIALIZATION
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Connect serial input ports to special output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Connect port to cmdRegOut[portNum]
|
|
void set_cmdRegOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
//! Connect port to cmdResponseOut[portNum]
|
|
void set_cmdResponseOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
//! Connect port to eventOut[portNum]
|
|
void set_eventOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
//! Connect port to prmSetOut[portNum]
|
|
void set_prmSetOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
#if FW_ENABLE_TEXT_LOGGING == 1
|
|
|
|
//! Connect port to textEventOut[portNum]
|
|
void set_textEventOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
#endif
|
|
|
|
//! Connect port to timeGetOut[portNum]
|
|
void set_timeGetOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
//! Connect port to tlmOut[portNum]
|
|
void set_tlmOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
#endif
|
|
|
|
#if FW_PORT_SERIALIZATION
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Connect serial input ports to typed output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Connect port to noArgsOut[portNum]
|
|
void set_noArgsOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
//! Connect port to typedAliasOut[portNum]
|
|
void set_typedAliasOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
//! Connect port to typedOut[portNum]
|
|
void set_typedOut_OutputPort(
|
|
FwIndexType portNum, //!< The port number
|
|
Fw::InputSerializePort* port //!< The port
|
|
);
|
|
|
|
#endif
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Command registration
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! \brief Register commands with the Command Dispatcher
|
|
//!
|
|
//! Connect the dispatcher first
|
|
void regCommands();
|
|
|
|
public:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter loading
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! \brief Load the parameters from a parameter source
|
|
//!
|
|
//! Connect the parameter first
|
|
void loadParameters();
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Component construction and destruction
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Construct ActiveExternalParamsComponentBase object
|
|
ActiveExternalParamsComponentBase(
|
|
const char* compName = "" //!< The component name
|
|
);
|
|
|
|
//! Destroy ActiveExternalParamsComponentBase object
|
|
virtual ~ActiveExternalParamsComponentBase();
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Getters for numbers of special input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get the number of cmdIn input ports
|
|
//!
|
|
//! \return The number of cmdIn input ports
|
|
static constexpr FwIndexType getNum_cmdIn_InputPorts() {
|
|
return NUM_CMDIN_INPUT_PORTS;
|
|
}
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Getters for numbers of typed input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get the number of aliasTypedAsync input ports
|
|
//!
|
|
//! \return The number of aliasTypedAsync input ports
|
|
static constexpr FwIndexType getNum_aliasTypedAsync_InputPorts() {
|
|
return NUM_ALIASTYPEDASYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsAliasStringReturnSync input ports
|
|
//!
|
|
//! \return The number of noArgsAliasStringReturnSync input ports
|
|
static constexpr FwIndexType getNum_noArgsAliasStringReturnSync_InputPorts() {
|
|
return NUM_NOARGSALIASSTRINGRETURNSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsAsync input ports
|
|
//!
|
|
//! \return The number of noArgsAsync input ports
|
|
static constexpr FwIndexType getNum_noArgsAsync_InputPorts() {
|
|
return NUM_NOARGSASYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsGuarded input ports
|
|
//!
|
|
//! \return The number of noArgsGuarded input ports
|
|
static constexpr FwIndexType getNum_noArgsGuarded_InputPorts() {
|
|
return NUM_NOARGSGUARDED_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsReturnGuarded input ports
|
|
//!
|
|
//! \return The number of noArgsReturnGuarded input ports
|
|
static constexpr FwIndexType getNum_noArgsReturnGuarded_InputPorts() {
|
|
return NUM_NOARGSRETURNGUARDED_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsReturnSync input ports
|
|
//!
|
|
//! \return The number of noArgsReturnSync input ports
|
|
static constexpr FwIndexType getNum_noArgsReturnSync_InputPorts() {
|
|
return NUM_NOARGSRETURNSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsStringReturnSync input ports
|
|
//!
|
|
//! \return The number of noArgsStringReturnSync input ports
|
|
static constexpr FwIndexType getNum_noArgsStringReturnSync_InputPorts() {
|
|
return NUM_NOARGSSTRINGRETURNSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsSync input ports
|
|
//!
|
|
//! \return The number of noArgsSync input ports
|
|
static constexpr FwIndexType getNum_noArgsSync_InputPorts() {
|
|
return NUM_NOARGSSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAliasGuarded input ports
|
|
//!
|
|
//! \return The number of typedAliasGuarded input ports
|
|
static constexpr FwIndexType getNum_typedAliasGuarded_InputPorts() {
|
|
return NUM_TYPEDALIASGUARDED_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAliasReturnSync input ports
|
|
//!
|
|
//! \return The number of typedAliasReturnSync input ports
|
|
static constexpr FwIndexType getNum_typedAliasReturnSync_InputPorts() {
|
|
return NUM_TYPEDALIASRETURNSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAliasStringReturnSync input ports
|
|
//!
|
|
//! \return The number of typedAliasStringReturnSync input ports
|
|
static constexpr FwIndexType getNum_typedAliasStringReturnSync_InputPorts() {
|
|
return NUM_TYPEDALIASSTRINGRETURNSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAsync input ports
|
|
//!
|
|
//! \return The number of typedAsync input ports
|
|
static constexpr FwIndexType getNum_typedAsync_InputPorts() {
|
|
return NUM_TYPEDASYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAsyncAssert input ports
|
|
//!
|
|
//! \return The number of typedAsyncAssert input ports
|
|
static constexpr FwIndexType getNum_typedAsyncAssert_InputPorts() {
|
|
return NUM_TYPEDASYNCASSERT_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAsyncBlockPriority input ports
|
|
//!
|
|
//! \return The number of typedAsyncBlockPriority input ports
|
|
static constexpr FwIndexType getNum_typedAsyncBlockPriority_InputPorts() {
|
|
return NUM_TYPEDASYNCBLOCKPRIORITY_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAsyncDropPriority input ports
|
|
//!
|
|
//! \return The number of typedAsyncDropPriority input ports
|
|
static constexpr FwIndexType getNum_typedAsyncDropPriority_InputPorts() {
|
|
return NUM_TYPEDASYNCDROPPRIORITY_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedGuarded input ports
|
|
//!
|
|
//! \return The number of typedGuarded input ports
|
|
static constexpr FwIndexType getNum_typedGuarded_InputPorts() {
|
|
return NUM_TYPEDGUARDED_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedReturnGuarded input ports
|
|
//!
|
|
//! \return The number of typedReturnGuarded input ports
|
|
static constexpr FwIndexType getNum_typedReturnGuarded_InputPorts() {
|
|
return NUM_TYPEDRETURNGUARDED_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedReturnSync input ports
|
|
//!
|
|
//! \return The number of typedReturnSync input ports
|
|
static constexpr FwIndexType getNum_typedReturnSync_InputPorts() {
|
|
return NUM_TYPEDRETURNSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedSync input ports
|
|
//!
|
|
//! \return The number of typedSync input ports
|
|
static constexpr FwIndexType getNum_typedSync_InputPorts() {
|
|
return NUM_TYPEDSYNC_INPUT_PORTS;
|
|
}
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Getters for numbers of special output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get the number of cmdRegOut output ports
|
|
//!
|
|
//! \return The number of cmdRegOut output ports
|
|
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts() {
|
|
return NUM_CMDREGOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of cmdResponseOut output ports
|
|
//!
|
|
//! \return The number of cmdResponseOut output ports
|
|
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts() {
|
|
return NUM_CMDRESPONSEOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of eventOut output ports
|
|
//!
|
|
//! \return The number of eventOut output ports
|
|
static constexpr FwIndexType getNum_eventOut_OutputPorts() {
|
|
return NUM_EVENTOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of prmGetOut output ports
|
|
//!
|
|
//! \return The number of prmGetOut output ports
|
|
static constexpr FwIndexType getNum_prmGetOut_OutputPorts() {
|
|
return NUM_PRMGETOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of prmSetOut output ports
|
|
//!
|
|
//! \return The number of prmSetOut output ports
|
|
static constexpr FwIndexType getNum_prmSetOut_OutputPorts() {
|
|
return NUM_PRMSETOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
#if FW_ENABLE_TEXT_LOGGING == 1
|
|
|
|
//! Get the number of textEventOut output ports
|
|
//!
|
|
//! \return The number of textEventOut output ports
|
|
static constexpr FwIndexType getNum_textEventOut_OutputPorts() {
|
|
return NUM_TEXTEVENTOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
#endif
|
|
|
|
//! Get the number of timeGetOut output ports
|
|
//!
|
|
//! \return The number of timeGetOut output ports
|
|
static constexpr FwIndexType getNum_timeGetOut_OutputPorts() {
|
|
return NUM_TIMEGETOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of tlmOut output ports
|
|
//!
|
|
//! \return The number of tlmOut output ports
|
|
static constexpr FwIndexType getNum_tlmOut_OutputPorts() {
|
|
return NUM_TLMOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Getters for numbers of typed output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get the number of noArgsOut output ports
|
|
//!
|
|
//! \return The number of noArgsOut output ports
|
|
static constexpr FwIndexType getNum_noArgsOut_OutputPorts() {
|
|
return NUM_NOARGSOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsReturnOut output ports
|
|
//!
|
|
//! \return The number of noArgsReturnOut output ports
|
|
static constexpr FwIndexType getNum_noArgsReturnOut_OutputPorts() {
|
|
return NUM_NOARGSRETURNOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of noArgsStringReturnOut output ports
|
|
//!
|
|
//! \return The number of noArgsStringReturnOut output ports
|
|
static constexpr FwIndexType getNum_noArgsStringReturnOut_OutputPorts() {
|
|
return NUM_NOARGSSTRINGRETURNOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAliasOut output ports
|
|
//!
|
|
//! \return The number of typedAliasOut output ports
|
|
static constexpr FwIndexType getNum_typedAliasOut_OutputPorts() {
|
|
return NUM_TYPEDALIASOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAliasReturnOut output ports
|
|
//!
|
|
//! \return The number of typedAliasReturnOut output ports
|
|
static constexpr FwIndexType getNum_typedAliasReturnOut_OutputPorts() {
|
|
return NUM_TYPEDALIASRETURNOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedAliasReturnStringOut output ports
|
|
//!
|
|
//! \return The number of typedAliasReturnStringOut output ports
|
|
static constexpr FwIndexType getNum_typedAliasReturnStringOut_OutputPorts() {
|
|
return NUM_TYPEDALIASRETURNSTRINGOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedOut output ports
|
|
//!
|
|
//! \return The number of typedOut output ports
|
|
static constexpr FwIndexType getNum_typedOut_OutputPorts() {
|
|
return NUM_TYPEDOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
//! Get the number of typedReturnOut output ports
|
|
//!
|
|
//! \return The number of typedReturnOut output ports
|
|
static constexpr FwIndexType getNum_typedReturnOut_OutputPorts() {
|
|
return NUM_TYPEDRETURNOUT_OUTPUT_PORTS;
|
|
}
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Connection status queries for special output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Check whether port cmdRegOut is connected
|
|
//!
|
|
//! \return Whether port cmdRegOut is connected
|
|
bool isConnected_cmdRegOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port cmdResponseOut is connected
|
|
//!
|
|
//! \return Whether port cmdResponseOut is connected
|
|
bool isConnected_cmdResponseOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port eventOut is connected
|
|
//!
|
|
//! \return Whether port eventOut is connected
|
|
bool isConnected_eventOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port prmGetOut is connected
|
|
//!
|
|
//! \return Whether port prmGetOut is connected
|
|
bool isConnected_prmGetOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port prmSetOut is connected
|
|
//!
|
|
//! \return Whether port prmSetOut is connected
|
|
bool isConnected_prmSetOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
#if FW_ENABLE_TEXT_LOGGING == 1
|
|
|
|
//! Check whether port textEventOut is connected
|
|
//!
|
|
//! \return Whether port textEventOut is connected
|
|
bool isConnected_textEventOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
#endif
|
|
|
|
//! Check whether port timeGetOut is connected
|
|
//!
|
|
//! \return Whether port timeGetOut is connected
|
|
bool isConnected_timeGetOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port tlmOut is connected
|
|
//!
|
|
//! \return Whether port tlmOut is connected
|
|
bool isConnected_tlmOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Connection status queries for typed output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Check whether port noArgsOut is connected
|
|
//!
|
|
//! \return Whether port noArgsOut is connected
|
|
bool isConnected_noArgsOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port noArgsReturnOut is connected
|
|
//!
|
|
//! \return Whether port noArgsReturnOut is connected
|
|
bool isConnected_noArgsReturnOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port noArgsStringReturnOut is connected
|
|
//!
|
|
//! \return Whether port noArgsStringReturnOut is connected
|
|
bool isConnected_noArgsStringReturnOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port typedAliasOut is connected
|
|
//!
|
|
//! \return Whether port typedAliasOut is connected
|
|
bool isConnected_typedAliasOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port typedAliasReturnOut is connected
|
|
//!
|
|
//! \return Whether port typedAliasReturnOut is connected
|
|
bool isConnected_typedAliasReturnOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port typedAliasReturnStringOut is connected
|
|
//!
|
|
//! \return Whether port typedAliasReturnStringOut is connected
|
|
bool isConnected_typedAliasReturnStringOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port typedOut is connected
|
|
//!
|
|
//! \return Whether port typedOut is connected
|
|
bool isConnected_typedOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Check whether port typedReturnOut is connected
|
|
//!
|
|
//! \return Whether port typedReturnOut is connected
|
|
bool isConnected_typedReturnOut_OutputPort(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Handlers to implement for typed input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Handler for input port aliasTypedAsync
|
|
virtual void aliasTypedAsync_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsAliasStringReturnSync
|
|
virtual Fw::String noArgsAliasStringReturnSync_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsAsync
|
|
virtual void noArgsAsync_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsGuarded
|
|
virtual void noArgsGuarded_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsReturnGuarded
|
|
virtual U32 noArgsReturnGuarded_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsReturnSync
|
|
virtual U32 noArgsReturnSync_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsStringReturnSync
|
|
virtual Fw::String noArgsStringReturnSync_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port noArgsSync
|
|
virtual void noArgsSync_handler(
|
|
FwIndexType portNum //!< The port number
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAliasGuarded
|
|
virtual void typedAliasGuarded_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAliasReturnSync
|
|
virtual AliasPrim2 typedAliasReturnSync_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAliasStringReturnSync
|
|
virtual Fw::String typedAliasStringReturnSync_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AnotherAliasStruct& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAsync
|
|
virtual void typedAsync_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAsyncAssert
|
|
virtual void typedAsyncAssert_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAsyncBlockPriority
|
|
virtual void typedAsyncBlockPriority_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedAsyncDropPriority
|
|
virtual void typedAsyncDropPriority_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedGuarded
|
|
virtual void typedGuarded_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedReturnGuarded
|
|
virtual F32 typedReturnGuarded_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedReturnSync
|
|
virtual F32 typedReturnSync_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
//! Handler for input port typedSync
|
|
virtual void typedSync_handler(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
) = 0;
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Port handler base-class functions for typed input ports
|
|
//
|
|
// Call these functions directly to bypass the corresponding ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Handler base-class function for input port aliasTypedAsync
|
|
void aliasTypedAsync_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsAliasStringReturnSync
|
|
Fw::String noArgsAliasStringReturnSync_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsAsync
|
|
void noArgsAsync_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsGuarded
|
|
void noArgsGuarded_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsReturnGuarded
|
|
U32 noArgsReturnGuarded_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsReturnSync
|
|
U32 noArgsReturnSync_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsStringReturnSync
|
|
Fw::String noArgsStringReturnSync_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port noArgsSync
|
|
void noArgsSync_handlerBase(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAliasGuarded
|
|
void typedAliasGuarded_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAliasReturnSync
|
|
AliasPrim2 typedAliasReturnSync_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAliasStringReturnSync
|
|
Fw::String typedAliasStringReturnSync_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AnotherAliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAsync
|
|
void typedAsync_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAsyncAssert
|
|
void typedAsyncAssert_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAsyncBlockPriority
|
|
void typedAsyncBlockPriority_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedAsyncDropPriority
|
|
void typedAsyncDropPriority_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedGuarded
|
|
void typedGuarded_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedReturnGuarded
|
|
F32 typedReturnGuarded_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedReturnSync
|
|
F32 typedReturnSync_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Handler base-class function for input port typedSync
|
|
void typedSync_handlerBase(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Pre-message hooks for typed async input ports
|
|
//
|
|
// Each of these functions is invoked just before processing a message
|
|
// on the corresponding port. By default, they do nothing. You can
|
|
// override them to provide specific pre-message behavior.
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Pre-message hook for async input port aliasTypedAsync
|
|
virtual void aliasTypedAsync_preMsgHook(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Pre-message hook for async input port noArgsAsync
|
|
virtual void noArgsAsync_preMsgHook(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Pre-message hook for async input port typedAsync
|
|
virtual void typedAsync_preMsgHook(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Pre-message hook for async input port typedAsyncAssert
|
|
virtual void typedAsyncAssert_preMsgHook(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Pre-message hook for async input port typedAsyncBlockPriority
|
|
virtual void typedAsyncBlockPriority_preMsgHook(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Pre-message hook for async input port typedAsyncDropPriority
|
|
virtual void typedAsyncDropPriority_preMsgHook(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Invocation functions for typed output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Invoke output port noArgsOut
|
|
void noArgsOut_out(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Invoke output port noArgsReturnOut
|
|
U32 noArgsReturnOut_out(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Invoke output port noArgsStringReturnOut
|
|
Fw::String noArgsStringReturnOut_out(
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Invoke output port typedAliasOut
|
|
void typedAliasOut_out(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Invoke output port typedAliasReturnOut
|
|
AliasPrim2 typedAliasReturnOut_out(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Invoke output port typedAliasReturnStringOut
|
|
Fw::String typedAliasReturnStringOut_out(
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AnotherAliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Invoke output port typedOut
|
|
void typedOut_out(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Invoke output port typedReturnOut
|
|
F32 typedReturnOut_out(
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Command response
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Emit command response
|
|
void cmdResponse_out(
|
|
FwOpcodeType opCode, //!< The opcode
|
|
U32 cmdSeq, //!< The command sequence number
|
|
Fw::CmdResponse response //!< The command response
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter update hook
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! \brief Called whenever a parameter is updated
|
|
//!
|
|
//! This function does nothing by default. You may override it.
|
|
virtual void parameterUpdated(
|
|
FwPrmIdType id //!< The parameter ID
|
|
);
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter load hook
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! \brief Called whenever parameters are loaded
|
|
//!
|
|
//! This function does nothing by default. You may override it.
|
|
virtual void parametersLoaded();
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter get functions
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get parameter ParamI32Ext
|
|
//!
|
|
//! \return The parameter value
|
|
//!
|
|
//! An externally stored parameter with I32 data
|
|
//! Second line of annotation
|
|
I32 paramGet_ParamI32Ext(
|
|
Fw::ParamValid& valid //!< Whether the parameter is valid
|
|
);
|
|
|
|
//! Get parameter ParamF64Ext
|
|
//!
|
|
//! \return The parameter value
|
|
//!
|
|
//! An externally stored parameter with F64 data
|
|
F64 paramGet_ParamF64Ext(
|
|
Fw::ParamValid& valid //!< Whether the parameter is valid
|
|
);
|
|
|
|
//! Get parameter ParamStringExt
|
|
//!
|
|
//! \return The parameter value
|
|
//!
|
|
//! An externally stored parameter with string data and default value
|
|
Fw::ParamString paramGet_ParamStringExt(
|
|
Fw::ParamValid& valid //!< Whether the parameter is valid
|
|
);
|
|
|
|
//! Get parameter ParamEnumExt
|
|
//!
|
|
//! \return The parameter value
|
|
//!
|
|
//! An externally stored parameter with enum data
|
|
E paramGet_ParamEnumExt(
|
|
Fw::ParamValid& valid //!< Whether the parameter is valid
|
|
);
|
|
|
|
//! Get parameter ParamArrayExt
|
|
//!
|
|
//! \return The parameter value
|
|
//!
|
|
//! An externally stored parameter with array data, default value, and save opcode
|
|
A paramGet_ParamArrayExt(
|
|
Fw::ParamValid& valid //!< Whether the parameter is valid
|
|
);
|
|
|
|
//! Get parameter ParamStructExt
|
|
//!
|
|
//! \return The parameter value
|
|
//!
|
|
//! An externally stored parameter with struct data and set/save opcodes
|
|
S paramGet_ParamStructExt(
|
|
Fw::ParamValid& valid //!< Whether the parameter is valid
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// External parameter delegate initialization
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Initialize the external parameter delegate
|
|
void registerExternalParameters(
|
|
Fw::ParamExternalDelegate* paramExternalDelegatePtr //!< The delegate for externally managed parameters
|
|
);
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Time
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Get the time
|
|
//!
|
|
//! \\return The current time
|
|
Fw::Time getTime() const;
|
|
|
|
protected:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Mutex operations for guarded ports
|
|
//
|
|
// You can override these operations to provide more sophisticated
|
|
// synchronization
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Lock the guarded mutex
|
|
virtual void lock();
|
|
|
|
//! Unlock the guarded mutex
|
|
virtual void unLock();
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Message dispatch functions
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Called in the message loop to dispatch a message from the queue
|
|
virtual MsgDispatchStatus doDispatch();
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Calls for messages received on special input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Callback for port cmdIn
|
|
static void m_p_cmdIn_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
FwOpcodeType opCode, //!< Command Op Code
|
|
U32 cmdSeq, //!< Command Sequence
|
|
Fw::CmdArgBuffer& args //!< Buffer containing arguments
|
|
);
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Calls for messages received on typed input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Callback for port aliasTypedAsync
|
|
static void m_p_aliasTypedAsync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port noArgsAliasStringReturnSync
|
|
static Fw::String m_p_noArgsAliasStringReturnSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port noArgsAsync
|
|
static void m_p_noArgsAsync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port noArgsGuarded
|
|
static void m_p_noArgsGuarded_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port noArgsReturnGuarded
|
|
static U32 m_p_noArgsReturnGuarded_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port noArgsReturnSync
|
|
static U32 m_p_noArgsReturnSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port noArgsStringReturnSync
|
|
static Fw::String m_p_noArgsStringReturnSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port noArgsSync
|
|
static void m_p_noArgsSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum //!< The port number
|
|
);
|
|
|
|
//! Callback for port typedAliasGuarded
|
|
static void m_p_typedAliasGuarded_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedAliasReturnSync
|
|
static AliasPrim2 m_p_typedAliasReturnSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedAliasStringReturnSync
|
|
static Fw::String m_p_typedAliasStringReturnSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
AliasPrim1 u32, //!< A primitive
|
|
AliasPrim2 f32, //!< Another primtive
|
|
AliasBool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const AliasEnum& e, //!< An enum
|
|
const AliasArray& a, //!< An array
|
|
const AnotherAliasStruct& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedAsync
|
|
static void m_p_typedAsync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedAsyncAssert
|
|
static void m_p_typedAsyncAssert_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedAsyncBlockPriority
|
|
static void m_p_typedAsyncBlockPriority_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedAsyncDropPriority
|
|
static void m_p_typedAsyncDropPriority_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedGuarded
|
|
static void m_p_typedGuarded_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedReturnGuarded
|
|
static F32 m_p_typedReturnGuarded_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedReturnSync
|
|
static F32 m_p_typedReturnSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str2, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
//! Callback for port typedSync
|
|
static void m_p_typedSync_in(
|
|
Fw::PassiveComponentBase* callComp, //!< The component instance
|
|
FwIndexType portNum, //!< The port number
|
|
U32 u32, //!< A U32
|
|
F32 f32, //!< An F32
|
|
bool b, //!< A boolean
|
|
const Fw::StringBase& str1, //!< A string
|
|
const E& e, //!< An enum
|
|
const A& a, //!< An array
|
|
const S& s //!< A struct
|
|
);
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter set functions
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Set parameter ParamI32Ext
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSet_ParamI32Ext(
|
|
Fw::SerializeBufferBase& val //!< The serialization buffer
|
|
);
|
|
|
|
//! Set parameter ParamF64Ext
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSet_ParamF64Ext(
|
|
Fw::SerializeBufferBase& val //!< The serialization buffer
|
|
);
|
|
|
|
//! Set parameter ParamStringExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSet_ParamStringExt(
|
|
Fw::SerializeBufferBase& val //!< The serialization buffer
|
|
);
|
|
|
|
//! Set parameter ParamEnumExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSet_ParamEnumExt(
|
|
Fw::SerializeBufferBase& val //!< The serialization buffer
|
|
);
|
|
|
|
//! Set parameter ParamArrayExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSet_ParamArrayExt(
|
|
Fw::SerializeBufferBase& val //!< The serialization buffer
|
|
);
|
|
|
|
//! Set parameter ParamStructExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSet_ParamStructExt(
|
|
Fw::SerializeBufferBase& val //!< The serialization buffer
|
|
);
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter save functions
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Save parameter ParamI32Ext
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSave_ParamI32Ext();
|
|
|
|
//! Save parameter ParamF64Ext
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSave_ParamF64Ext();
|
|
|
|
//! Save parameter ParamStringExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSave_ParamStringExt();
|
|
|
|
//! Save parameter ParamEnumExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSave_ParamEnumExt();
|
|
|
|
//! Save parameter ParamArrayExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSave_ParamArrayExt();
|
|
|
|
//! Save parameter ParamStructExt
|
|
//!
|
|
//! \return The command response
|
|
Fw::CmdResponse paramSave_ParamStructExt();
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Special input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Input port cmdIn
|
|
Fw::InputCmdPort m_cmdIn_InputPort[NUM_CMDIN_INPUT_PORTS];
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Typed input ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Input port aliasTypedAsync
|
|
Ports::InputAliasTypedPort m_aliasTypedAsync_InputPort[NUM_ALIASTYPEDASYNC_INPUT_PORTS];
|
|
|
|
//! Input port noArgsAliasStringReturnSync
|
|
Ports::InputNoArgsAliasStringReturnPort m_noArgsAliasStringReturnSync_InputPort[NUM_NOARGSALIASSTRINGRETURNSYNC_INPUT_PORTS];
|
|
|
|
//! Input port noArgsAsync
|
|
Ports::InputNoArgsPort m_noArgsAsync_InputPort[NUM_NOARGSASYNC_INPUT_PORTS];
|
|
|
|
//! Input port noArgsGuarded
|
|
Ports::InputNoArgsPort m_noArgsGuarded_InputPort[NUM_NOARGSGUARDED_INPUT_PORTS];
|
|
|
|
//! Input port noArgsReturnGuarded
|
|
Ports::InputNoArgsReturnPort m_noArgsReturnGuarded_InputPort[NUM_NOARGSRETURNGUARDED_INPUT_PORTS];
|
|
|
|
//! Input port noArgsReturnSync
|
|
Ports::InputNoArgsReturnPort m_noArgsReturnSync_InputPort[NUM_NOARGSRETURNSYNC_INPUT_PORTS];
|
|
|
|
//! Input port noArgsStringReturnSync
|
|
Ports::InputNoArgsStringReturnPort m_noArgsStringReturnSync_InputPort[NUM_NOARGSSTRINGRETURNSYNC_INPUT_PORTS];
|
|
|
|
//! Input port noArgsSync
|
|
Ports::InputNoArgsPort m_noArgsSync_InputPort[NUM_NOARGSSYNC_INPUT_PORTS];
|
|
|
|
//! Input port typedAliasGuarded
|
|
Ports::InputAliasTypedPort m_typedAliasGuarded_InputPort[NUM_TYPEDALIASGUARDED_INPUT_PORTS];
|
|
|
|
//! Input port typedAliasReturnSync
|
|
Ports::InputAliasTypedReturnPort m_typedAliasReturnSync_InputPort[NUM_TYPEDALIASRETURNSYNC_INPUT_PORTS];
|
|
|
|
//! Input port typedAliasStringReturnSync
|
|
Ports::InputAliasTypedReturnStringPort m_typedAliasStringReturnSync_InputPort[NUM_TYPEDALIASSTRINGRETURNSYNC_INPUT_PORTS];
|
|
|
|
//! Input port typedAsync
|
|
Ports::InputTypedPort m_typedAsync_InputPort[NUM_TYPEDASYNC_INPUT_PORTS];
|
|
|
|
//! Input port typedAsyncAssert
|
|
Ports::InputTypedPort m_typedAsyncAssert_InputPort[NUM_TYPEDASYNCASSERT_INPUT_PORTS];
|
|
|
|
//! Input port typedAsyncBlockPriority
|
|
Ports::InputTypedPort m_typedAsyncBlockPriority_InputPort[NUM_TYPEDASYNCBLOCKPRIORITY_INPUT_PORTS];
|
|
|
|
//! Input port typedAsyncDropPriority
|
|
Ports::InputTypedPort m_typedAsyncDropPriority_InputPort[NUM_TYPEDASYNCDROPPRIORITY_INPUT_PORTS];
|
|
|
|
//! Input port typedGuarded
|
|
Ports::InputTypedPort m_typedGuarded_InputPort[NUM_TYPEDGUARDED_INPUT_PORTS];
|
|
|
|
//! Input port typedReturnGuarded
|
|
Ports::InputTypedReturnPort m_typedReturnGuarded_InputPort[NUM_TYPEDRETURNGUARDED_INPUT_PORTS];
|
|
|
|
//! Input port typedReturnSync
|
|
Ports::InputTypedReturnPort m_typedReturnSync_InputPort[NUM_TYPEDRETURNSYNC_INPUT_PORTS];
|
|
|
|
//! Input port typedSync
|
|
Ports::InputTypedPort m_typedSync_InputPort[NUM_TYPEDSYNC_INPUT_PORTS];
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Special output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Output port cmdRegOut
|
|
Fw::OutputCmdRegPort m_cmdRegOut_OutputPort[NUM_CMDREGOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port cmdResponseOut
|
|
Fw::OutputCmdResponsePort m_cmdResponseOut_OutputPort[NUM_CMDRESPONSEOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port eventOut
|
|
Fw::OutputLogPort m_eventOut_OutputPort[NUM_EVENTOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port prmGetOut
|
|
Fw::OutputPrmGetPort m_prmGetOut_OutputPort[NUM_PRMGETOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port prmSetOut
|
|
Fw::OutputPrmSetPort m_prmSetOut_OutputPort[NUM_PRMSETOUT_OUTPUT_PORTS];
|
|
|
|
#if FW_ENABLE_TEXT_LOGGING == 1
|
|
|
|
//! Output port textEventOut
|
|
Fw::OutputLogTextPort m_textEventOut_OutputPort[NUM_TEXTEVENTOUT_OUTPUT_PORTS];
|
|
|
|
#endif
|
|
|
|
//! Output port timeGetOut
|
|
Fw::OutputTimePort m_timeGetOut_OutputPort[NUM_TIMEGETOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port tlmOut
|
|
Fw::OutputTlmPort m_tlmOut_OutputPort[NUM_TLMOUT_OUTPUT_PORTS];
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Typed output ports
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Output port noArgsOut
|
|
Ports::OutputNoArgsPort m_noArgsOut_OutputPort[NUM_NOARGSOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port noArgsReturnOut
|
|
Ports::OutputNoArgsReturnPort m_noArgsReturnOut_OutputPort[NUM_NOARGSRETURNOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port noArgsStringReturnOut
|
|
Ports::OutputNoArgsStringReturnPort m_noArgsStringReturnOut_OutputPort[NUM_NOARGSSTRINGRETURNOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port typedAliasOut
|
|
Ports::OutputAliasTypedPort m_typedAliasOut_OutputPort[NUM_TYPEDALIASOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port typedAliasReturnOut
|
|
Ports::OutputAliasTypedReturnPort m_typedAliasReturnOut_OutputPort[NUM_TYPEDALIASRETURNOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port typedAliasReturnStringOut
|
|
Ports::OutputAliasTypedReturnStringPort m_typedAliasReturnStringOut_OutputPort[NUM_TYPEDALIASRETURNSTRINGOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port typedOut
|
|
Ports::OutputTypedPort m_typedOut_OutputPort[NUM_TYPEDOUT_OUTPUT_PORTS];
|
|
|
|
//! Output port typedReturnOut
|
|
Ports::OutputTypedReturnPort m_typedReturnOut_OutputPort[NUM_TYPEDRETURNOUT_OUTPUT_PORTS];
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Parameter delegates
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Delegate to serialize/deserialize an externally stored parameter
|
|
Fw::ParamExternalDelegate* paramDelegatePtr;
|
|
|
|
private:
|
|
|
|
// ----------------------------------------------------------------------
|
|
// Mutexes
|
|
// ----------------------------------------------------------------------
|
|
|
|
//! Mutex for guarded ports
|
|
Os::Mutex m_guardedPortMutex;
|
|
|
|
//! Mutex for locking parameters during sets and saves
|
|
Os::Mutex m_paramLock;
|
|
|
|
};
|
|
|
|
#endif
|