#ifndef MISSION_CFDP_CFDPUSER_H_ #define MISSION_CFDP_CFDPUSER_H_ #include #include namespace cfdp { class EiveUserHandler : public cfdp::UserBase { public: explicit EiveUserHandler(HasFileSystemIF& vfs, StorageManagerIF& ipcStore, MessageQueueId_t cfdpRequestId); virtual ~EiveUserHandler(); void transactionIndication(const cfdp::TransactionId& id) override; void eofSentIndication(const cfdp::TransactionId& id) override; void transactionFinishedIndication(const cfdp::TransactionFinishedParams& params) override; void metadataRecvdIndication(const cfdp::MetadataRecvdParams& params) override; void fileSegmentRecvdIndication(const cfdp::FileSegmentRecvdParams& params) override; void reportIndication(const cfdp::TransactionId& id, cfdp::StatusReportIF& report) override; void suspendedIndication(const cfdp::TransactionId& id, cfdp::ConditionCode code); void resumedIndication(const cfdp::TransactionId& id, size_t progress) override; void faultIndication(const cfdp::TransactionId& id, cfdp::ConditionCode code, size_t progress) override; void abandonedIndication(const cfdp::TransactionId& id, cfdp::ConditionCode code, size_t progress) override; void eofRecvIndication(const cfdp::TransactionId& id) override; private: MessageQueueIF* userQueue; ReservedMessageParser* reservedMsgParser; }; } // namespace cfdp #endif /* MISSION_CFDP_CFDPUSER_H_ */