#include <DC_PUSMemoryLoadAbsolute.h>
Inheritance diagram for DC_PUSMemoryLoadAbsolute:
This class adds to its superclass the implementation of the raw data load mechanism. Since the amount of data to be loaded will often be large, the fast version of this service is implemented. The data load mechanism interprets the application data in the telecommand packet and uses them to configure the internal data structure defined by the super class. The interpretation of the application data can result in the detection of inconsistencies or invalid data. These are reported by setting the validity check code.
The PUS leaves some leeway in the definition of the structure of the application data for memory load telecommands. This implementation makes the following assumptions:
TD_PUSMemId
. TD_PUSNumberMemBlocks
. TD_PUSMemId
to have size 1 (i.e. to be a char
or an unsigned char
).
Definition at line 40 of file DC_PUSMemoryLoadAbsolute.h.
Public Member Functions | |
DC_PUSMemoryLoadAbsolute (void) | |
Instantiate a PUS memory load using base offset telecommand. | |
virtual void | setRawData (unsigned char *d, unsigned int n) |
Implementation of the raw data load service. | |
TD_PUSMemId | getMemoryBlockId () const |
Get the memory block ID. |
|
Instantiate a PUS memory load using base offset telecommand. The class identifier and the telecommand subtype are set. The memory block ID is initialized to zero. Definition at line 18 of file DC_PUSMemoryLoadAbsolute.cpp. |
|
Get the memory block ID.
Definition at line 75 of file DC_PUSMemoryLoadAbsolute.cpp. |
|
Implementation of the raw data load service.
This method would normally be called by a telecommand loader to load the application data into the the telecommand component. This method interprets the raw data as they are loaded and uses them to configure the data structure (defined by the super class) that holds the start address, the length, the checksum, and the memory load data for each block. The application data are constrained to fit within the data structures configured at the level of the superclass. Two such constraints apply:<ul> The number of bytes to be transferred (the value of argument n) must be greater than:
Reimplemented from Telecommand. Definition at line 24 of file DC_PUSMemoryLoadAbsolute.cpp. |