Skip to content
Snippets Groups Projects
RequestVerificationService.hpp 3.37 KiB
Newer Older
  • Learn to ignore specific revisions
  • #ifndef ECSS_SERVICES_REQUESTVERIFICATIONSERVICE_HPP
    
    #define ECSS_SERVICES_REQUESTVERIFICATIONSERVICE_HPP
    
    
    #include "Service.hpp"
    
    /**
     * Implementation of the ST[01] request verification service
     *
    
    thodkatz's avatar
    thodkatz committed
     * Note:For the time being the cause(routing, acceptance, execution), that functions of ST[01]
     * should be called, hasn't been implemented yet. In main.cpp there are some random calls with
     * dummy values.
     *
    
     * @todo All telemetry packets shall have a telemetry packet secondary header
    
    thodkatz's avatar
    thodkatz committed
     * @todo See if the deduced data defined from the standard should still be ignored. This deduced
     * data exists only in reports that send failure signs(for example the TM[1,2])
    
     */
    class RequestVerificationService : public Service {
    public:
    	RequestVerificationService() {
    		serviceType = 1;
    	}
    
    	/**
    	 * TM[1,1] successful acceptance verification report
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * Take a Message& reference as argument, that contains the necessary data to send the report.
    	 * The data field(data[]) of this contains the basic info of the telecommand packet  that
    	 * accepted successfully and the format is defined from the standard
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * @todo The values of the data types that the data field(data[]) is consisted have
    
    	 * determined limits so when the assign will happen should be treated with attention
    
    	void successAcceptanceVerification(Message &request);
    
    
    	/**
    	 * TM[1,2] failed acceptance verification report
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * Take a Message& reference as argument, that contains the necessary data to send the report.
    	 * The data field(data[]) of this contains the basic info of the telecommand packet that fail
    	 * to be accepted and the format is defined from the standard
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * @todo The values of the data types that the data field(data[]) is consisted have
    	 * determined limits so when the declaration will happen should be treated with attention
    
    	void failAcceptanceVerification(Message &request);
    
    thodkatz's avatar
    thodkatz committed
     	 * TM[1,7] successful completion of execution verification report
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * Take a Message& reference as argument, that contains the necessary data to send the report.
    	 * The data field(data[]) of this contains the basic info of the telecommand packet that
    	 * executed successfully and the format is defined from the standard
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * @todo The values of the data types that the data field(data[]) is consisted have
    	 * determined limits so when the declaration will happen should be treated with attention
     	 */
    
    	void successExecutionVerification(Message &request);
    
    thodkatz's avatar
    thodkatz committed
    	 * TM[1,8] failed completion of execution verification report
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * Take a Message& reference as argument, that contains the necessary data to send the report.
    	 * The data field(data[]) of this contains the basic info of the telecommand packet that fail
    	 * to be executed and the format is defined from the standard
    	 */
    
    	void failExecutionVerification(Message &request);
    
    thodkatz's avatar
    thodkatz committed
    	 * TM[1,10] failed routing verification report
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * Take a Message& reference as argument, that contains the necessary data to send the report.
    	 * The data field(data[]) of this contains the basic info of the telecommand packet that fail
    	 * the routing and the format is defined from the standard
    
    thodkatz's avatar
    thodkatz committed
    	 *
    
    thodkatz's avatar
    thodkatz committed
    	 * @todo The values of the data types that the data field(data[]) is consisted have
    	 * determined limits so when the declaration will happen should be treated with attention
     	 */
    
    	void failRoutingVerification(Message &request);
    
    #endif //ECSS_SERVICES_REQUESTVERIFICATIONSERVICE_HPP