some doc change proposals while
writing hk service. Added Type.h in PoolRawAccess.h, compiler error when not doing that
This commit is contained in:
parent
37a70df244
commit
9c3a9323b7
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
#include <framework/datapool/DataSetIF.h>
|
#include <framework/datapool/DataSetIF.h>
|
||||||
#include <framework/datapool/PoolVariableIF.h>
|
#include <framework/datapool/PoolVariableIF.h>
|
||||||
|
#include <framework/globalfunctions/Type.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class allows accessing Data Pool variables as raw bytes.
|
* This class allows accessing Data Pool variables as raw bytes.
|
||||||
@ -79,9 +80,8 @@ public:
|
|||||||
~PoolRawAccess();
|
~PoolRawAccess();
|
||||||
/**
|
/**
|
||||||
* \brief This operation returns a pointer to the entry fetched.
|
* \brief This operation returns a pointer to the entry fetched.
|
||||||
* \details This means, it does not return a pointer to byte "index", but to the start byte of
|
* \details Return pointer to the buffer containing the raw data
|
||||||
* array entry "index". Example: If the original data pool array consists of an double
|
* Size and number of data can be retrieved by other means.
|
||||||
* array of size four, getEntry(1) returns &(this->value[8]).
|
|
||||||
*/
|
*/
|
||||||
uint8_t* getEntry();
|
uint8_t* getEntry();
|
||||||
/**
|
/**
|
||||||
|
@ -112,8 +112,7 @@ public:
|
|||||||
* corresponds to.
|
* corresponds to.
|
||||||
* \param dataSet The data set in which the variable shall register itself. If NULL,
|
* \param dataSet The data set in which the variable shall register itself. If NULL,
|
||||||
* the variable is not registered.
|
* the variable is not registered.
|
||||||
* \param setWritable If this flag is set to true, changes in the value attribute can be
|
* \param setReadWriteMode
|
||||||
* written back to the data pool, otherwise not.
|
|
||||||
*/
|
*/
|
||||||
PoolVariable(uint32_t set_id, DataSetIF* dataSet,
|
PoolVariable(uint32_t set_id, DataSetIF* dataSet,
|
||||||
ReadWriteMode_t setReadWriteMode) :
|
ReadWriteMode_t setReadWriteMode) :
|
||||||
|
@ -35,14 +35,14 @@ class StorageManagerIF;
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief This is the abstract base class for device handlers.
|
* @brief This is the abstract base class for device handlers.
|
||||||
*
|
* @details
|
||||||
* Documentation: Dissertation Baetz p.138,139, p.141-149
|
* Documentation: Dissertation Baetz p.138,139, p.141-149
|
||||||
*
|
*
|
||||||
* It features handling of @link DeviceHandlerIF::Mode_t Modes @endlink, communication with
|
* It features handling of @link DeviceHandlerIF::Mode_t Modes @endlink, communication with
|
||||||
* physical devices, using the @link DeviceCommunicationIF, and communication with commanding objects.
|
* physical devices, using the @link DeviceCommunicationIF, and communication with commanding objects.
|
||||||
*
|
*
|
||||||
* NOTE: RMAP is a legacy standard which is used for FLP.
|
* NOTE: RMAP is a standard which is used for FLP.
|
||||||
* RMAP communication is not mandatory for projects implementing the FSFW.
|
* RMAP communication is not mandatory for projects implementing the FSFW.
|
||||||
* However, the communication principles are similar to RMAP as there are two write and two send calls involved.
|
* However, the communication principles are similar to RMAP as there are two write and two send calls involved.
|
||||||
*
|
*
|
||||||
@ -57,7 +57,7 @@ class StorageManagerIF;
|
|||||||
* Components and drivers can send so called cookies which are used for communication
|
* Components and drivers can send so called cookies which are used for communication
|
||||||
* and contain information about the communcation (e.g. slave address for I2C or RMAP structs).
|
* and contain information about the communcation (e.g. slave address for I2C or RMAP structs).
|
||||||
*
|
*
|
||||||
* \ingroup devices
|
* @ingroup devices
|
||||||
*/
|
*/
|
||||||
class DeviceHandlerBase: public DeviceHandlerIF,
|
class DeviceHandlerBase: public DeviceHandlerIF,
|
||||||
public HasReturnvaluesIF,
|
public HasReturnvaluesIF,
|
||||||
@ -87,33 +87,34 @@ public:
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function is the device handler base core component and is called periodically.
|
* @brief This function is the device handler base core component and is called periodically.
|
||||||
* General sequence:
|
* @details
|
||||||
* If the State is SEND_WRITE:
|
* General sequence, showing where abstract virtual functions are called:
|
||||||
* 1. Set the cookie state to COOKIE_UNUSED and read the command queue
|
* If the State is SEND_WRITE:
|
||||||
* 2. Handles Device State Modes by calling doStateMachine().
|
* 1. Set the cookie state to COOKIE_UNUSED and read the command queue
|
||||||
* This function calls callChildStatemachine() which calls the abstract functions
|
* 2. Handles Device State Modes by calling doStateMachine().
|
||||||
* doStartUp() and doShutDown()
|
* This function calls callChildStatemachine() which calls the abstract functions
|
||||||
* 3. Check switch states by calling checkSwitchStates()
|
* doStartUp() and doShutDown()
|
||||||
* 4. Decrements counter for timeout of replies by calling decrementDeviceReplyMap()
|
* 3. Check switch states by calling checkSwitchStates()
|
||||||
* 5. Performs FDIR check for failures
|
* 4. Decrements counter for timeout of replies by calling decrementDeviceReplyMap()
|
||||||
* 6. Calls hkSwitcher.performOperation()
|
* 5. Performs FDIR check for failures
|
||||||
* 7. If the device mode is MODE_OFF, return RETURN_OK. Otherwise, perform the Action property
|
* 6. Calls hkSwitcher.performOperation()
|
||||||
* and performs depending on value specified
|
* 7. If the device mode is MODE_OFF, return RETURN_OK. Otherwise, perform the Action property
|
||||||
* by input value counter. The child class tells base class what to do by setting this value.
|
* and performs depending on value specified
|
||||||
* - SEND_WRITE: Send data or commands to device by calling doSendWrite() which calls
|
* by input value counter. The child class tells base class what to do by setting this value.
|
||||||
* sendMessage function of #communicationInterface
|
* - SEND_WRITE: Send data or commands to device by calling doSendWrite() which calls
|
||||||
* and calls buildInternalCommand if the cookie state is COOKIE_UNUSED
|
* sendMessage function of #communicationInterface
|
||||||
* - GET_WRITE: Get ackknowledgement for sending by calling doGetWrite() which calls
|
* and calls buildInternalCommand if the cookie state is COOKIE_UNUSED
|
||||||
* getSendSuccess of #communicationInterface.
|
* - GET_WRITE: Get ackknowledgement for sending by calling doGetWrite() which calls
|
||||||
* Calls abstract functions scanForReply() and interpretDeviceReply().
|
* getSendSuccess of #communicationInterface.
|
||||||
* - SEND_READ: Request reading data from device by calling doSendRead() which calls
|
* Calls abstract functions scanForReply() and interpretDeviceReply().
|
||||||
* requestReceiveMessage of #communcationInterface
|
* - SEND_READ: Request reading data from device by calling doSendRead() which calls
|
||||||
* - GET_READ: Access requested reading data by calling doGetRead() which calls
|
* requestReceiveMessage of #communcationInterface
|
||||||
* readReceivedMessage of #communicationInterface
|
* - GET_READ: Access requested reading data by calling doGetRead() which calls
|
||||||
* @param counter Specifies which Action to perform
|
* readReceivedMessage of #communicationInterface
|
||||||
* @return RETURN_OK for successful execution
|
* @param counter Specifies which Action to perform
|
||||||
*/
|
* @return RETURN_OK for successful execution
|
||||||
|
*/
|
||||||
virtual ReturnValue_t performOperation(uint8_t counter);
|
virtual ReturnValue_t performOperation(uint8_t counter);
|
||||||
|
|
||||||
virtual ReturnValue_t initialize();
|
virtual ReturnValue_t initialize();
|
||||||
|
@ -79,11 +79,7 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Used to retrieve Target Interface Pointers of objects.
|
* @brief Documentation can be found in the class method declration.
|
||||||
* The object has to implement the SystemObject or SystemObjectIF at the very least,
|
|
||||||
* otherwise NULL will be returned.
|
|
||||||
* @param id
|
|
||||||
* @return NULL or pointer to target interface specified by template object
|
|
||||||
*/
|
*/
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T* ObjectManagerIF::get( object_id_t id ) {
|
T* ObjectManagerIF::get( object_id_t id ) {
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
class AcceptsTelecommandsIF {
|
class AcceptsTelecommandsIF {
|
||||||
public:
|
public:
|
||||||
static const uint8_t INTERFACE_ID = CLASS_ID::ACCEPTS_TELECOMMANDS_IF;
|
static const uint8_t INTERFACE_ID = CLASS_ID::ACCEPTS_TELECOMMANDS_IF;
|
||||||
static const ReturnValue_t ACTIVITY_STARTED = MAKE_RETURN_CODE(1);
|
static const ReturnValue_t ACTIVITY_STARTED = MAKE_RETURN_CODE(1); // is this used anywhere or can it be removed?
|
||||||
static const ReturnValue_t INVALID_SUBSERVICE = MAKE_RETURN_CODE(2);
|
static const ReturnValue_t INVALID_SUBSERVICE = MAKE_RETURN_CODE(2);
|
||||||
static const ReturnValue_t ILLEGAL_APPLICATION_DATA = MAKE_RETURN_CODE(3);
|
static const ReturnValue_t ILLEGAL_APPLICATION_DATA = MAKE_RETURN_CODE(3);
|
||||||
static const ReturnValue_t SEND_TM_FAILED = MAKE_RETURN_CODE(4);
|
static const ReturnValue_t SEND_TM_FAILED = MAKE_RETURN_CODE(4);
|
||||||
|
Loading…
Reference in New Issue
Block a user