129 lines
2.2 KiB
C++
129 lines
2.2 KiB
C++
#ifndef BSP_Q7S_DEVICES_DEVICEDEFINITIONS_STARTRACKERJSONCOMMANDS_H_
|
|
#define BSP_Q7S_DEVICES_DEVICEDEFINITIONS_STARTRACKERJSONCOMMANDS_H_
|
|
|
|
/**
|
|
* @brief This file defines a few helper classes to generate commands by means of the parameters
|
|
* defined in the arcsec json files.
|
|
* @author J. Meier
|
|
*/
|
|
|
|
#include <string>
|
|
|
|
#include "fsfw/serviceinterface/ServiceInterface.h"
|
|
#include "ArcsecJsonParamBase.h"
|
|
|
|
/**
|
|
* @brief Generates command to set the limit parameters
|
|
*
|
|
*/
|
|
class Limits : public ArcsecJsonParamBase {
|
|
public:
|
|
|
|
Limits();
|
|
|
|
size_t getSize();
|
|
|
|
private:
|
|
|
|
static const size_t COMMAND_SIZE = 43;
|
|
|
|
virtual ReturnValue_t createCommand(uint8_t* buffer) override;
|
|
};
|
|
|
|
/**
|
|
* @brief Generates the command to configure the tracking algorithm.
|
|
*
|
|
*/
|
|
class Tracking : public ArcsecJsonParamBase {
|
|
public:
|
|
|
|
Tracking();
|
|
|
|
size_t getSize();
|
|
|
|
private:
|
|
|
|
static const size_t COMMAND_SIZE = 15;
|
|
|
|
ReturnValue_t createCommand(uint8_t* buffer) override;
|
|
|
|
};
|
|
|
|
/**
|
|
* @brief Generates the command to set the mounting quaternion
|
|
*
|
|
*/
|
|
class Mounting : public ArcsecJsonParamBase {
|
|
public:
|
|
|
|
Mounting();
|
|
|
|
size_t getSize();
|
|
|
|
private:
|
|
|
|
static const size_t COMMAND_SIZE = 18;
|
|
|
|
ReturnValue_t createCommand(uint8_t* buffer) override;
|
|
|
|
};
|
|
|
|
/**
|
|
* @brief Generates the command to set the mounting quaternion
|
|
*
|
|
*/
|
|
class Camera : public ArcsecJsonParamBase {
|
|
public:
|
|
|
|
Camera();
|
|
|
|
size_t getSize();
|
|
|
|
private:
|
|
|
|
static const size_t COMMAND_SIZE = 43;
|
|
|
|
ReturnValue_t createCommand(uint8_t* buffer) override;
|
|
|
|
};
|
|
|
|
/**
|
|
* @brief Generates the command to configure the blob algorithm
|
|
*
|
|
*/
|
|
class Blob : public ArcsecJsonParamBase {
|
|
public:
|
|
|
|
Blob();
|
|
|
|
size_t getSize();
|
|
|
|
private:
|
|
|
|
static const size_t COMMAND_SIZE = 24;
|
|
|
|
ReturnValue_t createCommand(uint8_t* buffer) override;
|
|
|
|
};
|
|
|
|
/**
|
|
* @brief Generates the command to configure the centroiding algorithm
|
|
*
|
|
*/
|
|
class Centroiding : public ArcsecJsonParamBase {
|
|
public:
|
|
|
|
Centroiding();
|
|
|
|
size_t getSize();
|
|
|
|
private:
|
|
|
|
static const size_t COMMAND_SIZE = 24;
|
|
|
|
ReturnValue_t createCommand(uint8_t* buffer) override;
|
|
|
|
};
|
|
|
|
#endif /* BSP_Q7S_DEVICES_DEVICEDEFINITIONS_STARTRACKERJSONCOMMANDS_H_ */
|