41 lines
2.1 KiB
C++
41 lines
2.1 KiB
C++
#pragma once
|
|
|
|
#include <etl/list.h>
|
|
|
|
#include "fsfw/storagemanager/StorageManagerIF.h"
|
|
#include "fsfw/storagemanager/storeAddress.h"
|
|
#include "fsfw/tmtcservices/AcceptsTelemetryIF.h"
|
|
|
|
namespace cfdp {
|
|
enum class CfdpState { IDLE, BUSY_CLASS_1_NACKED, BUSY_CLASS_2_ACKED, SUSPENDED };
|
|
|
|
static constexpr uint8_t SSID = SUBSYSTEM_ID::CFDP;
|
|
static constexpr uint8_t CID = CLASS_ID::CFDP_HANDLER;
|
|
|
|
struct FsfwParams {
|
|
FsfwParams(EventReportingProxyIF* eventReporter) : eventReporter(eventReporter) {}
|
|
|
|
EventReportingProxyIF* eventReporter = nullptr;
|
|
};
|
|
|
|
namespace events {
|
|
static constexpr Event PDU_SEND_ERROR = event::makeEvent<SSID, 1, severity::LOW>();
|
|
static constexpr Event SERIALIZATION_ERROR = event::makeEvent<SSID, 2, severity::LOW>();
|
|
static constexpr Event FILESTORE_ERROR = event::makeEvent<SSID, 3, severity::LOW>();
|
|
//! [EXPORT] : [COMMENT] P1: Transaction step ID, P2: 0 for source file name, 1 for dest file name
|
|
static constexpr Event FILENAME_TOO_LARGE_ERROR = event::makeEvent<SSID, 4, severity::LOW>();
|
|
//! [EXPORT] : [COMMENT] CFDP request handling failed. P2: Returncode.
|
|
static constexpr Event HANDLING_CFDP_REQUEST_FAILED = event::makeEvent<SSID, 5, severity::LOW>();
|
|
} // namespace events
|
|
|
|
static constexpr ReturnValue_t SOURCE_TRANSACTION_PENDING = returnvalue::makeCode(CID, 0);
|
|
static constexpr ReturnValue_t FILE_DOES_NOT_EXIST = returnvalue::makeCode(CID, 1);
|
|
static constexpr ReturnValue_t FILE_SEGMENT_LEN_INVALID = returnvalue::makeCode(CID, 2);
|
|
static constexpr ReturnValue_t SOURCE_NAME_EMPTY = returnvalue::makeCode(CID, 3);
|
|
static constexpr ReturnValue_t DEST_NAME_EMPTY = returnvalue::makeCode(CID, 4);
|
|
static constexpr ReturnValue_t WRONG_REMOTE_CFG_ENTITY_ID = returnvalue::makeCode(CID, 5);
|
|
static constexpr ReturnValue_t TARGET_MSG_QUEUE_FULL = returnvalue::makeCode(CID, 6);
|
|
static constexpr ReturnValue_t TM_STORE_FULL = returnvalue::makeCode(CID, 7);
|
|
static constexpr ReturnValue_t DEST_NON_METADATA_PDU_AS_FIRST_PDU = returnvalue::makeCode(CID, 8);
|
|
static constexpr ReturnValue_t PDU_BUFFER_TOO_SMALL = returnvalue::makeCode(CID, 9);
|
|
} // namespace cfdp
|