7 #ifndef Fw_DpContainer_HPP
8 #define Fw_DpContainer_HPP
243 void initUserDataField();
uint8_t U8
8-bit unsigned integer
#define HASH_DIGEST_LENGTH
U32 FwPacketDescriptorType
PlatformSizeType FwSizeType
U8 SerialType
The serial representation type.
A data product Container.
DpCfg::ProcType::SerialType m_procTypes
The processing types.
void setPriority(FwDpPriorityType priority)
Set the priority.
Fw::Time getTimeTag() const
static constexpr FwSizeType DATA_OFFSET
The data offset.
DpContainer()
Constructor for container with default initialization.
DpCfg::ProcType::SerialType getProcTypes() const
Utils::HashBuffer getDataHash() const
FwDpPriorityType m_priority
The priority.
Header::UserData m_userData
The user data.
void setId(FwDpIdType id)
Set the id.
static constexpr FwSizeType MIN_PACKET_SIZE
void updateHeaderHash()
Compute and set the header hash.
DpContainer & operator=(const DpContainer &src)=default
Copy assignment operator.
void setTimeTag(Fw::Time timeTag)
Set the time tag.
void invalidateBuffer()
Invalidate the packet buffer.
void setDpState(DpState dpState)
Set the data product state.
FwDpPriorityType getPriority() const
Utils::HashBuffer computeDataHash() const
Utils::HashBuffer computeHeaderHash() const
Fw::Buffer getBuffer() const
Fw::DpState getState() const
Get the product state.
Fw::SerializeStatus deserializeHeader()
Utils::HashBuffer getHeaderHash() const
virtual ~DpContainer()
Destructor.
Fw::ExternalSerializeBufferWithMemberCopy m_dataBuffer
DpState getDpState() const
Get the data product state.
Time m_timeTag
The time tag.
Success::T checkHeaderHash(Utils::HashBuffer &storedHash, Utils::HashBuffer &computedHash) const
Check the header hash.
static constexpr FwSizeType getPacketSizeForDataSize(FwSizeType dataSize)
Get the packet size for a given data size.
FwSizeType getPacketSize() const
Get the packet size corresponding to the data size.
void setDataHash(Utils::HashBuffer hash)
Set the data hash.
Buffer m_buffer
The packet buffer.
FwSizeType m_dataSize
The data size.
FwSizeType getDataSize() const
void setBuffer(const Buffer &buffer)
Set the packet buffer.
void setHeaderHash(const Utils::HashBuffer &hash)
Set the header hash.
FwSizeType getDataHashOffset() const
Get the data hash offset.
static constexpr FwSizeType HEADER_HASH_OFFSET
The header hash offset.
void setDataSize(FwSizeType dataSize)
Set the data size.
Success::T checkDataHash(Utils::HashBuffer &storedHash, Utils::HashBuffer &computedHash) const
Check the data hash.
void updateDataHash()
Update the data hash.
DpState m_dpState
The data product state.
void setProcTypes(DpCfg::ProcType::SerialType procTypes)
Set the processing types bit mask.
@ SERIALIZED_SIZE
The size of the serial representation.
void clear()
clear external buffer
A container class for holding a hash buffer.
@ CONTAINER_USER_DATA_SIZE
SerializeStatus
forward declaration for string