LCOV - code coverage report
Current view: top level - fsfw/tmtcservices - VerificationReporterIF.h (source / functions) Hit Total Coverage
Test: fsfw-tests_coverage.info Lines: 10 23 43.5 %
Date: 2023-12-12 13:11:03 Functions: 5 11 45.5 %

          Line data    Source code
       1             : #ifndef FSFW_TMTCSERVICES_VERIFICATIONREPORTERIF_H
       2             : #define FSFW_TMTCSERVICES_VERIFICATIONREPORTERIF_H
       3             : 
       4             : #include "fsfw/retval.h"
       5             : #include "fsfw/tmtcpacket/pus/tc.h"
       6             : 
       7             : struct VerifParamsBase {
       8           0 :   VerifParamsBase() : reportId(0), tcPacketId(0), tcPsc(0) {}
       9           3 :   VerifParamsBase(uint8_t reportId, uint16_t tcPacketId, uint16_t tcPsc)
      10           3 :       : reportId(reportId), tcPacketId(tcPacketId), tcPsc(tcPsc) {}
      11             :   uint8_t reportId;
      12             :   uint16_t tcPacketId;
      13             :   uint16_t tcPsc;
      14             :   uint8_t ackFlags = ecss::ACK_ALL;
      15             :   uint8_t step = 0;
      16             : 
      17           0 :   void resetTcFields() {
      18           0 :     tcPacketId = 0;
      19           0 :     tcPsc = 0;
      20           0 :     ackFlags = 0;
      21           0 :   }
      22             : };
      23             : 
      24             : struct VerifSuccessParams : public VerifParamsBase {
      25           0 :   VerifSuccessParams() = default;
      26             :   VerifSuccessParams(uint8_t reportId, uint16_t tcPacketId, uint16_t tcPsc)
      27             :       : VerifParamsBase(reportId, tcPacketId, tcPsc) {}
      28           1 :   VerifSuccessParams(uint8_t reportId, PusTcIF& tc)
      29           1 :       : VerifParamsBase(reportId, tc.getPacketIdRaw(), tc.getPacketSeqCtrlRaw()) {}
      30             : };
      31             : 
      32             : struct VerifFailureParams : public VerifParamsBase {
      33           0 :   VerifFailureParams() = default;
      34             :   VerifFailureParams(uint8_t reportId, uint16_t tcPacketId, uint16_t tcPsc, ReturnValue_t errorCode,
      35             :                      uint32_t errorParam1, uint32_t errorParams2)
      36             :       : VerifParamsBase(reportId, tcPacketId, tcPsc),
      37             :         errorCode(errorCode),
      38             :         errorParam1(errorParam1),
      39             :         errorParam2(errorParams2) {}
      40           1 :   VerifFailureParams(uint8_t reportId, uint16_t tcPacketId, uint16_t tcPsc, ReturnValue_t errorCode)
      41           1 :       : VerifParamsBase(reportId, tcPacketId, tcPsc), errorCode(errorCode) {}
      42             :   VerifFailureParams(uint8_t reportId, uint16_t tcPacketId, uint16_t tcPsc)
      43             :       : VerifParamsBase(reportId, tcPacketId, tcPsc) {}
      44           1 :   VerifFailureParams(uint8_t reportId, PusTcIF& tc, ReturnValue_t errorCode)
      45           3 :       : VerifParamsBase(reportId, tc.getPacketIdRaw(), tc.getPacketSeqCtrlRaw()),
      46           1 :         errorCode(errorCode) {}
      47             :   VerifFailureParams(uint8_t reportId, PusTcIF& tc)
      48             :       : VerifParamsBase(reportId, tc.getPacketIdRaw(), tc.getPacketSeqCtrlRaw()) {}
      49             : 
      50           0 :   void resetFailParams() {
      51           0 :     errorCode = returnvalue::FAILED;
      52           0 :     errorParam1 = 0;
      53           0 :     errorParam2 = 0;
      54           0 :   }
      55             : 
      56             :   ReturnValue_t errorCode = returnvalue::FAILED;
      57             :   uint8_t step = 0;
      58             :   uint32_t errorParam1 = 0;
      59             :   uint32_t errorParam2 = 0;
      60             : };
      61             : class VerificationReporterIF {
      62             :  public:
      63          23 :   virtual ~VerificationReporterIF() = default;
      64             : 
      65             :   virtual ReturnValue_t sendSuccessReport(VerifSuccessParams params) = 0;
      66             :   virtual ReturnValue_t sendFailureReport(VerifFailureParams params) = 0;
      67             : };
      68             : 
      69             : #endif  // FSFW_TMTCSERVICES_VERIFICATIONREPORTERIF_H

Generated by: LCOV version 1.14

Impressum Datenschutz