10#if FW_ENABLE_TEXT_LOGGING
26 BYTE TextQueueIntIfSize[
33 class ComponentIpcSerializableBuffer :
43 MAX_DATA_SIZE =
sizeof(BuffUnion),
45 SERIALIZATION_SIZE = DATA_OFFSET + MAX_DATA_SIZE
49 return sizeof(m_buff);
56 const U8* getBuffAddr()
const {
62 U8 m_buff[SERIALIZATION_SIZE];
71 void ActiveTextLoggerComponentBase ::
83 port < static_cast<FwIndexType>(this->getNum_TextLogger_InputPorts());
86 this->m_TextLogger_InputPort[port].init();
87 this->m_TextLogger_InputPort[port].addCallComp(
91 this->m_TextLogger_InputPort[port].setPortNum(port);
93#if FW_OBJECT_NAMES == 1
97 this->m_objName.toChar(),
100 this->m_TextLogger_InputPort[port].setObjName(portName.
toChar());
107 static_cast<FwSizeType>(ComponentIpcSerializableBuffer::SERIALIZATION_SIZE)
123 portNum < this->getNum_TextLogger_InputPorts(),
127 return &this->m_TextLogger_InputPort[portNum];
134 ActiveTextLoggerComponentBase ::
135 ActiveTextLoggerComponentBase(
const char* compName) :
136 Fw::ActiveComponentBase(compName)
141 ActiveTextLoggerComponentBase ::
142 ~ActiveTextLoggerComponentBase()
152 getNum_TextLogger_InputPorts()
const
163 void ActiveTextLoggerComponentBase ::
164 TextLogger_handlerBase(
174 portNum < this->getNum_TextLogger_InputPorts(),
179 this->TextLogger_handler(
192 void ActiveTextLoggerComponentBase ::
195 ComponentIpcSerializableBuffer msg;
199 _status = msg.serialize(
static_cast<FwEnumStoreType>(INT_IF_TEXTQUEUE));
206 _status = msg.serialize(
static_cast<FwIndexType>(0));
212 _status = msg.serialize(text);
223 this->incNumMsgDropped();
240 ComponentIpcSerializableBuffer msg;
263 MsgTypeEnum msgType =
static_cast<MsgTypeEnum
>(desMsg);
265 if (msgType == ACTIVETEXTLOGGER_COMPONENT_EXIT) {
266 return MSG_DISPATCH_EXIT;
270 deserStatus = msg.deserialize(portNum);
278 case INT_IF_TEXTQUEUE: {
280 deserStatus = msg.deserialize(text);
291 msg.getBuffLeft() == 0,
296 this->TextQueue_internalInterfaceHandler(
304 return MSG_DISPATCH_ERROR;
307 return MSG_DISPATCH_OK;
314 void ActiveTextLoggerComponentBase ::
325 ActiveTextLoggerComponentBase* compPtr =
static_cast<ActiveTextLoggerComponentBase*
>(callComp);
326 compPtr->TextLogger_handlerBase(
uint8_t U8
8-bit unsigned integer
#define FW_NUM_ARRAY_ELEMENTS(a)
number of elements in an array
#define PRI_PlatformIntType
PlatformAssertArgType FwAssertArgType
PlatformSizeType FwSizeType
PlatformQueuePriorityType FwQueuePriorityType
PlatformIndexType FwIndexType
@ ACTIVE_COMPONENT_EXIT
message to exit active component task
Enum representing event severity.
void init()
Object initializer.
const char * toChar() const
NATIVE_UINT_TYPE SizeType
void format(const CHAR *formatString,...)
write formatted string to buffer
@ BLOCKING
Message will block until space is available.
@ NONBLOCKING
Message will return with status when space is unavailable.
Status
status returned from the queue send function
@ FULL
queue was full when attempting to send a message
@ OP_OK
message sent/received okay
SerializeStatus
forward declaration for string
@ FW_SERIALIZE_OK
Serialization/Deserialization operation was successful.