11 #if FW_ENABLE_TEXT_LOGGING
20 BUFFERSENDIN_BUFFERSEND,
42 class ComponentIpcSerializableBuffer :
57 return sizeof(m_buff);
64 const U8* getBuffAddr()
const {
70 U8 m_buff[SERIALIZATION_SIZE];
94 this->m_cmdIn_InputPort[port].
init();
99 this->m_cmdIn_InputPort[port].
setPortNum(port);
101 #if FW_OBJECT_NAMES == 1
116 this->m_cmdIn_InputPort[port].setObjName(portName);
126 this->m_bufferSendIn_InputPort[port].
init();
131 this->m_bufferSendIn_InputPort[port].
setPortNum(port);
133 #if FW_OBJECT_NAMES == 1
148 this->m_bufferSendIn_InputPort[port].setObjName(portName);
158 this->m_comIn_InputPort[port].
init();
163 this->m_comIn_InputPort[port].
setPortNum(port);
165 #if FW_OBJECT_NAMES == 1
180 this->m_comIn_InputPort[port].setObjName(portName);
190 this->m_pingIn_InputPort[port].
init();
195 this->m_pingIn_InputPort[port].
setPortNum(port);
197 #if FW_OBJECT_NAMES == 1
212 this->m_pingIn_InputPort[port].setObjName(portName);
222 this->m_schedIn_InputPort[port].
init();
227 this->m_schedIn_InputPort[port].
setPortNum(port);
229 #if FW_OBJECT_NAMES == 1
244 this->m_schedIn_InputPort[port].setObjName(portName);
254 this->m_cmdRegOut_OutputPort[port].
init();
256 #if FW_OBJECT_NAMES == 1
271 this->m_cmdRegOut_OutputPort[port].setObjName(portName);
281 this->m_cmdResponseOut_OutputPort[port].
init();
283 #if FW_OBJECT_NAMES == 1
298 this->m_cmdResponseOut_OutputPort[port].setObjName(portName);
308 this->m_eventOut_OutputPort[port].
init();
310 #if FW_OBJECT_NAMES == 1
325 this->m_eventOut_OutputPort[port].setObjName(portName);
329 #if FW_ENABLE_TEXT_LOGGING == 1
333 port < static_cast<PlatformIntType>(this->getNum_eventOutText_OutputPorts());
336 this->m_eventOutText_OutputPort[port].
init();
338 #if FW_OBJECT_NAMES == 1
353 this->m_eventOutText_OutputPort[port].setObjName(portName);
364 this->m_timeCaller_OutputPort[port].
init();
366 #if FW_OBJECT_NAMES == 1
381 this->m_timeCaller_OutputPort[port].setObjName(portName);
391 this->m_tlmOut_OutputPort[port].
init();
393 #if FW_OBJECT_NAMES == 1
408 this->m_tlmOut_OutputPort[port].setObjName(portName);
418 this->m_bufferSendOut_OutputPort[port].
init();
420 #if FW_OBJECT_NAMES == 1
435 this->m_bufferSendOut_OutputPort[port].setObjName(portName);
445 this->m_pingOut_OutputPort[port].
init();
447 #if FW_OBJECT_NAMES == 1
462 this->m_pingOut_OutputPort[port].setObjName(portName);
468 ComponentIpcSerializableBuffer::SERIALIZATION_SIZE
488 return &this->m_cmdIn_InputPort[portNum];
503 return &this->m_bufferSendIn_InputPort[portNum];
514 return &this->m_comIn_InputPort[portNum];
525 return &this->m_pingIn_InputPort[portNum];
536 return &this->m_schedIn_InputPort[portNum];
554 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
568 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
582 this->m_eventOut_OutputPort[portNum].
addCallPort(port);
585 #if FW_ENABLE_TEXT_LOGGING == 1
587 void BufferLoggerComponentBase ::
588 set_eventOutText_OutputPort(
594 portNum < this->getNum_eventOutText_OutputPorts(),
598 this->m_eventOutText_OutputPort[portNum].addCallPort(port);
614 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
628 this->m_tlmOut_OutputPort[portNum].
addCallPort(port);
646 this->m_bufferSendOut_OutputPort[portNum].
addCallPort(port);
660 this->m_pingOut_OutputPort[portNum].
addCallPort(port);
663 #if FW_PORT_SERIALIZATION
672 Fw::InputSerializePort* port
680 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
686 Fw::InputSerializePort* port
694 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
700 Fw::InputSerializePort* port
708 this->m_eventOut_OutputPort[portNum].registerSerialPort(port);
711 #if FW_ENABLE_TEXT_LOGGING == 1
713 void BufferLoggerComponentBase ::
714 set_eventOutText_OutputPort(
716 Fw::InputSerializePort* port
720 portNum < this->getNum_eventOutText_OutputPorts(),
724 this->m_eventOutText_OutputPort[portNum].registerSerialPort(port);
732 Fw::InputSerializePort* port
740 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
746 Fw::InputSerializePort* port
754 this->m_tlmOut_OutputPort[portNum].registerSerialPort(port);
759 #if FW_PORT_SERIALIZATION
768 Fw::InputSerializePort* port
776 this->m_bufferSendOut_OutputPort[portNum].registerSerialPort(port);
782 Fw::InputSerializePort* port
790 this->m_pingOut_OutputPort[portNum].registerSerialPort(port);
802 FW_ASSERT(this->m_cmdRegOut_OutputPort[0].isConnected());
804 this->m_cmdRegOut_OutputPort[0].
invoke(
808 this->m_cmdRegOut_OutputPort[0].
invoke(
812 this->m_cmdRegOut_OutputPort[0].
invoke(
816 this->m_cmdRegOut_OutputPort[0].
invoke(
827 Fw::ActiveComponentBase(compName)
898 #if FW_ENABLE_TEXT_LOGGING == 1
901 getNum_eventOutText_OutputPorts()
const
948 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
959 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
970 return this->m_eventOut_OutputPort[portNum].
isConnected();
973 #if FW_ENABLE_TEXT_LOGGING == 1
975 bool BufferLoggerComponentBase ::
979 portNum < this->getNum_eventOutText_OutputPorts(),
983 return this->m_eventOutText_OutputPort[portNum].isConnected();
996 return this->m_timeCaller_OutputPort[portNum].
isConnected();
1007 return this->m_tlmOut_OutputPort[portNum].
isConnected();
1022 return this->m_bufferSendOut_OutputPort[portNum].
isConnected();
1033 return this->m_pingOut_OutputPort[portNum].
isConnected();
1059 ComponentIpcSerializableBuffer msg;
1063 _status = msg.serialize(
1072 _status = msg.serialize(portNum);
1079 _status = msg.serialize(fwBuffer);
1114 ComponentIpcSerializableBuffer msg;
1118 _status = msg.serialize(
1127 _status = msg.serialize(portNum);
1134 _status = msg.serialize(data);
1141 _status = msg.serialize(context);
1174 ComponentIpcSerializableBuffer msg;
1178 _status = msg.serialize(
1187 _status = msg.serialize(portNum);
1194 _status = msg.serialize(key);
1227 ComponentIpcSerializableBuffer msg;
1231 _status = msg.serialize(
1240 _status = msg.serialize(portNum);
1247 _status = msg.serialize(context);
1322 this->m_bufferSendOut_OutputPort[portNum].
invoke(
1337 this->m_pingOut_OutputPort[portNum].
invoke(
1353 FW_ASSERT(this->m_cmdResponseOut_OutputPort[0].isConnected());
1354 this->m_cmdResponseOut_OutputPort[0].
invoke(opCode, cmdSeq, response);
1375 ComponentIpcSerializableBuffer msg;
1379 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_BL_OPENFILE));
1388 _status = msg.serialize(port);
1394 _status = msg.serialize(opCode);
1400 _status = msg.serialize(cmdSeq);
1406 _status = msg.serialize(args);
1434 ComponentIpcSerializableBuffer msg;
1438 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_BL_CLOSEFILE));
1447 _status = msg.serialize(port);
1453 _status = msg.serialize(opCode);
1459 _status = msg.serialize(cmdSeq);
1465 _status = msg.serialize(args);
1493 ComponentIpcSerializableBuffer msg;
1497 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_BL_SETLOGGING));
1506 _status = msg.serialize(port);
1512 _status = msg.serialize(opCode);
1518 _status = msg.serialize(cmdSeq);
1524 _status = msg.serialize(args);
1552 ComponentIpcSerializableBuffer msg;
1556 _status = msg.serialize(
static_cast<NATIVE_INT_TYPE>(CMD_BL_FLUSHFILE));
1565 _status = msg.serialize(port);
1571 _status = msg.serialize(opCode);
1577 _status = msg.serialize(cmdSeq);
1583 _status = msg.serialize(args);
1660 if (this->m_timeCaller_OutputPort[0].isConnected()) {
1661 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
1669 if (this->m_eventOut_OutputPort[0].isConnected()) {
1673 #if FW_AMPCS_COMPATIBLE
1682 _status = file.
serialize(_logBuff, 256);
1688 this->m_eventOut_OutputPort[0].
invoke(
1697 #if FW_ENABLE_TEXT_LOGGING
1698 if (this->m_eventOutText_OutputPort[0].isConnected()) {
1699 #if FW_OBJECT_NAMES == 1
1700 const char* _formatString =
1701 "(%s) %s: File %s closed";
1703 const char* _formatString =
1704 "%s: File %s closed";
1716 "BL_LogFileClosed ",
1723 this->m_eventOutText_OutputPort[0].invoke(
1741 if (this->m_timeCaller_OutputPort[0].isConnected()) {
1742 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
1750 if (this->m_eventOut_OutputPort[0].isConnected()) {
1754 #if FW_AMPCS_COMPATIBLE
1763 #if FW_AMPCS_COMPATIBLE
1766 static_cast<U8>(
sizeof(U32))
1779 _status = file.
serialize(_logBuff, 256);
1785 this->m_eventOut_OutputPort[0].
invoke(
1794 #if FW_ENABLE_TEXT_LOGGING
1795 if (this->m_eventOutText_OutputPort[0].isConnected()) {
1796 #if FW_OBJECT_NAMES == 1
1797 const char* _formatString =
1798 "(%s) %s: Error %" PRIu32
" opening file %s";
1800 const char* _formatString =
1801 "%s: Error %" PRIu32
" opening file %s";
1813 "BL_LogFileOpenError ",
1821 this->m_eventOutText_OutputPort[0].invoke(
1839 if (this->m_timeCaller_OutputPort[0].isConnected()) {
1840 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
1848 if (this->m_eventOut_OutputPort[0].isConnected()) {
1852 #if FW_AMPCS_COMPATIBLE
1861 _status = validationFile.
serialize(_logBuff, 256);
1867 #if FW_AMPCS_COMPATIBLE
1870 static_cast<U8>(
sizeof(U32))
1883 this->m_eventOut_OutputPort[0].
invoke(
1892 #if FW_ENABLE_TEXT_LOGGING
1893 if (this->m_eventOutText_OutputPort[0].isConnected()) {
1894 #if FW_OBJECT_NAMES == 1
1895 const char* _formatString =
1896 "(%s) %s: Failed creating validation file %s with status %" PRIu32
"";
1898 const char* _formatString =
1899 "%s: Failed creating validation file %s with status %" PRIu32
"";
1911 "BL_LogFileValidationError ",
1919 this->m_eventOutText_OutputPort[0].invoke(
1939 if (this->m_timeCaller_OutputPort[0].isConnected()) {
1940 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
1948 if (this->m_eventOut_OutputPort[0].isConnected()) {
1952 #if FW_AMPCS_COMPATIBLE
1961 #if FW_AMPCS_COMPATIBLE
1964 static_cast<U8>(
sizeof(U32))
1977 #if FW_AMPCS_COMPATIBLE
1980 static_cast<U8>(
sizeof(U32))
1987 _status = _logBuff.
serialize(bytesWritten);
1993 #if FW_AMPCS_COMPATIBLE
1996 static_cast<U8>(
sizeof(U32))
2003 _status = _logBuff.
serialize(bytesToWrite);
2009 _status = file.
serialize(_logBuff, 256);
2015 this->m_eventOut_OutputPort[0].
invoke(
2024 #if FW_ENABLE_TEXT_LOGGING
2025 if (this->m_eventOutText_OutputPort[0].isConnected()) {
2026 #if FW_OBJECT_NAMES == 1
2027 const char* _formatString =
2028 "(%s) %s: Error %" PRIu32
" while writing %" PRIu32
" of %" PRIu32
" bytes to %s";
2030 const char* _formatString =
2031 "%s: Error %" PRIu32
" while writing %" PRIu32
" of %" PRIu32
" bytes to %s";
2043 "BL_LogFileWriteError ",
2053 this->m_eventOutText_OutputPort[0].invoke(
2068 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2069 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2077 if (this->m_eventOut_OutputPort[0].isConnected()) {
2080 #if FW_AMPCS_COMPATIBLE
2090 this->m_eventOut_OutputPort[0].
invoke(
2099 #if FW_ENABLE_TEXT_LOGGING
2100 if (this->m_eventOutText_OutputPort[0].isConnected()) {
2101 #if FW_OBJECT_NAMES == 1
2102 const char* _formatString =
2103 "(%s) %s: Buffer logger was activated";
2105 const char* _formatString =
2106 "%s: Buffer logger was activated";
2124 this->m_eventOutText_OutputPort[0].invoke(
2139 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2140 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2148 if (this->m_eventOut_OutputPort[0].isConnected()) {
2151 #if FW_AMPCS_COMPATIBLE
2161 this->m_eventOut_OutputPort[0].
invoke(
2170 #if FW_ENABLE_TEXT_LOGGING
2171 if (this->m_eventOutText_OutputPort[0].isConnected()) {
2172 #if FW_OBJECT_NAMES == 1
2173 const char* _formatString =
2174 "(%s) %s: Buffer logger was deactivated";
2176 const char* _formatString =
2177 "%s: Buffer logger was deactivated";
2195 this->m_eventOutText_OutputPort[0].invoke(
2210 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2211 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
2219 if (this->m_eventOut_OutputPort[0].isConnected()) {
2222 #if FW_AMPCS_COMPATIBLE
2232 this->m_eventOut_OutputPort[0].
invoke(
2241 #if FW_ENABLE_TEXT_LOGGING
2242 if (this->m_eventOutText_OutputPort[0].isConnected()) {
2243 #if FW_OBJECT_NAMES == 1
2244 const char* _formatString =
2245 "(%s) %s: No log file open command";
2247 const char* _formatString =
2248 "%s: No log file open command";
2260 "BL_NoLogFileOpenInitError "
2266 this->m_eventOutText_OutputPort[0].invoke(
2286 if (this->m_tlmOut_OutputPort[0].isConnected()) {
2288 this->m_timeCaller_OutputPort[0].isConnected() &&
2291 this->m_timeCaller_OutputPort[0].
invoke(_tlmTime);
2305 this->m_tlmOut_OutputPort[0].
invoke(
2320 if (this->m_timeCaller_OutputPort[0].isConnected()) {
2322 this->m_timeCaller_OutputPort[0].
invoke(_time);
2337 ComponentIpcSerializableBuffer msg;
2360 MsgTypeEnum msgType =
static_cast<MsgTypeEnum
>(desMsg);
2362 if (msgType == BUFFERLOGGER_COMPONENT_EXIT) {
2367 deserStatus = msg.deserialize(portNum);
2375 case BUFFERSENDIN_BUFFERSEND: {
2404 deserStatus = msg.deserialize(context);
2423 deserStatus = msg.deserialize(key);
2438 case SCHEDIN_SCHED: {
2441 deserStatus = msg.deserialize(context);
2456 case CMD_BL_OPENFILE: {
2459 deserStatus = msg.deserialize(opCode);
2467 deserStatus = msg.deserialize(cmdSeq);
2488 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2501 #if FW_CMD_CHECK_RESIDUAL
2503 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2521 case CMD_BL_CLOSEFILE: {
2524 deserStatus = msg.deserialize(opCode);
2532 deserStatus = msg.deserialize(cmdSeq);
2551 #if FW_CMD_CHECK_RESIDUAL
2553 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2568 case CMD_BL_SETLOGGING: {
2571 deserStatus = msg.deserialize(opCode);
2579 deserStatus = msg.deserialize(cmdSeq);
2600 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2613 #if FW_CMD_CHECK_RESIDUAL
2615 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2633 case CMD_BL_FLUSHFILE: {
2636 deserStatus = msg.deserialize(opCode);
2644 deserStatus = msg.deserialize(cmdSeq);
2663 #if FW_CMD_CHECK_RESIDUAL
2665 if (this->m_cmdResponseOut_OutputPort[0].isConnected()) {
2690 void BufferLoggerComponentBase ::
2702 const U32 idBase = callComp->
getIdBase();
2703 FW_ASSERT(opCode >= idBase, opCode, idBase);
2706 switch (opCode - idBase) {
2708 compPtr->BL_OpenFile_cmdHandlerBase(
2717 compPtr->BL_CloseFile_cmdHandlerBase(
2726 compPtr->BL_SetLogging_cmdHandlerBase(
2735 compPtr->BL_FlushFile_cmdHandlerBase(
2749 void BufferLoggerComponentBase ::
2750 m_p_bufferSendIn_in(
2758 compPtr->bufferSendIn_handlerBase(
2764 void BufferLoggerComponentBase ::
2774 compPtr->comIn_handlerBase(
2781 void BufferLoggerComponentBase ::
2790 compPtr->pingIn_handlerBase(
2796 void BufferLoggerComponentBase ::
2805 compPtr->schedIn_handlerBase(
PlatformIntType NATIVE_INT_TYPE
uint8_t U8
8-bit unsigned integer
#define FW_NUM_ARRAY_ELEMENTS(a)
number of elements in an array
PlatformUIntType NATIVE_UINT_TYPE
int PlatformIntType
DefaultTypes.hpp provides fallback defaults for the platform types.
#define PRI_PlatformIntType
@ TB_NONE
No time base has been established.
PlatformAssertArgType FwAssertArgType
#define FW_LOG_TEXT_BUFFER_SIZE
Max size of string for text log message.
#define FW_OBJ_NAME_MAX_SIZE
Size of object name (if object names enabled). AC Limits to 80, truncation occurs above 80.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects)
@ ACTIVE_COMPONENT_EXIT
message to exit active component task
Fw::SerializeStatus deserialize(Fw::SerializeBufferBase &buffer)
Enum representing a command response.
@ FORMAT_ERROR
Command failed to deserialize.
@ WARNING_HI
A serious but recoverable event.
@ DIAGNOSTIC
Software diagnostic events.
@ ACTIVITY_LO
Less important informational events.
const char * toChar() const override
SerializeStatus serialize(SerializeBufferBase &buffer) const override
serialization function
void init()
Object initializer.
void addCallPort(InputBufferSendPort *callPort)
Register an input port.
void invoke(Fw::Buffer &fwBuffer)
Invoke a port interface.
void init()
Initialization function.
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
void invoke(FwOpcodeType opCode)
Invoke a port interface.
void init()
Initialization function.
void init()
Initialization function.
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response)
Invoke a port interface.
void init()
Initialization function.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args)
Invoke a port interface.
void addCallPort(InputLogPort *callPort)
Register an input port.
void addCallPort(InputTimePort *callPort)
Register an input port.
void invoke(Fw::Time &time)
Invoke a port interface.
void init()
Initialization function.
void addCallPort(InputTlmPort *callPort)
Register an input port.
void init()
Initialization function.
void invoke(FwChanIdType id, Fw::Time &timeTag, Fw::TlmBuffer &val)
Invoke a port interface.
Os::Queue::QueueStatus createQueue(NATIVE_INT_TYPE depth, NATIVE_INT_TYPE msgSize)
Os::Queue m_queue
queue object for active component
@ MSG_DISPATCH_OK
Dispatch was normal.
@ MSG_DISPATCH_EXIT
A message was sent requesting an exit of the loop.
@ MSG_DISPATCH_ERROR
Errors dispatching messages.
NATIVE_UINT_TYPE getBuffLeft() const
returns how much deserialization buffer is left
void resetDeser()
reset deserialization to beginning
SerializeStatus deserialize(U8 &val)
deserialize 8-bit unsigned int
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
@ QUEUE_OK
message sent/received okay
QueueStatus send(const Fw::SerializeBufferBase &buffer, NATIVE_INT_TYPE priority, QueueBlocking block)
send a message
QueueStatus receive(Fw::SerializeBufferBase &buffer, NATIVE_INT_TYPE &priority, QueueBlocking block)
receive a message
@ QUEUE_BLOCKING
Queue receive blocks until a message arrives.
@ QUEUE_NONBLOCKING
Queue receive always returns even if there is no message.
Fw::InputComPort * get_comIn_InputPort(NATIVE_INT_TYPE portNum)
void log_WARNING_HI_BL_LogFileValidationError(const Fw::LogStringArg &validationFile, U32 status)
void set_pingOut_OutputPort(NATIVE_INT_TYPE portNum, Svc::InputPingPort *port)
Connect port to pingOut[portNum].
void bufferSendIn_handlerBase(NATIVE_INT_TYPE portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port bufferSendIn.
NATIVE_INT_TYPE getNum_bufferSendOut_OutputPorts() const
void bufferSendOut_out(NATIVE_INT_TYPE portNum, Fw::Buffer &fwBuffer)
Invoke output port bufferSendOut.
Fw::InputCmdPort * get_cmdIn_InputPort(NATIVE_INT_TYPE portNum)
NATIVE_INT_TYPE getNum_eventOut_OutputPorts() const
bool isConnected_tlmOut_OutputPort(NATIVE_INT_TYPE portNum)
virtual void comIn_handler(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)=0
Handler for input port comIn.
void log_WARNING_HI_BL_LogFileOpenError(U32 errornum, const Fw::LogStringArg &file)
NATIVE_INT_TYPE getNum_bufferSendIn_InputPorts() const
void set_eventOut_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputLogPort *port)
Connect port to eventOut[portNum].
virtual void BL_OpenFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdStringArg &file)=0
virtual void BL_OpenFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_OpenFile.
void set_tlmOut_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputTlmPort *port)
Connect port to tlmOut[portNum].
void comIn_handlerBase(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)
Handler base-class function for input port comIn.
void log_DIAGNOSTIC_BL_LogFileClosed(const Fw::LogStringArg &file)
Fw::InputBufferSendPort * get_bufferSendIn_InputPort(NATIVE_INT_TYPE portNum)
bool isConnected_bufferSendOut_OutputPort(NATIVE_INT_TYPE portNum)
virtual void bufferSendIn_handler(NATIVE_INT_TYPE portNum, Fw::Buffer &fwBuffer)=0
Handler for input port bufferSendIn.
virtual void schedIn_handler(NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)=0
Handler for input port schedIn.
bool isConnected_cmdResponseOut_OutputPort(NATIVE_INT_TYPE portNum)
void pingIn_handlerBase(NATIVE_INT_TYPE portNum, U32 key)
Handler base-class function for input port pingIn.
void set_cmdResponseOut_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
NATIVE_INT_TYPE getNum_cmdIn_InputPorts() const
virtual void BL_SetLogging_cmdHandler(FwOpcodeType opCode, U32 cmdSeq, Svc::BufferLogger_LogState state)=0
virtual void schedIn_preMsgHook(NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)
Pre-message hook for async input port schedIn.
virtual void BL_SetLogging_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_SetLogging.
virtual void BL_FlushFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_FlushFile.
void set_bufferSendOut_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputBufferSendPort *port)
Connect port to bufferSendOut[portNum].
void BL_FlushFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void BL_CloseFile_preMsgHook(FwOpcodeType opCode, U32 cmdSeq)
Pre-message hook for command BL_CloseFile.
virtual ~BufferLoggerComponentBase()
Destroy BufferLoggerComponentBase object.
Svc::InputPingPort * get_pingIn_InputPort(NATIVE_INT_TYPE portNum)
virtual void bufferSendIn_preMsgHook(NATIVE_INT_TYPE portNum, Fw::Buffer &fwBuffer)
Pre-message hook for async input port bufferSendIn.
virtual void BL_CloseFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
bool isConnected_cmdRegOut_OutputPort(NATIVE_INT_TYPE portNum)
NATIVE_INT_TYPE getNum_cmdRegOut_OutputPorts() const
NATIVE_INT_TYPE getNum_cmdResponseOut_OutputPorts() const
virtual void BL_FlushFile_cmdHandler(FwOpcodeType opCode, U32 cmdSeq)=0
virtual void pingIn_preMsgHook(NATIVE_INT_TYPE portNum, U32 key)
Pre-message hook for async input port pingIn.
@ OPCODE_BL_FLUSHFILE
Flushes the current open log file to disk; a no-op with fprime's unbuffered file I/O,...
@ OPCODE_BL_SETLOGGING
Sets the volatile logging state.
@ OPCODE_BL_OPENFILE
Open a new log file with specified name; also resets unique file counter to 0.
@ OPCODE_BL_CLOSEFILE
Close the currently open log file, if any.
void set_cmdRegOut_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
NATIVE_INT_TYPE getNum_timeCaller_OutputPorts() const
void regCommands()
Register commands with the Command Dispatcher.
NATIVE_INT_TYPE getNum_pingIn_InputPorts() const
NATIVE_INT_TYPE getNum_pingOut_OutputPorts() const
virtual void pingIn_handler(NATIVE_INT_TYPE portNum, U32 key)=0
Handler for input port pingIn.
void BL_OpenFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
virtual void comIn_preMsgHook(NATIVE_INT_TYPE portNum, Fw::ComBuffer &data, U32 context)
Pre-message hook for async input port comIn.
void log_WARNING_HI_BL_NoLogFileOpenInitError()
void schedIn_handlerBase(NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context)
Handler base-class function for input port schedIn.
void set_timeCaller_OutputPort(NATIVE_INT_TYPE portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
@ CHANNELID_BUFFERLOGGER_NUMLOGGEDBUFFERS
Channel ID for BufferLogger_NumLoggedBuffers.
void BL_SetLogging_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
void tlmWrite_BufferLogger_NumLoggedBuffers(U32 arg, Fw::Time _tlmTime=Fw::Time())
NATIVE_INT_TYPE getNum_schedIn_InputPorts() const
bool isConnected_pingOut_OutputPort(NATIVE_INT_TYPE portNum)
void BL_CloseFile_cmdHandlerBase(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
BufferLoggerComponentBase(const char *compName="")
Construct BufferLoggerComponentBase object.
void log_ACTIVITY_LO_BL_Deactivated()
bool isConnected_eventOut_OutputPort(NATIVE_INT_TYPE portNum)
bool isConnected_timeCaller_OutputPort(NATIVE_INT_TYPE portNum)
NATIVE_INT_TYPE getNum_comIn_InputPorts() const
@ EVENTID_BL_ACTIVATED
Buffer logger was activated.
@ EVENTID_BL_LOGFILEWRITEERROR
The Buffer Logger encountered an error writing to a log file.
@ EVENTID_BL_LOGFILEVALIDATIONERROR
The Buffer Logger encountered an error writing a validation file.
@ EVENTID_BL_DEACTIVATED
Buffer logger was deactivated.
@ EVENTID_BL_LOGFILECLOSED
The Buffer Logger closed a log file.
@ EVENTID_BL_LOGFILEOPENERROR
The Buffer Logger encountered an error opening a log file.
@ EVENTID_BL_NOLOGFILEOPENINITERROR
No log file open command was received by BufferLogger.
Svc::InputSchedPort * get_schedIn_InputPort(NATIVE_INT_TYPE portNum)
void log_ACTIVITY_LO_BL_Activated()
NATIVE_INT_TYPE getNum_tlmOut_OutputPorts() const
void log_WARNING_HI_BL_LogFileWriteError(U32 errornum, U32 bytesWritten, U32 bytesToWrite, const Fw::LogStringArg &file)
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
void pingOut_out(NATIVE_INT_TYPE portNum, U32 key)
Invoke output port pingOut.
void invoke(U32 key)
Invoke a port interface.
void init()
Initialization function.
void addCallPort(InputPingPort *callPort)
Register an input port.
SerializeStatus
forward declaration for string
@ FW_SERIALIZE_OK
Serialization/Deserialization operation was successful.