10 #if FW_ENABLE_TEXT_LOGGING 32 this->m_framedIn_InputPort[port].
init();
37 this->m_framedIn_InputPort[port].
setPortNum(port);
39 #if FW_OBJECT_NAMES == 1 43 this->m_objName.toChar(),
46 this->m_framedIn_InputPort[port].setObjName(portName.
toChar());
56 this->m_logOut_OutputPort[port].
init();
58 #if FW_OBJECT_NAMES == 1 62 this->m_objName.toChar(),
65 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
69 #if FW_ENABLE_TEXT_LOGGING == 1 73 port < static_cast<FwIndexType>(this->getNum_logTextOut_OutputPorts());
76 this->m_logTextOut_OutputPort[port].
init();
78 #if FW_OBJECT_NAMES == 1 82 this->m_objName.toChar(),
85 this->m_logTextOut_OutputPort[port].setObjName(portName.
toChar());
96 this->m_timeCaller_OutputPort[port].
init();
98 #if FW_OBJECT_NAMES == 1 102 this->m_objName.toChar(),
105 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
115 this->m_bufferDeallocate_OutputPort[port].
init();
117 #if FW_OBJECT_NAMES == 1 121 this->m_objName.toChar(),
124 this->m_bufferDeallocate_OutputPort[port].setObjName(portName.
toChar());
134 this->m_deframedOut_OutputPort[port].
init();
136 #if FW_OBJECT_NAMES == 1 140 this->m_objName.toChar(),
143 this->m_deframedOut_OutputPort[port].setObjName(portName.
toChar());
157 static_cast<FwAssertArgType>(portNum)
160 return &this->m_framedIn_InputPort[portNum];
175 static_cast<FwAssertArgType>(portNum)
178 this->m_logOut_OutputPort[portNum].
addCallPort(port);
181 #if FW_ENABLE_TEXT_LOGGING == 1 183 void FprimeDeframerComponentBase ::
184 set_logTextOut_OutputPort(
190 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
191 static_cast<FwAssertArgType>(portNum)
194 this->m_logTextOut_OutputPort[portNum].addCallPort(port);
207 static_cast<FwAssertArgType>(portNum)
210 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
225 static_cast<FwAssertArgType>(portNum)
228 this->m_bufferDeallocate_OutputPort[portNum].
addCallPort(port);
239 static_cast<FwAssertArgType>(portNum)
242 this->m_deframedOut_OutputPort[portNum].
addCallPort(port);
245 #if FW_PORT_SERIALIZATION 254 Fw::InputSerializePort* port
259 static_cast<FwAssertArgType>(portNum)
262 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
265 #if FW_ENABLE_TEXT_LOGGING == 1 267 void FprimeDeframerComponentBase ::
268 set_logTextOut_OutputPort(
270 Fw::InputSerializePort* port
274 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
275 static_cast<FwAssertArgType>(portNum)
278 this->m_logTextOut_OutputPort[portNum].registerSerialPort(port);
286 Fw::InputSerializePort* port
291 static_cast<FwAssertArgType>(portNum)
294 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
299 #if FW_PORT_SERIALIZATION 308 Fw::InputSerializePort* port
313 static_cast<FwAssertArgType>(portNum)
316 this->m_bufferDeallocate_OutputPort[portNum].registerSerialPort(port);
322 Fw::InputSerializePort* port
327 static_cast<FwAssertArgType>(portNum)
330 this->m_deframedOut_OutputPort[portNum].registerSerialPort(port);
341 Fw::PassiveComponentBase(compName)
372 #if FW_ENABLE_TEXT_LOGGING == 1 375 getNum_logTextOut_OutputPorts()
const 413 static_cast<FwAssertArgType>(portNum)
416 return this->m_logOut_OutputPort[portNum].
isConnected();
419 #if FW_ENABLE_TEXT_LOGGING == 1 421 bool FprimeDeframerComponentBase ::
422 isConnected_logTextOut_OutputPort(
FwIndexType portNum)
425 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
426 static_cast<FwAssertArgType>(portNum)
429 return this->m_logTextOut_OutputPort[portNum].isConnected();
439 static_cast<FwAssertArgType>(portNum)
442 return this->m_timeCaller_OutputPort[portNum].
isConnected();
454 static_cast<FwAssertArgType>(portNum)
457 return this->m_bufferDeallocate_OutputPort[portNum].
isConnected();
465 static_cast<FwAssertArgType>(portNum)
468 return this->m_deframedOut_OutputPort[portNum].
isConnected();
487 static_cast<FwAssertArgType>(portNum)
516 static_cast<FwAssertArgType>(portNum)
520 this->m_bufferDeallocate_OutputPort[portNum].isConnected(),
521 static_cast<FwAssertArgType>(portNum)
523 this->m_bufferDeallocate_OutputPort[portNum].
invoke(
537 static_cast<FwAssertArgType>(portNum)
541 this->m_deframedOut_OutputPort[portNum].isConnected(),
542 static_cast<FwAssertArgType>(portNum)
544 this->m_deframedOut_OutputPort[portNum].
invoke(
559 if (this->m_timeCaller_OutputPort[0].isConnected()) {
560 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
568 if (this->m_logOut_OutputPort[0].isConnected()) {
571 #if FW_AMPCS_COMPATIBLE 574 _status = _logBuff.
serialize(static_cast<U8>(0));
577 static_cast<FwAssertArgType>(_status)
581 this->m_logOut_OutputPort[0].
invoke(
590 #if FW_ENABLE_TEXT_LOGGING 591 if (this->m_logTextOut_OutputPort[0].isConnected()) {
592 #if FW_OBJECT_NAMES == 1 593 const char* _formatString =
594 "(%s) %s: Frame dropped: The received buffer is not long enough to contain a valid frame (header + trailer)";
596 const char* _formatString =
597 "%s: Frame dropped: The received buffer is not long enough to contain a valid frame (header + trailer)";
604 this->m_objName.toChar(),
606 "InvalidBufferReceived " 609 this->m_logTextOut_OutputPort[0].invoke(
624 if (this->m_timeCaller_OutputPort[0].isConnected()) {
625 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
633 if (this->m_logOut_OutputPort[0].isConnected()) {
636 #if FW_AMPCS_COMPATIBLE 639 _status = _logBuff.
serialize(static_cast<U8>(0));
642 static_cast<FwAssertArgType>(_status)
646 this->m_logOut_OutputPort[0].
invoke(
655 #if FW_ENABLE_TEXT_LOGGING 656 if (this->m_logTextOut_OutputPort[0].isConnected()) {
657 #if FW_OBJECT_NAMES == 1 658 const char* _formatString =
659 "(%s) %s: Frame dropped: The received buffer does not start with the F Prime start word";
661 const char* _formatString =
662 "%s: Frame dropped: The received buffer does not start with the F Prime start word";
669 this->m_objName.toChar(),
674 this->m_logTextOut_OutputPort[0].invoke(
689 if (this->m_timeCaller_OutputPort[0].isConnected()) {
690 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
698 if (this->m_logOut_OutputPort[0].isConnected()) {
701 #if FW_AMPCS_COMPATIBLE 704 _status = _logBuff.
serialize(static_cast<U8>(0));
707 static_cast<FwAssertArgType>(_status)
711 this->m_logOut_OutputPort[0].
invoke(
720 #if FW_ENABLE_TEXT_LOGGING 721 if (this->m_logTextOut_OutputPort[0].isConnected()) {
722 #if FW_OBJECT_NAMES == 1 723 const char* _formatString =
724 "(%s) %s: Frame dropped: The received buffer size cannot hold a frame of specified payload length";
726 const char* _formatString =
727 "%s: Frame dropped: The received buffer size cannot hold a frame of specified payload length";
734 this->m_objName.toChar(),
736 "InvalidLengthReceived " 739 this->m_logTextOut_OutputPort[0].invoke(
754 if (this->m_timeCaller_OutputPort[0].isConnected()) {
755 this->m_timeCaller_OutputPort[0].
invoke(_logTime);
763 if (this->m_logOut_OutputPort[0].isConnected()) {
766 #if FW_AMPCS_COMPATIBLE 769 _status = _logBuff.
serialize(static_cast<U8>(0));
772 static_cast<FwAssertArgType>(_status)
776 this->m_logOut_OutputPort[0].
invoke(
785 #if FW_ENABLE_TEXT_LOGGING 786 if (this->m_logTextOut_OutputPort[0].isConnected()) {
787 #if FW_OBJECT_NAMES == 1 788 const char* _formatString =
789 "(%s) %s: Frame dropped: The transmitted frame checksum does not match that computed by the receiver";
791 const char* _formatString =
792 "%s: Frame dropped: The transmitted frame checksum does not match that computed by the receiver";
799 this->m_objName.toChar(),
804 this->m_logTextOut_OutputPort[0].invoke(
821 if (this->m_timeCaller_OutputPort[0].isConnected()) {
823 this->m_timeCaller_OutputPort[0].
invoke(_time);
841 this->m_guardedPortMutex.
lock();
847 this->m_guardedPortMutex.
unLock();
854 void FprimeDeframerComponentBase ::
Serialization/Deserialization operation was successful.
bool isConnected_logOut_OutputPort(FwIndexType portNum)
void addCallPort(InputTimePort *callPort)
Register an input port.
void set_deframedOut_OutputPort(FwIndexType portNum, Svc::InputComDataWithContextPort *port)
Connect port to deframedOut[portNum].
bool isConnected_bufferDeallocate_OutputPort(FwIndexType portNum)
bool isConnected_deframedOut_OutputPort(FwIndexType portNum)
void log_WARNING_HI_InvalidBufferReceived() const
SerializeStatus serialize(U8 val)
serialize 8-bit unsigned int
FwIndexType getNum_timeCaller_OutputPorts() const
void unLock()
unlock the mutex and assert success
void log_WARNING_HI_InvalidLengthReceived() const
Svc::InputComDataWithContextPort * get_framedIn_InputPort(FwIndexType portNum)
An invalid frame was received (length is wrong)
void addCallPort(InputComDataWithContextPort *callPort)
Register an input port.
void init()
Object initializer.
U32 FwEventIdType
The type of an event identifier.
SerializeStatus
forward declaration for string
An invalid frame was received (start word is wrong)
void bufferDeallocate_out(FwIndexType portNum, Fw::Buffer &fwBuffer)
Invoke output port bufferDeallocate.
An invalid frame was received (too short to be a frame)
FprimeDeframerComponentBase(const char *compName="")
Construct FprimeDeframerComponentBase object.
void init()
Initialization function.
void addCallComp(Fw::PassiveComponentBase *callComp, CompFuncPtr funcPtr)
Register a component.
void invoke(Fw::Buffer &fwBuffer) const
Invoke a port interface.
void addCallPort(InputBufferSendPort *callPort)
Register an input port.
void invoke(Fw::Time &time) const
Invoke a port interface.
void log_WARNING_HI_InvalidStartWord() const
const char * toChar() const
No time base has been established.
void invoke(Fw::Buffer &data, const ComCfg::FrameContext &context) const
Invoke a port interface.
void set_bufferDeallocate_OutputPort(FwIndexType portNum, Fw::InputBufferSendPort *port)
Connect port to bufferDeallocate[portNum].
An invalid frame was received (checksum mismatch)
Auto-generated base for FprimeDeframer component.
FwIndexType getNum_logOut_OutputPorts() const
FwIndexType getNum_framedIn_InputPorts() const
FwIndexType getNum_deframedOut_OutputPorts() const
A serious but recoverable event.
void init()
Initialization function.
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
void deframedOut_out(FwIndexType portNum, Fw::Buffer &data, const ComCfg::FrameContext &context)
Invoke output port deframedOut.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
void init()
Initialization function.
virtual ~FprimeDeframerComponentBase()
Destroy FprimeDeframerComponentBase object.
virtual void lock()
Lock the guarded mutex.
void init()
Initialization function.
virtual void framedIn_handler(FwIndexType portNum, Fw::Buffer &data, const ComCfg::FrameContext &context)=0
Handler for input port framedIn.
FwIndexType getNum_bufferDeallocate_OutputPorts() const
void init()
Initialization function.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port interface.
PlatformIndexType FwIndexType
void log_WARNING_HI_InvalidChecksum() const
void framedIn_handlerBase(FwIndexType portNum, Fw::Buffer &data, const ComCfg::FrameContext &context)
Handler base-class function for input port framedIn.
#define FW_NUM_ARRAY_ELEMENTS(a)
number of elements in an array
void addCallPort(InputLogPort *callPort)
Register an input port.
Type used to pass context info between components during framing/deframing.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum)
RateGroupDivider component implementation.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
virtual void unLock()
Unlock the guarded mutex.
void lock()
lock the mutex and assert success