9 #if FW_ENABLE_TEXT_LOGGING 32 this->m_cmdIn_InputPort[port].
init();
37 this->m_cmdIn_InputPort[port].
setPortNum(port);
39 #if FW_OBJECT_NAMES == 1 43 this->m_objName.toChar(),
46 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
56 this->m_getVersion_InputPort[port].
init();
61 this->m_getVersion_InputPort[port].
setPortNum(port);
63 #if FW_OBJECT_NAMES == 1 67 this->m_objName.toChar(),
70 this->m_getVersion_InputPort[port].setObjName(portName.
toChar());
80 this->m_setVersion_InputPort[port].
init();
85 this->m_setVersion_InputPort[port].
setPortNum(port);
87 #if FW_OBJECT_NAMES == 1 91 this->m_objName.toChar(),
94 this->m_setVersion_InputPort[port].setObjName(portName.
toChar());
104 this->m_cmdRegOut_OutputPort[port].
init();
106 #if FW_OBJECT_NAMES == 1 110 this->m_objName.toChar(),
113 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
123 this->m_cmdResponseOut_OutputPort[port].
init();
125 #if FW_OBJECT_NAMES == 1 129 this->m_objName.toChar(),
132 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
142 this->m_logOut_OutputPort[port].
init();
144 #if FW_OBJECT_NAMES == 1 148 this->m_objName.toChar(),
151 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
155 #if FW_ENABLE_TEXT_LOGGING == 1 159 port < static_cast<FwIndexType>(this->getNum_logTextOut_OutputPorts());
162 this->m_logTextOut_OutputPort[port].
init();
164 #if FW_OBJECT_NAMES == 1 168 this->m_objName.toChar(),
171 this->m_logTextOut_OutputPort[port].setObjName(portName.
toChar());
182 this->m_timeCaller_OutputPort[port].
init();
184 #if FW_OBJECT_NAMES == 1 188 this->m_objName.toChar(),
191 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
201 this->m_tlmOut_OutputPort[port].
init();
203 #if FW_OBJECT_NAMES == 1 207 this->m_objName.toChar(),
210 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
224 static_cast<FwAssertArgType>(portNum)
227 return &this->m_cmdIn_InputPort[portNum];
239 static_cast<FwAssertArgType>(portNum)
242 return &this->m_getVersion_InputPort[portNum];
250 static_cast<FwAssertArgType>(portNum)
253 return &this->m_setVersion_InputPort[portNum];
268 static_cast<FwAssertArgType>(portNum)
271 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
282 static_cast<FwAssertArgType>(portNum)
285 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
296 static_cast<FwAssertArgType>(portNum)
299 this->m_logOut_OutputPort[portNum].
addCallPort(port);
302 #if FW_ENABLE_TEXT_LOGGING == 1 304 void VersionComponentBase ::
305 set_logTextOut_OutputPort(
311 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
312 static_cast<FwAssertArgType>(portNum)
315 this->m_logTextOut_OutputPort[portNum].addCallPort(port);
328 static_cast<FwAssertArgType>(portNum)
331 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
342 static_cast<FwAssertArgType>(portNum)
345 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
348 #if FW_PORT_SERIALIZATION 357 Fw::InputSerializePort* port
362 static_cast<FwAssertArgType>(portNum)
365 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
371 Fw::InputSerializePort* port
376 static_cast<FwAssertArgType>(portNum)
379 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
385 Fw::InputSerializePort* port
390 static_cast<FwAssertArgType>(portNum)
393 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
396 #if FW_ENABLE_TEXT_LOGGING == 1 398 void VersionComponentBase ::
399 set_logTextOut_OutputPort(
401 Fw::InputSerializePort* port
405 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
406 static_cast<FwAssertArgType>(portNum)
409 this->m_logTextOut_OutputPort[portNum].registerSerialPort(port);
417 Fw::InputSerializePort* port
422 static_cast<FwAssertArgType>(portNum)
425 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
431 Fw::InputSerializePort* port
436 static_cast<FwAssertArgType>(portNum)
439 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
451 FW_ASSERT(this->m_cmdRegOut_OutputPort[0].isConnected());
453 this->m_cmdRegOut_OutputPort[0].
invoke(
457 this->m_cmdRegOut_OutputPort[0].
invoke(
468 Fw::PassiveComponentBase(compName)
488 static_cast<FwAssertArgType>(portNum)
491 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
499 static_cast<FwAssertArgType>(portNum)
502 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
510 static_cast<FwAssertArgType>(portNum)
513 return this->m_logOut_OutputPort[portNum].
isConnected();
516 #if FW_ENABLE_TEXT_LOGGING == 1 518 bool VersionComponentBase ::
519 isConnected_logTextOut_OutputPort(
FwIndexType portNum)
522 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
523 static_cast<FwAssertArgType>(portNum)
526 return this->m_logTextOut_OutputPort[portNum].isConnected();
536 static_cast<FwAssertArgType>(portNum)
539 return this->m_timeCaller_OutputPort[portNum].
isConnected();
547 static_cast<FwAssertArgType>(portNum)
550 return this->m_tlmOut_OutputPort[portNum].
isConnected();
570 static_cast<FwAssertArgType>(portNum)
599 static_cast<FwAssertArgType>(portNum)
628 FW_ASSERT(this->m_cmdResponseOut_OutputPort[0].isConnected());
629 this->m_cmdResponseOut_OutputPort[0].
invoke(opCode, cmdSeq, response);
654 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
655 this->m_cmdResponseOut_OutputPort[0].
invoke(
664 #if FW_CMD_CHECK_RESIDUAL 668 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
669 this->m_cmdResponseOut_OutputPort[0].
invoke(
705 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
706 this->m_cmdResponseOut_OutputPort[0].
invoke(
715 #if FW_CMD_CHECK_RESIDUAL 719 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
720 this->m_cmdResponseOut_OutputPort[0].
invoke(
749 if (this->m_timeCaller_OutputPort[0].isConnected()) {
750 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
758 if (this->m_logOut_OutputPort[0].isConnected()) {
762 #if FW_AMPCS_COMPATIBLE 767 static_cast<FwAssertArgType>(_status)
774 static_cast<FwAssertArgType>(_status)
777 this->m_logOut_OutputPort[0].
invoke(
786 #if FW_ENABLE_TEXT_LOGGING 787 if (this->m_logTextOut_OutputPort[0].isConnected()) {
788 #if FW_OBJECT_NAMES == 1 789 const char* _formatString =
790 "(%s) %s: Framework Version: [%s]";
792 const char* _formatString =
793 "%s: Framework Version: [%s]";
800 this->m_objName.toChar(),
806 this->m_logTextOut_OutputPort[0].invoke(
821 if (this->m_timeCaller_OutputPort[0].isConnected()) {
822 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
830 if (this->m_logOut_OutputPort[0].isConnected()) {
834 #if FW_AMPCS_COMPATIBLE 839 static_cast<FwAssertArgType>(_status)
846 static_cast<FwAssertArgType>(_status)
849 this->m_logOut_OutputPort[0].
invoke(
858 #if FW_ENABLE_TEXT_LOGGING 859 if (this->m_logTextOut_OutputPort[0].isConnected()) {
860 #if FW_OBJECT_NAMES == 1 861 const char* _formatString =
862 "(%s) %s: Project Version: [%s]";
864 const char* _formatString =
865 "%s: Project Version: [%s]";
872 this->m_objName.toChar(),
878 this->m_logTextOut_OutputPort[0].invoke(
893 if (this->m_timeCaller_OutputPort[0].isConnected()) {
894 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
902 if (this->m_logOut_OutputPort[0].isConnected()) {
906 #if FW_AMPCS_COMPATIBLE 911 static_cast<FwAssertArgType>(_status)
918 static_cast<FwAssertArgType>(_status)
921 this->m_logOut_OutputPort[0].
invoke(
930 #if FW_ENABLE_TEXT_LOGGING 931 if (this->m_logTextOut_OutputPort[0].isConnected()) {
932 #if FW_OBJECT_NAMES == 1 933 const char* _formatString =
934 "(%s) %s: Library Versions: [%s]";
936 const char* _formatString =
937 "%s: Library Versions: [%s]";
944 this->m_objName.toChar(),
950 this->m_logTextOut_OutputPort[0].invoke(
968 if (this->m_timeCaller_OutputPort[0].isConnected()) {
969 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
977 if (this->m_logOut_OutputPort[0].isConnected()) {
981 #if FW_AMPCS_COMPATIBLE 986 static_cast<FwAssertArgType>(_status)
990 #if FW_AMPCS_COMPATIBLE 997 static_cast<FwAssertArgType>(_status)
1003 static_cast<FwAssertArgType>(_status)
1009 static_cast<FwAssertArgType>(_status)
1012 this->m_logOut_OutputPort[0].
invoke(
1021 #if FW_ENABLE_TEXT_LOGGING 1022 if (this->m_logTextOut_OutputPort[0].isConnected()) {
1023 #if FW_OBJECT_NAMES == 1 1024 const char* _formatString =
1025 "(%s) %s: Custom Versions: [%s] [%s]";
1027 const char* _formatString =
1028 "%s: Custom Versions: [%s] [%s]";
1032 version_enum.toString(version_enumStr);
1038 this->m_objName.toChar(),
1041 version_enumStr.
toChar(),
1045 this->m_logTextOut_OutputPort[0].invoke(
1065 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1067 this->m_timeCaller_OutputPort[0].isConnected() &&
1070 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1077 static_cast<FwAssertArgType>(_stat)
1084 this->m_tlmOut_OutputPort[0].
invoke(
1098 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1100 this->m_timeCaller_OutputPort[0].isConnected() &&
1103 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1110 static_cast<FwAssertArgType>(_stat)
1117 this->m_tlmOut_OutputPort[0].
invoke(
1131 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1133 this->m_timeCaller_OutputPort[0].isConnected() &&
1136 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1143 static_cast<FwAssertArgType>(_stat)
1150 this->m_tlmOut_OutputPort[0].
invoke(
1164 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1166 this->m_timeCaller_OutputPort[0].isConnected() &&
1169 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1176 static_cast<FwAssertArgType>(_stat)
1183 this->m_tlmOut_OutputPort[0].
invoke(
1197 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1199 this->m_timeCaller_OutputPort[0].isConnected() &&
1202 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1209 static_cast<FwAssertArgType>(_stat)
1216 this->m_tlmOut_OutputPort[0].
invoke(
1230 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1232 this->m_timeCaller_OutputPort[0].isConnected() &&
1235 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1242 static_cast<FwAssertArgType>(_stat)
1249 this->m_tlmOut_OutputPort[0].
invoke(
1263 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1265 this->m_timeCaller_OutputPort[0].isConnected() &&
1268 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1275 static_cast<FwAssertArgType>(_stat)
1282 this->m_tlmOut_OutputPort[0].
invoke(
1296 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1298 this->m_timeCaller_OutputPort[0].isConnected() &&
1301 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1308 static_cast<FwAssertArgType>(_stat)
1315 this->m_tlmOut_OutputPort[0].
invoke(
1329 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1331 this->m_timeCaller_OutputPort[0].isConnected() &&
1334 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1341 static_cast<FwAssertArgType>(_stat)
1348 this->m_tlmOut_OutputPort[0].
invoke(
1362 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1364 this->m_timeCaller_OutputPort[0].isConnected() &&
1367 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1374 static_cast<FwAssertArgType>(_stat)
1381 this->m_tlmOut_OutputPort[0].
invoke(
1395 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1397 this->m_timeCaller_OutputPort[0].isConnected() &&
1400 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1407 static_cast<FwAssertArgType>(_stat)
1414 this->m_tlmOut_OutputPort[0].
invoke(
1428 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1430 this->m_timeCaller_OutputPort[0].isConnected() &&
1433 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1440 static_cast<FwAssertArgType>(_stat)
1447 this->m_tlmOut_OutputPort[0].
invoke(
1461 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1463 this->m_timeCaller_OutputPort[0].isConnected() &&
1466 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1473 static_cast<FwAssertArgType>(_stat)
1480 this->m_tlmOut_OutputPort[0].
invoke(
1494 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1496 this->m_timeCaller_OutputPort[0].isConnected() &&
1499 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1506 static_cast<FwAssertArgType>(_stat)
1513 this->m_tlmOut_OutputPort[0].
invoke(
1527 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1529 this->m_timeCaller_OutputPort[0].isConnected() &&
1532 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1539 static_cast<FwAssertArgType>(_stat)
1546 this->m_tlmOut_OutputPort[0].
invoke(
1560 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1562 this->m_timeCaller_OutputPort[0].isConnected() &&
1565 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1572 static_cast<FwAssertArgType>(_stat)
1579 this->m_tlmOut_OutputPort[0].
invoke(
1593 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1595 this->m_timeCaller_OutputPort[0].isConnected() &&
1598 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1605 static_cast<FwAssertArgType>(_stat)
1612 this->m_tlmOut_OutputPort[0].
invoke(
1626 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1628 this->m_timeCaller_OutputPort[0].isConnected() &&
1631 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1638 static_cast<FwAssertArgType>(_stat)
1645 this->m_tlmOut_OutputPort[0].
invoke(
1659 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1661 this->m_timeCaller_OutputPort[0].isConnected() &&
1664 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1671 static_cast<FwAssertArgType>(_stat)
1678 this->m_tlmOut_OutputPort[0].
invoke(
1692 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1694 this->m_timeCaller_OutputPort[0].isConnected() &&
1697 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1704 static_cast<FwAssertArgType>(_stat)
1711 this->m_tlmOut_OutputPort[0].
invoke(
1725 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1727 this->m_timeCaller_OutputPort[0].isConnected() &&
1730 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1737 static_cast<FwAssertArgType>(_stat)
1744 this->m_tlmOut_OutputPort[0].
invoke(
1758 if (this->m_tlmOut_OutputPort[0].isConnected()) {
1760 this->m_timeCaller_OutputPort[0].isConnected() &&
1763 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
1770 static_cast<FwAssertArgType>(_stat)
1777 this->m_tlmOut_OutputPort[0].
invoke(
1792 if (this->m_timeCaller_OutputPort[0].isConnected()) {
1794 this->m_timeCaller_OutputPort[0].
invoke(_time);
1812 this->m_guardedPortMutex.
lock();
1818 this->m_guardedPortMutex.
unLock();
1825 void VersionComponentBase ::
1837 const U32 idBase = callComp->
getIdBase();
1838 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
1841 switch (opCode - idBase) {
1866 void VersionComponentBase ::
1877 compPtr->getVersion_handlerBase(
1885 void VersionComponentBase ::
1896 compPtr->setVersion_handlerBase(
Serialization/Deserialization operation was successful.
void tlmWrite_LibraryVersion10(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion10.
void tlmWrite_CustomVersion07(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion07.
void addCallPort(InputTimePort *callPort)
Register an input port.
void tlmWrite_LibraryVersion04(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion04.
void regCommands()
Register commands with the Command Dispatcher.
FwIdType FwOpcodeType
The type of a command opcode.
void tlmWrite_LibraryVersion01(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
virtual void getVersion_handler(FwIndexType portNum, const Svc::VersionCfg::VersionEnum &version_id, Fw::StringBase &version_string, Svc::VersionStatus &status)=0
Handler for input port getVersion.
SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG) override
Serialize an 8-bit unsigned integer value.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
bool isConnected_logOut_OutputPort(FwIndexType portNum)
FwIdType getIdBase() const
void tlmWrite_CustomVersion02(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion02.
Channel ID for LibraryVersion05.
The size of the serial representation.
void tlmWrite_CustomVersion10(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion10.
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
Channel ID for CustomVersion02.
void tlmWrite_LibraryVersion06(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion06.
const char * toChar() const
Convert to a C-style char*.
Channel ID for ProjectVersion.
static constexpr FwIndexType getNum_cmdIn_InputPorts()
virtual void setVersion_handler(FwIndexType portNum, const Svc::VersionCfg::VersionEnum &version_id, Fw::StringBase &version_string, Svc::VersionStatus &status)=0
Handler for input port setVersion.
Channel ID for CustomVersion03.
Channel ID for CustomVersion10.
Version of the git repository.
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
A command to enable or disable Event verbosity and Telemetry.
void tlmWrite_CustomVersion03(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion03.
void unLock()
unlock the mutex and assert success
Version of the git repository.
Channel ID for LibraryVersion04.
virtual const CHAR * toChar() const =0
Convert to a C-style char*.
void VERSION_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void unLock()
Unlock the guarded mutex.
Channel ID for FrameworkVersion.
void init()
Initialization function.
void tlmWrite_LibraryVersion03(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion03.
Enum representing a command response.
No time base has been established (Required)
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
static constexpr FwIndexType getNum_getVersion_InputPorts()
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
virtual void ENABLE_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::VersionEnabled enable)=0
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
bool isConnected_timeCaller_OutputPort(FwIndexType portNum)
void tlmWrite_LibraryVersion08(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion08.
void addCallPort(InputTlmPort *callPort)
Register an input port.
void init()
Object initializer.
virtual ~VersionComponentBase()
Destroy VersionComponentBase object.
SerializeStatus
forward declaration for string
Channel ID for CustomVersion05.
void setVersion_handlerBase(FwIndexType portNum, const Svc::VersionCfg::VersionEnum &version_id, Fw::StringBase &version_string, Svc::VersionStatus &status)
Handler base-class function for input port setVersion.
Channel ID for LibraryVersion07.
void tlmWrite_CustomVersion05(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion05.
FwIdType FwEventIdType
The type of an event identifier.
Auto-generated base for Version component.
void log_ACTIVITY_LO_ProjectVersion(const Fw::StringBase &version) const
An enumeration for version status.
void invoke(FwOpcodeType opCode) const
Invoke a port interface.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
void init()
Initialization function.
Version of the git repository.
Svc::InputVersionPort * get_getVersion_InputPort(FwIndexType portNum)
Channel ID for CustomVersion09.
Less important informational events.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
#define FW_MIN(a, b)
MIN macro.
void invoke(Fw::Time &time) const
Invoke a port interface.
Serializable::SizeType getDeserializeSizeLeft() const override
Get remaining deserialization buffer size.
Channel ID for CustomVersion08.
const char * toChar() const
Convert to a C-style char*.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port interface.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void tlmWrite_LibraryVersion05(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion05.
Svc::InputVersionPort * get_setVersion_InputPort(FwIndexType portNum)
Channel ID for LibraryVersion02.
void resetDeser() override
Reset deserialization pointer to beginning of buffer.
void getVersion_handlerBase(FwIndexType portNum, const Svc::VersionCfg::VersionEnum &version_id, Fw::StringBase &version_string, Svc::VersionStatus &status)
Handler base-class function for input port getVersion.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port interface.
Channel ID for CustomVersion06.
Channel ID for CustomVersion01.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
Data Structure for custom version Tlm.
void init()
Initialization function.
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
Channel ID for LibraryVersion03.
Channel ID for LibraryVersion10.
virtual void lock()
Lock the guarded mutex.
Command failed to deserialize.
Channel ID for CustomVersion04.
void log_ACTIVITY_LO_CustomVersions(Svc::VersionCfg::VersionEnum version_enum, const Fw::StringBase &version_value) const
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum)
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port interface.
Version of the git repository.
Channel ID for LibraryVersion09.
void tlmWrite_CustomVersion09(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion09.
PlatformIndexType FwIndexType
void tlmWrite_CustomVersion06(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion06.
void tlmWrite_LibraryVersion07(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion07.
static constexpr FwIndexType getNum_logOut_OutputPorts()
void addCallPort(InputLogPort *callPort)
Register an input port.
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
void init()
Initialization function.
RateGroupDivider component implementation.
An enumeration for Version Type.
void tlmWrite_LibraryVersion02(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion02.
Channel ID for CustomVersion07.
bool isConnected_tlmOut_OutputPort(FwIndexType portNum)
SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG) override
Deserialize an 8-bit unsigned integer value.
void ENABLE_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void tlmWrite_CustomVersion04(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion04.
Channel ID for LibraryVersion06.
void tlmWrite_CustomVersion01(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Implementation of malloc based allocator.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum)
Channel ID for LibraryVersion01.
void log_ACTIVITY_LO_FrameworkVersion(const Fw::StringBase &version) const
VersionComponentBase(const char *compName="")
Construct VersionComponentBase object.
void init()
Initialization function.
Channel ID for LibraryVersion08.
void log_ACTIVITY_LO_LibraryVersions(const Fw::StringBase &version) const
Tracks versions for project, framework and user defined versions etc.
void tlmWrite_CustomVersion08(const Svc::CustomVersionDb &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel CustomVersion08.
void tlmWrite_LibraryVersion09(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
Write telemetry channel LibraryVersion09.
static constexpr FwIndexType getNum_setVersion_InputPorts()
void tlmWrite_FrameworkVersion(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
virtual void VERSION_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::VersionType version_type)=0
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
void lock()
lock the mutex and assert success
SerializeStatus serializeTo(SerialBufferBase &buffer, Endianness mode=Endianness::BIG) const override
Serialize the contents of this object to a buffer.
void tlmWrite_ProjectVersion(const Fw::StringBase &arg, Fw::Time _tlmTime=Fw::Time()) const