9 #if FW_ENABLE_TEXT_LOGGING 19 BUFFERSENDIN_BUFFERSEND,
41 class ComponentIpcSerializableBuffer :
51 MAX_DATA_SIZE =
sizeof(BuffUnion),
53 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
57 return sizeof(m_buff);
64 const U8* getBuffAddr()
const {
70 U8 m_buff[SERIALIZATION_SIZE];
88 #if !FW_DIRECT_PORT_CALLS 95 this->m_cmdIn_InputPort[port].
init();
100 this->m_cmdIn_InputPort[port].
setPortNum(port);
102 #if FW_OBJECT_NAMES == 1 106 this->m_objName.toChar(),
109 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
114 #if !FW_DIRECT_PORT_CALLS 121 this->m_bufferSendIn_InputPort[port].
init();
126 this->m_bufferSendIn_InputPort[port].
setPortNum(port);
128 #if FW_OBJECT_NAMES == 1 132 this->m_objName.toChar(),
135 this->m_bufferSendIn_InputPort[port].setObjName(portName.
toChar());
140 #if !FW_DIRECT_PORT_CALLS 147 this->m_comIn_InputPort[port].
init();
152 this->m_comIn_InputPort[port].
setPortNum(port);
154 #if FW_OBJECT_NAMES == 1 158 this->m_objName.toChar(),
161 this->m_comIn_InputPort[port].setObjName(portName.
toChar());
166 #if !FW_DIRECT_PORT_CALLS 173 this->m_pingIn_InputPort[port].
init();
178 this->m_pingIn_InputPort[port].
setPortNum(port);
180 #if FW_OBJECT_NAMES == 1 184 this->m_objName.toChar(),
187 this->m_pingIn_InputPort[port].setObjName(portName.
toChar());
192 #if !FW_DIRECT_PORT_CALLS 199 this->m_schedIn_InputPort[port].
init();
204 this->m_schedIn_InputPort[port].
setPortNum(port);
206 #if FW_OBJECT_NAMES == 1 210 this->m_objName.toChar(),
213 this->m_schedIn_InputPort[port].setObjName(portName.
toChar());
218 #if !FW_DIRECT_PORT_CALLS 225 this->m_cmdRegOut_OutputPort[port].
init();
227 #if FW_OBJECT_NAMES == 1 231 this->m_objName.toChar(),
234 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
239 #if !FW_DIRECT_PORT_CALLS 246 this->m_cmdResponseOut_OutputPort[port].
init();
248 #if FW_OBJECT_NAMES == 1 252 this->m_objName.toChar(),
255 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
260 #if !FW_DIRECT_PORT_CALLS 267 this->m_eventOut_OutputPort[port].
init();
269 #if FW_OBJECT_NAMES == 1 273 this->m_objName.toChar(),
276 this->m_eventOut_OutputPort[port].setObjName(portName.
toChar());
281 #if !FW_DIRECT_PORT_CALLS && FW_ENABLE_TEXT_LOGGING 285 port < static_cast<FwIndexType>(this->getNum_eventOutText_OutputPorts());
288 this->m_eventOutText_OutputPort[port].
init();
290 #if FW_OBJECT_NAMES == 1 294 this->m_objName.toChar(),
297 this->m_eventOutText_OutputPort[port].setObjName(portName.
toChar());
302 #if !FW_DIRECT_PORT_CALLS 309 this->m_timeCaller_OutputPort[port].
init();
311 #if FW_OBJECT_NAMES == 1 315 this->m_objName.toChar(),
318 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
323 #if !FW_DIRECT_PORT_CALLS 330 this->m_tlmOut_OutputPort[port].
init();
332 #if FW_OBJECT_NAMES == 1 336 this->m_objName.toChar(),
339 this->m_tlmOut_OutputPort[port].setObjName(portName.
toChar());
344 #if !FW_DIRECT_PORT_CALLS 351 this->m_bufferSendOut_OutputPort[port].
init();
353 #if FW_OBJECT_NAMES == 1 357 this->m_objName.toChar(),
360 this->m_bufferSendOut_OutputPort[port].setObjName(portName.
toChar());
365 #if !FW_DIRECT_PORT_CALLS 372 this->m_pingOut_OutputPort[port].
init();
374 #if FW_OBJECT_NAMES == 1 378 this->m_objName.toChar(),
381 this->m_pingOut_OutputPort[port].setObjName(portName.
toChar());
389 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
393 static_cast<FwAssertArgType>(qStat)
397 #if !FW_DIRECT_PORT_CALLS 408 static_cast<FwAssertArgType>(portNum)
411 return &this->m_cmdIn_InputPort[portNum];
416 #if !FW_DIRECT_PORT_CALLS 427 static_cast<FwAssertArgType>(portNum)
430 return &this->m_bufferSendIn_InputPort[portNum];
438 static_cast<FwAssertArgType>(portNum)
441 return &this->m_comIn_InputPort[portNum];
449 static_cast<FwAssertArgType>(portNum)
452 return &this->m_pingIn_InputPort[portNum];
460 static_cast<FwAssertArgType>(portNum)
463 return &this->m_schedIn_InputPort[portNum];
468 #if !FW_DIRECT_PORT_CALLS 482 static_cast<FwAssertArgType>(portNum)
485 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
496 static_cast<FwAssertArgType>(portNum)
499 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
510 static_cast<FwAssertArgType>(portNum)
513 this->m_eventOut_OutputPort[portNum].
addCallPort(port);
516 #if FW_ENABLE_TEXT_LOGGING == 1 518 void BufferLoggerComponentBase ::
519 set_eventOutText_OutputPort(
525 (0 <= portNum) && (portNum < this->getNum_eventOutText_OutputPorts()),
526 static_cast<FwAssertArgType>(portNum)
529 this->m_eventOutText_OutputPort[portNum].addCallPort(port);
542 static_cast<FwAssertArgType>(portNum)
545 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
556 static_cast<FwAssertArgType>(portNum)
559 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
564 #if !FW_DIRECT_PORT_CALLS 578 static_cast<FwAssertArgType>(portNum)
581 this->m_bufferSendOut_OutputPort[portNum].
addCallPort(port);
592 static_cast<FwAssertArgType>(portNum)
595 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
600 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 609 Fw::InputSerializePort* port
614 static_cast<FwAssertArgType>(portNum)
617 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
623 Fw::InputSerializePort* port
628 static_cast<FwAssertArgType>(portNum)
631 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
637 Fw::InputSerializePort* port
642 static_cast<FwAssertArgType>(portNum)
645 this->m_eventOut_OutputPort[portNum].registerSerialPort(port);
648 #if FW_ENABLE_TEXT_LOGGING == 1 650 void BufferLoggerComponentBase ::
651 set_eventOutText_OutputPort(
653 Fw::InputSerializePort* port
657 (0 <= portNum) && (portNum < this->getNum_eventOutText_OutputPorts()),
658 static_cast<FwAssertArgType>(portNum)
661 this->m_eventOutText_OutputPort[portNum].registerSerialPort(port);
669 Fw::InputSerializePort* port
674 static_cast<FwAssertArgType>(portNum)
677 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
683 Fw::InputSerializePort* port
688 static_cast<FwAssertArgType>(portNum)
691 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
696 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 705 Fw::InputSerializePort* port
710 static_cast<FwAssertArgType>(portNum)
713 this->m_bufferSendOut_OutputPort[portNum].registerSerialPort(port);
719 Fw::InputSerializePort* port
724 static_cast<FwAssertArgType>(portNum)
727 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
768 Fw::ActiveComponentBase(compName)
779 #if !FW_DIRECT_PORT_CALLS 790 static_cast<FwAssertArgType>(portNum)
793 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
801 static_cast<FwAssertArgType>(portNum)
804 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
812 static_cast<FwAssertArgType>(portNum)
815 return this->m_eventOut_OutputPort[portNum].
isConnected();
818 #if FW_ENABLE_TEXT_LOGGING == 1 820 bool BufferLoggerComponentBase ::
821 isConnected_eventOutText_OutputPort(
FwIndexType portNum)
const 824 (0 <= portNum) && (portNum < this->getNum_eventOutText_OutputPorts()),
825 static_cast<FwAssertArgType>(portNum)
828 return this->m_eventOutText_OutputPort[portNum].isConnected();
838 static_cast<FwAssertArgType>(portNum)
841 return this->m_timeCaller_OutputPort[portNum].
isConnected();
849 static_cast<FwAssertArgType>(portNum)
852 return this->m_tlmOut_OutputPort[portNum].
isConnected();
857 #if !FW_DIRECT_PORT_CALLS 868 static_cast<FwAssertArgType>(portNum)
871 return this->m_bufferSendOut_OutputPort[portNum].
isConnected();
879 static_cast<FwAssertArgType>(portNum)
882 return this->m_pingOut_OutputPort[portNum].
isConnected();
903 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
906 switch (opCode - idBase) {
963 static_cast<FwAssertArgType>(portNum)
971 ComponentIpcSerializableBuffer msg;
975 _status = msg.serializeFrom(
976 static_cast<FwEnumStoreType>(BUFFERSENDIN_BUFFERSEND)
980 static_cast<FwAssertArgType>(_status)
984 _status = msg.serializeFrom(portNum);
987 static_cast<FwAssertArgType>(_status)
991 _status = msg.serializeFrom(fwBuffer);
994 static_cast<FwAssertArgType>(_status)
1003 static_cast<FwAssertArgType>(qStatus)
1017 static_cast<FwAssertArgType>(portNum)
1026 ComponentIpcSerializableBuffer msg;
1030 _status = msg.serializeFrom(
1031 static_cast<FwEnumStoreType>(COMIN_COM)
1035 static_cast<FwAssertArgType>(_status)
1039 _status = msg.serializeFrom(portNum);
1042 static_cast<FwAssertArgType>(_status)
1046 _status = msg.serializeFrom(data);
1049 static_cast<FwAssertArgType>(_status)
1053 _status = msg.serializeFrom(context);
1056 static_cast<FwAssertArgType>(_status)
1065 static_cast<FwAssertArgType>(qStatus)
1078 static_cast<FwAssertArgType>(portNum)
1086 ComponentIpcSerializableBuffer msg;
1090 _status = msg.serializeFrom(
1091 static_cast<FwEnumStoreType>(PINGIN_PING)
1095 static_cast<FwAssertArgType>(_status)
1099 _status = msg.serializeFrom(portNum);
1102 static_cast<FwAssertArgType>(_status)
1106 _status = msg.serializeFrom(key);
1109 static_cast<FwAssertArgType>(_status)
1118 static_cast<FwAssertArgType>(qStatus)
1131 static_cast<FwAssertArgType>(portNum)
1139 ComponentIpcSerializableBuffer msg;
1143 _status = msg.serializeFrom(
1144 static_cast<FwEnumStoreType>(SCHEDIN_SCHED)
1148 static_cast<FwAssertArgType>(_status)
1152 _status = msg.serializeFrom(portNum);
1155 static_cast<FwAssertArgType>(_status)
1159 _status = msg.serializeFrom(context);
1162 static_cast<FwAssertArgType>(_status)
1171 static_cast<FwAssertArgType>(qStatus)
1220 #if !FW_DIRECT_PORT_CALLS 1234 static_cast<FwAssertArgType>(portNum)
1238 this->m_bufferSendOut_OutputPort[portNum].isConnected(),
1239 static_cast<FwAssertArgType>(portNum)
1241 this->m_bufferSendOut_OutputPort[portNum].
invoke(
1254 static_cast<FwAssertArgType>(portNum)
1258 this->m_pingOut_OutputPort[portNum].isConnected(),
1259 static_cast<FwAssertArgType>(portNum)
1261 this->m_pingOut_OutputPort[portNum].
invoke(
1280 this->cmdResponseOut_out(0, opCode, cmdSeq, response);
1301 ComponentIpcSerializableBuffer msg;
1305 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_BL_OPENFILE));
1308 static_cast<FwAssertArgType>(_status)
1314 _status = msg.serializeFrom(port);
1317 static_cast<FwAssertArgType>(_status)
1320 _status = msg.serializeFrom(opCode);
1323 static_cast<FwAssertArgType>(_status)
1326 _status = msg.serializeFrom(cmdSeq);
1329 static_cast<FwAssertArgType>(_status)
1332 _status = msg.serializeFrom(args);
1335 static_cast<FwAssertArgType>(_status)
1344 static_cast<FwAssertArgType>(qStatus)
1360 ComponentIpcSerializableBuffer msg;
1364 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_BL_CLOSEFILE));
1367 static_cast<FwAssertArgType>(_status)
1373 _status = msg.serializeFrom(port);
1376 static_cast<FwAssertArgType>(_status)
1379 _status = msg.serializeFrom(opCode);
1382 static_cast<FwAssertArgType>(_status)
1385 _status = msg.serializeFrom(cmdSeq);
1388 static_cast<FwAssertArgType>(_status)
1391 _status = msg.serializeFrom(args);
1394 static_cast<FwAssertArgType>(_status)
1403 static_cast<FwAssertArgType>(qStatus)
1419 ComponentIpcSerializableBuffer msg;
1423 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_BL_SETLOGGING));
1426 static_cast<FwAssertArgType>(_status)
1432 _status = msg.serializeFrom(port);
1435 static_cast<FwAssertArgType>(_status)
1438 _status = msg.serializeFrom(opCode);
1441 static_cast<FwAssertArgType>(_status)
1444 _status = msg.serializeFrom(cmdSeq);
1447 static_cast<FwAssertArgType>(_status)
1450 _status = msg.serializeFrom(args);
1453 static_cast<FwAssertArgType>(_status)
1462 static_cast<FwAssertArgType>(qStatus)
1478 ComponentIpcSerializableBuffer msg;
1482 _status = msg.serializeFrom(static_cast<FwEnumStoreType>(CMD_BL_FLUSHFILE));
1485 static_cast<FwAssertArgType>(_status)
1491 _status = msg.serializeFrom(port);
1494 static_cast<FwAssertArgType>(_status)
1497 _status = msg.serializeFrom(opCode);
1500 static_cast<FwAssertArgType>(_status)
1503 _status = msg.serializeFrom(cmdSeq);
1506 static_cast<FwAssertArgType>(_status)
1509 _status = msg.serializeFrom(args);
1512 static_cast<FwAssertArgType>(_status)
1521 static_cast<FwAssertArgType>(qStatus)
1587 this->timeCaller_out(0, _logTime);
1597 #if FW_AMPCS_COMPATIBLE 1602 static_cast<FwAssertArgType>(_status)
1612 static_cast<FwAssertArgType>(_status)
1625 #if FW_ENABLE_TEXT_LOGGING 1626 if (this->isConnected_eventOutText_OutputPort(0)) {
1627 #if FW_OBJECT_NAMES == 1 1628 const char* _formatString =
1629 "(%s) %s: File %s closed";
1631 const char* _formatString =
1632 "%s: File %s closed";
1639 this->m_objName.toChar(),
1641 "BL_LogFileClosed ",
1645 this->eventOutText_out(
1665 this->timeCaller_out(0, _logTime);
1675 #if FW_AMPCS_COMPATIBLE 1680 static_cast<FwAssertArgType>(_status)
1684 #if FW_AMPCS_COMPATIBLE 1687 static_cast<U8>(
sizeof(U32))
1691 static_cast<FwAssertArgType>(_status)
1697 static_cast<FwAssertArgType>(_status)
1706 static_cast<FwAssertArgType>(_status)
1719 #if FW_ENABLE_TEXT_LOGGING 1720 if (this->isConnected_eventOutText_OutputPort(0)) {
1721 #if FW_OBJECT_NAMES == 1 1722 const char* _formatString =
1723 "(%s) %s: Error %" PRIu32
" opening file %s";
1725 const char* _formatString =
1726 "%s: Error %" PRIu32
" opening file %s";
1733 this->m_objName.toChar(),
1735 "BL_LogFileOpenError ",
1740 this->eventOutText_out(
1760 this->timeCaller_out(0, _logTime);
1770 #if FW_AMPCS_COMPATIBLE 1775 static_cast<FwAssertArgType>(_status)
1785 static_cast<FwAssertArgType>(_status)
1788 #if FW_AMPCS_COMPATIBLE 1791 static_cast<U8>(
sizeof(U32))
1795 static_cast<FwAssertArgType>(_status)
1801 static_cast<FwAssertArgType>(_status)
1814 #if FW_ENABLE_TEXT_LOGGING 1815 if (this->isConnected_eventOutText_OutputPort(0)) {
1816 #if FW_OBJECT_NAMES == 1 1817 const char* _formatString =
1818 "(%s) %s: Failed creating validation file %s with status %" PRIu32
"";
1820 const char* _formatString =
1821 "%s: Failed creating validation file %s with status %" PRIu32
"";
1828 this->m_objName.toChar(),
1830 "BL_LogFileValidationError ",
1835 this->eventOutText_out(
1857 this->timeCaller_out(0, _logTime);
1867 #if FW_AMPCS_COMPATIBLE 1872 static_cast<FwAssertArgType>(_status)
1876 #if FW_AMPCS_COMPATIBLE 1879 static_cast<U8>(
sizeof(U32))
1883 static_cast<FwAssertArgType>(_status)
1889 static_cast<FwAssertArgType>(_status)
1892 #if FW_AMPCS_COMPATIBLE 1895 static_cast<U8>(
sizeof(U32))
1899 static_cast<FwAssertArgType>(_status)
1905 static_cast<FwAssertArgType>(_status)
1908 #if FW_AMPCS_COMPATIBLE 1911 static_cast<U8>(
sizeof(U32))
1915 static_cast<FwAssertArgType>(_status)
1921 static_cast<FwAssertArgType>(_status)
1930 static_cast<FwAssertArgType>(_status)
1943 #if FW_ENABLE_TEXT_LOGGING 1944 if (this->isConnected_eventOutText_OutputPort(0)) {
1945 #if FW_OBJECT_NAMES == 1 1946 const char* _formatString =
1947 "(%s) %s: Error %" PRIu32
" while writing %" PRIu32
" of %" PRIu32
" bytes to %s";
1949 const char* _formatString =
1950 "%s: Error %" PRIu32
" while writing %" PRIu32
" of %" PRIu32
" bytes to %s";
1957 this->m_objName.toChar(),
1959 "BL_LogFileWriteError ",
1966 this->eventOutText_out(
1983 this->timeCaller_out(0, _logTime);
1992 #if FW_AMPCS_COMPATIBLE 1998 static_cast<FwAssertArgType>(_status)
2012 #if FW_ENABLE_TEXT_LOGGING 2013 if (this->isConnected_eventOutText_OutputPort(0)) {
2014 #if FW_OBJECT_NAMES == 1 2015 const char* _formatString =
2016 "(%s) %s: Buffer logger was activated";
2018 const char* _formatString =
2019 "%s: Buffer logger was activated";
2026 this->m_objName.toChar(),
2031 this->eventOutText_out(
2048 this->timeCaller_out(0, _logTime);
2057 #if FW_AMPCS_COMPATIBLE 2063 static_cast<FwAssertArgType>(_status)
2077 #if FW_ENABLE_TEXT_LOGGING 2078 if (this->isConnected_eventOutText_OutputPort(0)) {
2079 #if FW_OBJECT_NAMES == 1 2080 const char* _formatString =
2081 "(%s) %s: Buffer logger was deactivated";
2083 const char* _formatString =
2084 "%s: Buffer logger was deactivated";
2091 this->m_objName.toChar(),
2096 this->eventOutText_out(
2113 this->timeCaller_out(0, _logTime);
2122 #if FW_AMPCS_COMPATIBLE 2128 static_cast<FwAssertArgType>(_status)
2142 #if FW_ENABLE_TEXT_LOGGING 2143 if (this->isConnected_eventOutText_OutputPort(0)) {
2144 #if FW_OBJECT_NAMES == 1 2145 const char* _formatString =
2146 "(%s) %s: No log file open command";
2148 const char* _formatString =
2149 "%s: No log file open command";
2156 this->m_objName.toChar(),
2158 "BL_NoLogFileOpenInitError " 2161 this->eventOutText_out(
2188 this->timeCaller_out(0, _tlmTime);
2218 static_cast<FwAssertArgType>(_stat)
2238 this->timeCaller_out(0, _time);
2253 ComponentIpcSerializableBuffer _msg;
2263 static_cast<FwAssertArgType>(_msgStatus)
2273 static_cast<FwAssertArgType>(_deserStatus)
2276 MsgTypeEnum _msgType =
static_cast<MsgTypeEnum
>(_desMsg);
2278 if (_msgType == BUFFERLOGGER_COMPONENT_EXIT) {
2283 _deserStatus = _msg.deserializeTo(portNum);
2286 static_cast<FwAssertArgType>(_deserStatus)
2291 case BUFFERSENDIN_BUFFERSEND: {
2294 _deserStatus = _msg.deserializeTo(fwBuffer);
2297 static_cast<FwAssertArgType>(_deserStatus)
2312 _deserStatus = _msg.deserializeTo(data);
2315 static_cast<FwAssertArgType>(_deserStatus)
2320 _deserStatus = _msg.deserializeTo(context);
2323 static_cast<FwAssertArgType>(_deserStatus)
2339 _deserStatus = _msg.deserializeTo(key);
2342 static_cast<FwAssertArgType>(_deserStatus)
2354 case SCHEDIN_SCHED: {
2357 _deserStatus = _msg.deserializeTo(context);
2360 static_cast<FwAssertArgType>(_deserStatus)
2372 case CMD_BL_OPENFILE: {
2375 _deserStatus = _msg.deserializeTo(_opCode);
2378 static_cast<FwAssertArgType>(_deserStatus)
2383 _deserStatus = _msg.deserializeTo(_cmdSeq);
2386 static_cast<FwAssertArgType>(_deserStatus)
2391 _deserStatus = _msg.deserializeTo(args);
2394 static_cast<FwAssertArgType>(_deserStatus)
2417 #if FW_CMD_CHECK_RESIDUAL 2437 case CMD_BL_CLOSEFILE: {
2440 _deserStatus = _msg.deserializeTo(_opCode);
2443 static_cast<FwAssertArgType>(_deserStatus)
2448 _deserStatus = _msg.deserializeTo(_cmdSeq);
2451 static_cast<FwAssertArgType>(_deserStatus)
2456 _deserStatus = _msg.deserializeTo(args);
2459 static_cast<FwAssertArgType>(_deserStatus)
2467 #if FW_CMD_CHECK_RESIDUAL 2484 case CMD_BL_SETLOGGING: {
2487 _deserStatus = _msg.deserializeTo(_opCode);
2490 static_cast<FwAssertArgType>(_deserStatus)
2495 _deserStatus = _msg.deserializeTo(_cmdSeq);
2498 static_cast<FwAssertArgType>(_deserStatus)
2503 _deserStatus = _msg.deserializeTo(args);
2506 static_cast<FwAssertArgType>(_deserStatus)
2529 #if FW_CMD_CHECK_RESIDUAL 2549 case CMD_BL_FLUSHFILE: {
2552 _deserStatus = _msg.deserializeTo(_opCode);
2555 static_cast<FwAssertArgType>(_deserStatus)
2560 _deserStatus = _msg.deserializeTo(_cmdSeq);
2563 static_cast<FwAssertArgType>(_deserStatus)
2568 _deserStatus = _msg.deserializeTo(args);
2571 static_cast<FwAssertArgType>(_deserStatus)
2579 #if FW_CMD_CHECK_RESIDUAL 2606 void BufferLoggerComponentBase ::
2617 compPtr->cmdIn_handlerBase(
2629 void BufferLoggerComponentBase ::
2630 m_p_bufferSendIn_in(
2638 compPtr->bufferSendIn_handlerBase(
2644 void BufferLoggerComponentBase ::
2654 compPtr->comIn_handlerBase(
2661 void BufferLoggerComponentBase ::
2670 compPtr->pingIn_handlerBase(
2676 void BufferLoggerComponentBase ::
2685 compPtr->schedIn_handlerBase(
2691 #if !FW_DIRECT_PORT_CALLS 2697 void BufferLoggerComponentBase ::
2705 static_cast<FwAssertArgType>(portNum)
2709 this->m_cmdRegOut_OutputPort[portNum].isConnected(),
2710 static_cast<FwAssertArgType>(portNum)
2712 this->m_cmdRegOut_OutputPort[portNum].
invoke(
2717 void BufferLoggerComponentBase ::
2727 static_cast<FwAssertArgType>(portNum)
2731 this->m_cmdResponseOut_OutputPort[portNum].isConnected(),
2732 static_cast<FwAssertArgType>(portNum)
2734 this->m_cmdResponseOut_OutputPort[portNum].
invoke(
2741 void BufferLoggerComponentBase ::
2752 static_cast<FwAssertArgType>(portNum)
2756 this->m_eventOut_OutputPort[portNum].isConnected(),
2757 static_cast<FwAssertArgType>(portNum)
2759 this->m_eventOut_OutputPort[portNum].
invoke(
2767 #if FW_ENABLE_TEXT_LOGGING 2769 void BufferLoggerComponentBase ::
2779 (0 <= portNum) && (portNum < this->getNum_eventOutText_OutputPorts()),
2780 static_cast<FwAssertArgType>(portNum)
2784 this->m_eventOutText_OutputPort[portNum].isConnected(),
2785 static_cast<FwAssertArgType>(portNum)
2787 this->m_eventOutText_OutputPort[portNum].invoke(
2797 void BufferLoggerComponentBase ::
2805 static_cast<FwAssertArgType>(portNum)
2809 this->m_timeCaller_OutputPort[portNum].isConnected(),
2810 static_cast<FwAssertArgType>(portNum)
2812 this->m_timeCaller_OutputPort[portNum].
invoke(
2817 void BufferLoggerComponentBase ::
2827 static_cast<FwAssertArgType>(portNum)
2831 this->m_tlmOut_OutputPort[portNum].isConnected(),
2832 static_cast<FwAssertArgType>(portNum)
2834 this->m_tlmOut_OutputPort[portNum].
invoke(
Close the currently open log file, if any.
Serialization/Deserialization operation was successful.
void BL_SetLogging_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
Buffer logger was activated.
void addCallPort(InputTimePort *callPort)
Register an input port.
void regCommands()
Register commands with the Command Dispatcher.
virtual void bufferSendIn_preMsgHook(FwIndexType portNum, Fw::Buffer &fwBuffer)
Pre-message hook for async input port bufferSendIn.
static constexpr FwSizeType CAPACITY
FwIdType FwOpcodeType
The type of a command opcode.
Flushes the current open log file to disk; a no-op with fprime's unbuffered file I/O, so always returns success.
Svc::InputSchedPort * get_schedIn_InputPort(FwIndexType portNum)
SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG) override
Serialize an 8-bit unsigned integer value.
void pingOut_out(FwIndexType portNum, U32 key) const
Invoke output port pingOut.
FwIdType getIdBase() const
PlatformSizeType FwSizeType
Status receive(U8 *destination, FwSizeType capacity, BlockingType blockType, FwSizeType &actualSize, FwQueuePriorityType &priority) override
receive a message from the queue through delegate
virtual void schedIn_preMsgHook(FwIndexType portNum, U32 context)
Pre-message hook for async input port schedIn.
static constexpr FwIndexType getNum_pingIn_InputPorts()
Status
status returned from the queue send function
void set_tlmOut_OutputPort(FwIndexType portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void pingIn_handlerBase(FwIndexType portNum, U32 key)
Handler base-class function for input port pingIn.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
virtual void BL_SetLogging_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_SetLogging.
static constexpr FwSizeType CAPACITY
virtual void BL_CloseFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_CloseFile.
The Buffer Logger encountered an error opening a log file.
void invoke(U32 key) const
Invoke a port connection.
virtual const CHAR * toChar() const =0
Convert to a C-style char*.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
virtual void BL_SetLogging_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::BufferLogger_LogState state)=0
virtual void BL_OpenFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_OpenFile.
virtual void BL_FlushFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_FlushFile.
virtual void bufferSendIn_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferSendIn.
void BL_OpenFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void init()
Initialization function.
void log_DIAGNOSTIC_BL_LogFileClosed(const Fw::StringBase &file) const
Enum representing a command response.
No time base has been established (Required)
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
Os::Queue m_queue
queue object for active component
Software diagnostic events.
void addCallPort(InputTlmPort *callPort)
Register an input port.
void bufferSendIn_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferSendIn.
void init()
Object initializer.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
SerializeStatus
forward declaration for string
virtual void comIn_handler(FwIndexType portNum, Fw::ComBuffer &data, U32 context)=0
Handler for input port comIn.
Message will block until space is available.
void log_WARNING_HI_BL_LogFileOpenError(U32 errornum, const Fw::StringBase &file) const
void log_ACTIVITY_LO_BL_Activated() const
void set_pingOut_OutputPort(FwIndexType portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
FwIdType FwEventIdType
The type of an event identifier.
message to exit active component task
virtual void comIn_preMsgHook(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Pre-message hook for async input port comIn.
static constexpr FwIndexType getNum_schedIn_InputPorts()
void invoke(FwOpcodeType opCode) const
Invoke a port connection.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
static constexpr FwSizeType CAPACITY
void set_bufferSendOut_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to bufferSendOut[portNum].
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
static constexpr FwIndexType getNum_cmdIn_InputPorts()
void init()
Initialization function.
Less important informational events.
Os::Queue::Status createQueue(FwSizeType depth, FwSizeType msgSize)
static constexpr FwSizeType CAPACITY
#define FW_MIN(a, b)
MIN macro (deprecated in C++, use std::min)
void invoke(Fw::Buffer &fwBuffer) const
Invoke a port connection.
void init()
Initialization function.
void tlmWrite_BufferLogger_NumLoggedBuffers(U32 arg, Fw::Time _tlmTime=Fw::Time()) const
void addCallPort(InputBufferSendPort *callPort)
Register an input port.
void invoke(Fw::Time &time) const
Invoke a port connection.
virtual void BL_FlushFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
bool isConnected_tlmOut_OutputPort(FwIndexType portNum) const
Serializable::SizeType getDeserializeSizeLeft() const override
Get remaining deserialization buffer size.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port connection.
FwIdType FwChanIdType
The type of a telemetry channel identifier.
void addCallPort(InputPingPort *callPort)
Register an input port.
Status send(const U8 *buffer, FwSizeType size, FwQueuePriorityType priority, BlockingType blockType) override
send a message into the queue through delegate
bool isConnected_bufferSendOut_OutputPort(FwIndexType portNum) const
void BL_CloseFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void log_WARNING_HI_BL_LogFileWriteError(U32 errornum, U32 bytesWritten, U32 bytesToWrite, const Fw::StringBase &file) const
void resetDeser() override
Reset deserialization pointer to beginning of buffer.
BufferLoggerComponentBase(const char *compName="")
Construct BufferLoggerComponentBase object.
virtual void schedIn_handler(FwIndexType portNum, U32 context)=0
Handler for input port schedIn.
The Buffer Logger encountered an error writing a validation file.
A serious but recoverable event.
Errors dispatching messages.
bool isConnected_pingOut_OutputPort(FwIndexType portNum) const
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val) const
Invoke a port connection.
const char * toChar() const
Convert to a C-style char*.
Enum representing event severity.
Fw::InputBufferSendPort * get_bufferSendIn_InputPort(FwIndexType portNum)
Channel ID for BufferLogger_NumLoggedBuffers.
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
void bufferSendOut_out(FwIndexType portNum, Fw::Buffer &fwBuffer) const
Invoke output port bufferSendOut.
static constexpr FwIndexType getNum_eventOut_OutputPorts()
virtual void pingIn_preMsgHook(FwIndexType portNum, U32 key)
Pre-message hook for async input port pingIn.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
No log file open command was received by BufferLogger.
void init()
Initialization function.
Buffer logger was deactivated.
void tlmWrite(FwChanIdType id, Fw::TlmBuffer &_tlmBuff, Fw::Time _tlmTime=Fw::Time()) const
bool isConnected_eventOut_OutputPort(FwIndexType portNum) const
uint8_t U8
8-bit unsigned integer
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
void log_ACTIVITY_LO_BL_Deactivated() const
Fw::InputComPort * get_comIn_InputPort(FwIndexType portNum)
Command failed to deserialize.
PlatformQueuePriorityType FwQueuePriorityType
The type of queue priorities used.
void init()
Initialization function.
void comIn_handlerBase(FwIndexType portNum, Fw::ComBuffer &data, U32 context)
Handler base-class function for input port comIn.
The Buffer Logger closed a log file.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port connection.
virtual void pingIn_handler(FwIndexType portNum, U32 key)=0
Handler for input port pingIn.
The Buffer Logger encountered an error writing to a log file.
static constexpr FwIndexType getNum_bufferSendOut_OutputPorts()
A message was sent requesting an exit of the loop.
Sets the volatile logging state.
virtual ~BufferLoggerComponentBase()
Destroy BufferLoggerComponentBase object.
PlatformIndexType FwIndexType
static constexpr FwIndexType getNum_pingOut_OutputPorts()
static constexpr FwIndexType getNum_tlmOut_OutputPorts()
void addCallPort(InputLogPort *callPort)
Register an input port.
void init()
Initialization function.
RateGroupDivider component implementation.
message sent/received okay
SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG) override
Deserialize an 8-bit unsigned integer value.
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
void BL_FlushFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
void set_eventOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
Message will return with status when space is unavailable.
Implementation of malloc based allocator.
static constexpr FwIndexType getNum_bufferSendIn_InputPorts()
void log_WARNING_HI_BL_NoLogFileOpenInitError() const
Svc::InputPingPort * get_pingIn_InputPort(FwIndexType portNum)
static constexpr FwIndexType getNum_comIn_InputPorts()
Open a new log file with specified name; also resets unique file counter to 0.
void schedIn_handlerBase(FwIndexType portNum, U32 context)
Handler base-class function for input port schedIn.
void init()
Initialization function.
virtual void BL_CloseFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
virtual void BL_OpenFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &file)=0
static constexpr FwSizeType CAPACITY
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
void log_WARNING_HI_BL_LogFileValidationError(const Fw::StringBase &validationFile, U32 status) const
SerializeStatus serializeTo(SerialBufferBase &buffer, Endianness mode=Endianness::BIG) const override
Serialize the contents of this object to a buffer.
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].