9 #if FW_ENABLE_TEXT_LOGGING 54 if ((this->m_dataBuffer.getSize() + sizeDelta) <= this->m_dataBuffer.getCapacity()) {
56 status = this->m_dataBuffer.serializeFrom(
id);
58 status = this->m_dataBuffer.serializeSize(size);
62 this->m_dataSize += sizeDelta;
80 #if !FW_DIRECT_PORT_CALLS 87 this->m_cmdIn_InputPort[port].
init();
92 this->m_cmdIn_InputPort[port].
setPortNum(port);
94 #if FW_OBJECT_NAMES == 1 98 this->m_objName.toChar(),
101 this->m_cmdIn_InputPort[port].setObjName(portName.
toChar());
106 #if !FW_DIRECT_PORT_CALLS 113 this->m_procRequest_InputPort[port].
init();
118 this->m_procRequest_InputPort[port].
setPortNum(port);
120 #if FW_OBJECT_NAMES == 1 124 this->m_objName.toChar(),
127 this->m_procRequest_InputPort[port].setObjName(portName.
toChar());
132 #if !FW_DIRECT_PORT_CALLS 139 this->m_cmdRegOut_OutputPort[port].
init();
141 #if FW_OBJECT_NAMES == 1 145 this->m_objName.toChar(),
148 this->m_cmdRegOut_OutputPort[port].setObjName(portName.
toChar());
153 #if !FW_DIRECT_PORT_CALLS 160 this->m_cmdResponseOut_OutputPort[port].
init();
162 #if FW_OBJECT_NAMES == 1 166 this->m_objName.toChar(),
169 this->m_cmdResponseOut_OutputPort[port].setObjName(portName.
toChar());
174 #if !FW_DIRECT_PORT_CALLS 181 this->m_dpGet_OutputPort[port].
init();
183 #if FW_OBJECT_NAMES == 1 187 this->m_objName.toChar(),
190 this->m_dpGet_OutputPort[port].setObjName(portName.
toChar());
195 #if !FW_DIRECT_PORT_CALLS 202 this->m_dpSend_OutputPort[port].
init();
204 #if FW_OBJECT_NAMES == 1 208 this->m_objName.toChar(),
211 this->m_dpSend_OutputPort[port].setObjName(portName.
toChar());
216 #if !FW_DIRECT_PORT_CALLS 223 this->m_logOut_OutputPort[port].
init();
225 #if FW_OBJECT_NAMES == 1 229 this->m_objName.toChar(),
232 this->m_logOut_OutputPort[port].setObjName(portName.
toChar());
237 #if !FW_DIRECT_PORT_CALLS && FW_ENABLE_TEXT_LOGGING 241 port < static_cast<FwIndexType>(this->getNum_logTextOut_OutputPorts());
244 this->m_logTextOut_OutputPort[port].
init();
246 #if FW_OBJECT_NAMES == 1 250 this->m_objName.toChar(),
253 this->m_logTextOut_OutputPort[port].setObjName(portName.
toChar());
258 #if !FW_DIRECT_PORT_CALLS 265 this->m_prmGetOut_OutputPort[port].
init();
267 #if FW_OBJECT_NAMES == 1 271 this->m_objName.toChar(),
274 this->m_prmGetOut_OutputPort[port].setObjName(portName.
toChar());
279 #if !FW_DIRECT_PORT_CALLS 286 this->m_prmSetOut_OutputPort[port].
init();
288 #if FW_OBJECT_NAMES == 1 292 this->m_objName.toChar(),
295 this->m_prmSetOut_OutputPort[port].setObjName(portName.
toChar());
300 #if !FW_DIRECT_PORT_CALLS 307 this->m_timeCaller_OutputPort[port].
init();
309 #if FW_OBJECT_NAMES == 1 313 this->m_objName.toChar(),
316 this->m_timeCaller_OutputPort[port].setObjName(portName.
toChar());
321 #if !FW_DIRECT_PORT_CALLS 328 this->m_compressChunk_OutputPort[port].
init();
330 #if FW_OBJECT_NAMES == 1 334 this->m_objName.toChar(),
337 this->m_compressChunk_OutputPort[port].setObjName(portName.
toChar());
343 #if !FW_DIRECT_PORT_CALLS 354 static_cast<FwAssertArgType>(portNum)
357 return &this->m_cmdIn_InputPort[portNum];
362 #if !FW_DIRECT_PORT_CALLS 373 static_cast<FwAssertArgType>(portNum)
376 return &this->m_procRequest_InputPort[portNum];
381 #if !FW_DIRECT_PORT_CALLS 395 static_cast<FwAssertArgType>(portNum)
398 this->m_cmdRegOut_OutputPort[portNum].
addCallPort(port);
409 static_cast<FwAssertArgType>(portNum)
412 this->m_cmdResponseOut_OutputPort[portNum].
addCallPort(port);
423 static_cast<FwAssertArgType>(portNum)
426 this->m_dpGet_OutputPort[portNum].
addCallPort(port);
437 static_cast<FwAssertArgType>(portNum)
440 this->m_dpSend_OutputPort[portNum].
addCallPort(port);
451 static_cast<FwAssertArgType>(portNum)
454 this->m_logOut_OutputPort[portNum].
addCallPort(port);
457 #if FW_ENABLE_TEXT_LOGGING == 1 459 void DpCompressProcComponentBase ::
460 set_logTextOut_OutputPort(
466 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
467 static_cast<FwAssertArgType>(portNum)
470 this->m_logTextOut_OutputPort[portNum].addCallPort(port);
483 static_cast<FwAssertArgType>(portNum)
486 this->m_prmGetOut_OutputPort[portNum].
addCallPort(port);
497 static_cast<FwAssertArgType>(portNum)
500 this->m_prmSetOut_OutputPort[portNum].
addCallPort(port);
511 static_cast<FwAssertArgType>(portNum)
514 this->m_timeCaller_OutputPort[portNum].
addCallPort(port);
519 #if !FW_DIRECT_PORT_CALLS 533 static_cast<FwAssertArgType>(portNum)
536 this->m_compressChunk_OutputPort[portNum].
addCallPort(port);
541 #if !FW_DIRECT_PORT_CALLS && FW_PORT_SERIALIZATION 550 Fw::InputSerializePort* port
555 static_cast<FwAssertArgType>(portNum)
558 this->m_cmdRegOut_OutputPort[portNum].registerSerialPort(port);
564 Fw::InputSerializePort* port
569 static_cast<FwAssertArgType>(portNum)
572 this->m_cmdResponseOut_OutputPort[portNum].registerSerialPort(port);
578 Fw::InputSerializePort* port
583 static_cast<FwAssertArgType>(portNum)
586 this->m_dpSend_OutputPort[portNum].registerSerialPort(port);
592 Fw::InputSerializePort* port
597 static_cast<FwAssertArgType>(portNum)
600 this->m_logOut_OutputPort[portNum].registerSerialPort(port);
603 #if FW_ENABLE_TEXT_LOGGING == 1 605 void DpCompressProcComponentBase ::
606 set_logTextOut_OutputPort(
608 Fw::InputSerializePort* port
612 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
613 static_cast<FwAssertArgType>(portNum)
616 this->m_logTextOut_OutputPort[portNum].registerSerialPort(port);
624 Fw::InputSerializePort* port
629 static_cast<FwAssertArgType>(portNum)
632 this->m_prmSetOut_OutputPort[portNum].registerSerialPort(port);
638 Fw::InputSerializePort* port
643 static_cast<FwAssertArgType>(portNum)
646 this->m_timeCaller_OutputPort[portNum].registerSerialPort(port);
698 this->m_param_CHUNK_SIZE_valid = this->prmGetOut_out(
704 this->m_paramLock.
lock();
717 this->m_CHUNK_SIZE = 32768;
720 this->m_paramLock.
unlock();
725 this->m_param_ENABLE_valid = this->prmGetOut_out(
731 this->m_paramLock.
lock();
747 this->m_paramLock.
unlock();
761 this->m_DidNotCompressThrottle = 0;
770 #if !FW_DIRECT_PORT_CALLS 781 static_cast<FwAssertArgType>(portNum)
784 return this->m_cmdRegOut_OutputPort[portNum].
isConnected();
792 static_cast<FwAssertArgType>(portNum)
795 return this->m_cmdResponseOut_OutputPort[portNum].
isConnected();
803 static_cast<FwAssertArgType>(portNum)
806 return this->m_dpGet_OutputPort[portNum].
isConnected();
814 static_cast<FwAssertArgType>(portNum)
817 return this->m_dpSend_OutputPort[portNum].
isConnected();
825 static_cast<FwAssertArgType>(portNum)
828 return this->m_logOut_OutputPort[portNum].
isConnected();
831 #if FW_ENABLE_TEXT_LOGGING == 1 833 bool DpCompressProcComponentBase ::
834 isConnected_logTextOut_OutputPort(
FwIndexType portNum)
const 837 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
838 static_cast<FwAssertArgType>(portNum)
841 return this->m_logTextOut_OutputPort[portNum].isConnected();
851 static_cast<FwAssertArgType>(portNum)
854 return this->m_prmGetOut_OutputPort[portNum].
isConnected();
862 static_cast<FwAssertArgType>(portNum)
865 return this->m_prmSetOut_OutputPort[portNum].
isConnected();
873 static_cast<FwAssertArgType>(portNum)
876 return this->m_timeCaller_OutputPort[portNum].
isConnected();
881 #if !FW_DIRECT_PORT_CALLS 892 static_cast<FwAssertArgType>(portNum)
895 return this->m_compressChunk_OutputPort[portNum].
isConnected();
916 FW_ASSERT(opCode >= idBase, static_cast<FwAssertArgType>(opCode), static_cast<FwAssertArgType>(idBase));
919 switch (opCode - idBase) {
980 static_cast<FwAssertArgType>(portNum)
990 #if !FW_DIRECT_PORT_CALLS 1006 static_cast<FwAssertArgType>(portNum)
1010 this->m_compressChunk_OutputPort[portNum].isConnected(),
1011 static_cast<FwAssertArgType>(portNum)
1013 return this->m_compressChunk_OutputPort[portNum].
invoke(
1034 this->cmdResponseOut_out(0, opCode, cmdSeq, response);
1051 this->timeCaller_out(0, _logTime);
1061 #if FW_AMPCS_COMPATIBLE 1066 static_cast<FwAssertArgType>(_status)
1070 #if FW_AMPCS_COMPATIBLE 1077 static_cast<FwAssertArgType>(_status)
1083 static_cast<FwAssertArgType>(_status)
1086 #if FW_AMPCS_COMPATIBLE 1093 static_cast<FwAssertArgType>(_status)
1099 static_cast<FwAssertArgType>(_status)
1102 #if FW_AMPCS_COMPATIBLE 1109 static_cast<FwAssertArgType>(_status)
1115 static_cast<FwAssertArgType>(_status)
1128 #if FW_ENABLE_TEXT_LOGGING 1129 if (this->isConnected_logTextOut_OutputPort(0)) {
1130 #if FW_OBJECT_NAMES == 1 1131 const char* _formatString =
1132 "(%s) %s: Compressed Data Product %" PRIu32
" from %" PRIu64
" to %" PRIu64
" bytes";
1134 const char* _formatString =
1135 "%s: Compressed Data Product %" PRIu32
" from %" PRIu64
" to %" PRIu64
" bytes";
1142 this->m_objName.toChar(),
1144 "CompressionComplete ",
1150 this->logTextOut_out(
1172 this->m_DidNotCompressThrottle++;
1178 this->timeCaller_out(0, _logTime);
1188 #if FW_AMPCS_COMPATIBLE 1193 static_cast<FwAssertArgType>(_status)
1197 #if FW_AMPCS_COMPATIBLE 1204 static_cast<FwAssertArgType>(_status)
1210 static_cast<FwAssertArgType>(_status)
1213 #if FW_AMPCS_COMPATIBLE 1220 static_cast<FwAssertArgType>(_status)
1226 static_cast<FwAssertArgType>(_status)
1239 #if FW_ENABLE_TEXT_LOGGING 1240 if (this->isConnected_logTextOut_OutputPort(0)) {
1241 #if FW_OBJECT_NAMES == 1 1242 const char* _formatString =
1243 "(%s) %s: Unable to reduce size of Data Product %" PRIu32
". Uncompressed size %" PRIu64
"";
1245 const char* _formatString =
1246 "%s: Unable to reduce size of Data Product %" PRIu32
". Uncompressed size %" PRIu64
"";
1253 this->m_objName.toChar(),
1260 this->logTextOut_out(
1279 this->m_DidNotCompressThrottle = 0;
1306 this->m_paramLock.
lock();
1307 valid = this->m_param_CHUNK_SIZE_valid;
1309 _local = this->m_CHUNK_SIZE;
1311 this->m_paramLock.
unlock();
1319 this->m_paramLock.
lock();
1320 valid = this->m_param_ENABLE_valid;
1322 _local = this->m_ENABLE;
1324 this->m_paramLock.
unlock();
1350 static_cast<FwAssertArgType>(buffer.
getSize()));
1351 buffer.
setSize(static_cast<U32>(packetSize));
1355 this->dpSend_out(0, container.
getId(), buffer);
1367 this->timeCaller_out(0, _time);
1379 void DpCompressProcComponentBase ::
1402 void DpCompressProcComponentBase ::
1411 compPtr->procRequest_handlerBase(
1417 #if !FW_DIRECT_PORT_CALLS 1423 void DpCompressProcComponentBase ::
1431 static_cast<FwAssertArgType>(portNum)
1435 this->m_cmdRegOut_OutputPort[portNum].isConnected(),
1436 static_cast<FwAssertArgType>(portNum)
1438 this->m_cmdRegOut_OutputPort[portNum].
invoke(
1443 void DpCompressProcComponentBase ::
1453 static_cast<FwAssertArgType>(portNum)
1457 this->m_cmdResponseOut_OutputPort[portNum].isConnected(),
1458 static_cast<FwAssertArgType>(portNum)
1460 this->m_cmdResponseOut_OutputPort[portNum].
invoke(
1477 static_cast<FwAssertArgType>(portNum)
1481 this->m_dpGet_OutputPort[portNum].isConnected(),
1482 static_cast<FwAssertArgType>(portNum)
1484 return this->m_dpGet_OutputPort[portNum].
invoke(
1491 void DpCompressProcComponentBase ::
1500 static_cast<FwAssertArgType>(portNum)
1504 this->m_dpSend_OutputPort[portNum].isConnected(),
1505 static_cast<FwAssertArgType>(portNum)
1507 this->m_dpSend_OutputPort[portNum].
invoke(
1513 void DpCompressProcComponentBase ::
1524 static_cast<FwAssertArgType>(portNum)
1528 this->m_logOut_OutputPort[portNum].isConnected(),
1529 static_cast<FwAssertArgType>(portNum)
1531 this->m_logOut_OutputPort[portNum].
invoke(
1539 #if FW_ENABLE_TEXT_LOGGING 1541 void DpCompressProcComponentBase ::
1551 (0 <= portNum) && (portNum < this->getNum_logTextOut_OutputPorts()),
1552 static_cast<FwAssertArgType>(portNum)
1556 this->m_logTextOut_OutputPort[portNum].isConnected(),
1557 static_cast<FwAssertArgType>(portNum)
1559 this->m_logTextOut_OutputPort[portNum].invoke(
1578 static_cast<FwAssertArgType>(portNum)
1582 this->m_prmGetOut_OutputPort[portNum].isConnected(),
1583 static_cast<FwAssertArgType>(portNum)
1585 return this->m_prmGetOut_OutputPort[portNum].
invoke(
1591 void DpCompressProcComponentBase ::
1600 static_cast<FwAssertArgType>(portNum)
1604 this->m_prmSetOut_OutputPort[portNum].isConnected(),
1605 static_cast<FwAssertArgType>(portNum)
1607 this->m_prmSetOut_OutputPort[portNum].
invoke(
1613 void DpCompressProcComponentBase ::
1621 static_cast<FwAssertArgType>(portNum)
1625 this->m_timeCaller_OutputPort[portNum].isConnected(),
1626 static_cast<FwAssertArgType>(portNum)
1628 this->m_timeCaller_OutputPort[portNum].
invoke(
1649 this->m_paramLock.
lock();
1650 this->m_CHUNK_SIZE = _localVal;
1652 this->m_paramLock.
unlock();
1669 this->m_paramLock.
lock();
1670 this->m_ENABLE = _localVal;
1672 this->m_paramLock.
unlock();
1684 paramSave_CHUNK_SIZE()
1693 this->m_paramLock.
lock();
1697 this->m_paramLock.
unlock();
1702 this->prmSetOut_out(
1721 this->m_paramLock.
lock();
1725 this->m_paramLock.
unlock();
1730 this->prmSetOut_out(
1745 ContainerId::T containerId,
1748 DpContainer& container
1752 const FwDpIdType globalId = baseId + containerId;
1755 const Fw::Success::T status = this->dpGet_out(0, globalId, size, buffer);
1759 container = DpContainer(globalId, buffer, baseId);
1760 container.setPriority(priority);
Serialization/Deserialization operation was successful.
Number of bytes to use in a compression chunk.
bool isConnected_logOut_OutputPort(FwIndexType portNum) const
void addCallPort(InputTimePort *callPort)
Register an input port.
bool isConnected_timeCaller_OutputPort(FwIndexType portNum) const
void setTimeTag(Fw::Time timeTag)
Set the time tag.
FwIdType FwOpcodeType
The type of a command opcode.
static constexpr FwIndexType getNum_dpSend_OutputPorts()
virtual void parametersLoaded()
Called whenever parameters are loaded.
static constexpr FwIndexType getNum_compressChunk_OutputPorts()
void set_compressChunk_OutputPort(FwIndexType portNum, Svc::InputCompressChunkPort *port)
Connect port to compressChunk[portNum].
SerializeStatus serializeFrom(U8 val, Endianness mode=Endianness::BIG) override
Serialize an 8-bit unsigned integer value.
static constexpr FwIndexType getNum_prmGetOut_OutputPorts()
void init()
Initialization function.
FwIdType getIdBase() const
PlatformSizeType FwSizeType
U32 FwDpPriorityType
The type of a data product priority.
void addCallPort(InputDpSendPort *callPort)
Register an input port.
void setSize(FwSizeType size)
bool isConnected_prmGetOut_OutputPort(FwIndexType portNum) const
FwIdType FwPrmIdType
The type of a parameter identifier.
void addCallPort(InputPrmSetPort *callPort)
Register an input port.
Chunk size to use when passing data to the compression backend.
static constexpr FwIndexType getNum_procRequest_InputPorts()
No room left in the buffer to serialize data.
void dpSend(DpContainer &container, Fw::Time timeTag=Fw::ZERO_TIME)
Send a data product.
bool isConnected_cmdResponseOut_OutputPort(FwIndexType portNum) const
Fw::SerializeStatus serializeRecord_CompressionRecord(const U8 *array, FwSizeType size)
PassiveComponentBase(const char *name)
Named constructor.
bool isConnected_prmSetOut_OutputPort(FwIndexType portNum) const
Fw::InputCmdPort * get_cmdIn_InputPort(FwIndexType portNum)
Enum representing a command response.
void set_prmGetOut_OutputPort(FwIndexType portNum, Fw::InputPrmGetPort *port)
Connect port to prmGetOut[portNum].
No time base has been established (Required)
void addCallPort(InputCmdRegPort *callPort)
Register an input port.
bool isConnected_cmdRegOut_OutputPort(FwIndexType portNum) const
bool isConnected_compressChunk_OutputPort(FwIndexType portNum) const
void init()
Initialization function.
Software diagnostic events.
Throttle reset count for DidNotCompress.
void addCallPort(InputPrmGetPort *callPort)
Register an input port.
A data product container.
void init()
Object initializer.
void cmdIn_handlerBase(FwIndexType portNum, FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args)
Handler base-class function for input port cmdIn.
SerializeStatus
forward declaration for string
virtual SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG)=0
Deserialize an 8-bit unsigned integer value.
static constexpr FwIndexType getNum_dpGet_OutputPorts()
void addCallPort(InputCompressChunkPort *callPort)
Register an input port.
void unlock()
alias for unLock to meet BasicLockable requirements
Opcode to save parameter CHUNK_SIZE.
void log_ACTIVITY_LO_DidNotCompress(FwDpIdType dp_id, FwSizeType data_size)
Log event DidNotCompress.
U16 FwSizeStoreType
The type used to serialize a size value.
FwIdType FwEventIdType
The type of an event identifier.
void set_logOut_OutputPort(FwIndexType portNum, Fw::InputLogPort *port)
Connect port to logOut[portNum].
DpCompressProcComponentBase(const char *compName="")
Construct DpCompressProcComponentBase object.
bool isConnected_dpSend_OutputPort(FwIndexType portNum) const
void invoke(FwOpcodeType opCode) const
Invoke a port connection.
Opcode to set parameter CHUNK_SIZE.
#define FW_OBJECT_NAMES
Indicates whether or not object names are stored (more memory, can be used for tracking objects) ...
Auto-generated base for DpCompressProc component.
void init()
Initialization function.
Data was the wrong format (e.g. wrong packet type)
static constexpr FwIndexType getNum_logOut_OutputPorts()
Less important informational events.
Fw::ParamValid invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
Omit length from serialization.
void set_timeCaller_OutputPort(FwIndexType portNum, Fw::InputTimePort *port)
Connect port to timeCaller[portNum].
Fw::InputBufferSendPort * get_procRequest_InputPort(FwIndexType portNum)
Svc::CompressionAlgorithm compressChunk_out(FwIndexType portNum, Fw::Buffer &buffer, FwSizeType min_compression, FwSizeType write_offset) const
Invoke output port compressChunk.
static constexpr FwIndexType getNum_cmdIn_InputPorts()
void set_dpGet_OutputPort(FwIndexType portNum, Fw::InputDpGetPort *port)
Connect port to dpGet[portNum].
void procRequest_handlerBase(FwIndexType portNum, Fw::Buffer &fwBuffer)
Handler base-class function for input port procRequest.
void invoke(Fw::Time &time) const
Invoke a port connection.
static constexpr FwIndexType getNum_prmSetOut_OutputPorts()
void set_prmSetOut_OutputPort(FwIndexType portNum, Fw::InputPrmSetPort *port)
Connect port to prmSetOut[portNum].
Opcode to save parameter ENABLE.
void invoke(FwOpcodeType opCode, U32 cmdSeq, const Fw::CmdResponse &response) const
Invoke a port connection.
void invalidateBuffer()
Invalidate the packet buffer.
void log_DIAGNOSTIC_CompressionComplete(FwDpIdType dp_id, FwSizeType initial_size, FwSizeType final_size) const
Log event CompressionComplete.
static constexpr FwSizeType getPacketSizeForDataSize(FwSizeType dataSize)
Get the packet size for a given data size.
const char * toChar() const
Convert to a C-style char*.
Enum representing event severity.
virtual ~DpCompressProcComponentBase()
Destroy DpCompressProcComponentBase object.
FwSizeType getPacketSize() const
Get the packet size corresponding to the data size.
static constexpr FwIndexType getNum_timeCaller_OutputPorts()
Fw::Buffer getBuffer() const
Enabled and disabled states.
FormatStatus format(const CHAR *formatString,...)
write formatted string to buffer
void init()
Initialization function.
Command successfully executed.
void log_ACTIVITY_LO_DidNotCompress_ThrottleClear()
Reset throttle value for DidNotCompress.
DpContainer()
Constructor with default initialization.
uint8_t U8
8-bit unsigned integer
static constexpr FwIndexType getNum_cmdResponseOut_OutputPorts()
void init()
Initialization function.
FwSizeType getSize() const
Svc::CompressionAlgorithm invoke(Fw::Buffer &buffer, FwSizeType min_compression, FwSizeType write_offset) const
Command had execution error.
FwIdType FwDpIdType
The type of a data product identifier.
virtual void parameterUpdated(FwPrmIdType id)
Called whenever a parameter is updated.
void invoke(FwEventIdType id, Fw::Time &timeTag, const Fw::LogSeverity &severity, Fw::LogBuffer &args) const
Invoke a port connection.
FwSizeStoreType paramGet_CHUNK_SIZE(Fw::ParamValid &valid)
Fw::Success invoke(FwDpIdType id, FwSizeType dataSize, Fw::Buffer &buffer) const
PlatformIndexType FwIndexType
void set_cmdResponseOut_OutputPort(FwIndexType portNum, Fw::InputCmdResponsePort *port)
Connect port to cmdResponseOut[portNum].
void addCallPort(InputDpGetPort *callPort)
Register an input port.
void addCallPort(InputLogPort *callPort)
Register an input port.
void init()
Initialization function.
Command failed validation.
RateGroupDivider component implementation.
SerializeStatus deserializeTo(U8 &val, Endianness mode=Endianness::BIG) override
Deserialize an 8-bit unsigned integer value.
bool isConnected_dpGet_OutputPort(FwIndexType portNum) const
Enum representing parameter validity.
void set_dpSend_OutputPort(FwIndexType portNum, Fw::InputDpSendPort *port)
Connect port to dpSend[portNum].
void invoke(FwPrmIdType id, Fw::ParamBuffer &val) const
Invoke a port connection.
virtual void procRequest_handler(FwIndexType portNum, Fw::Buffer &fwBuffer)=0
Handler for input port procRequest.
Implementation of malloc based allocator.
void loadParameters()
Load the parameters from a parameter source.
void regCommands()
Register commands with the Command Dispatcher.
void cmdResponse_out(FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response)
Emit command response.
void init()
Initialization function.
Fw::Enabled paramGet_ENABLE(Fw::ParamValid &valid)
void set_cmdRegOut_OutputPort(FwIndexType portNum, Fw::InputCmdRegPort *port)
Connect port to cmdRegOut[portNum].
void init()
Initialization function.
void invoke(FwDpIdType id, const Fw::Buffer &buffer) const
Invoke a port connection.
static constexpr FwIndexType getNum_cmdRegOut_OutputPorts()
void init()
Initialization function.
PlatformAssertArgType FwAssertArgType
The type of arguments to assert functions.
void addCallPort(InputCmdResponsePort *callPort)
Register an input port.
void lock()
lock the mutex and assert success
Opcode to set parameter ENABLE.