|
QGroundControl
Ground Control Station for MAVLink Drones
|
#include <MAVLinkFTP.h>
Public Types | |
| enum | OpCode_t { kCmdNone = 0 , kCmdTerminateSession , kCmdResetSessions , kCmdListDirectory , kCmdOpenFileRO , kCmdReadFile , kCmdCreateFile , kCmdWriteFile , kCmdRemoveFile , kCmdCreateDirectory , kCmdRemoveDirectory , kCmdOpenFileWO , kCmdTruncateFile , kCmdRename , kCmdCalcFileCRC32 , kCmdBurstReadFile , kRspAck = 128 , kRspNak } |
| enum | ErrorCode_t { kErrNone = 0 , kErrFail , kErrFailErrno , kErrInvalidDataSize , kErrInvalidSession , kErrNoSessionsAvailable , kErrEOF , kErrUnknownCommand , kErrFailFileExists , kErrFailFileProtected , kErrFailFileNotFound } |
| Error codes returned in Nak response PayloadHeader.data[0]. More... | |
Public Member Functions | |
| MAVPACKED (typedef struct RequestHeader { uint16_t seqNumber;uint8_t session;uint8_t opcode;uint8_t size;uint8_t req_opcode;uint8_t burstComplete;uint8_t paddng;uint32_t offset;}) RequestHeader | |
| MAVPACKED (typedef struct Request{ RequestHeader hdr;union { uint8_t data[sizeof(((mavlink_file_transfer_protocol_t *) 0) ->payload) - sizeof(RequestHeader)];uint32_t openFileLength;};}) Request | |
Static Public Member Functions | |
| static QString | opCodeToString (OpCode_t opCode) |
| static QString | errorCodeToString (ErrorCode_t errorCode) |
Definition at line 10 of file MAVLinkFTP.h.
Error codes returned in Nak response PayloadHeader.data[0].
Definition at line 65 of file MAVLinkFTP.h.
| enum MavlinkFTP::OpCode_t |
Definition at line 42 of file MAVLinkFTP.h.
|
static |
Definition at line 47 of file MAVLinkFTP.cc.
References kErrEOF, kErrFail, kErrFailErrno, kErrFailFileExists, kErrFailFileNotFound, kErrFailFileProtected, kErrInvalidDataSize, kErrInvalidSession, kErrNone, kErrNoSessionsAvailable, and kErrUnknownCommand.
| MavlinkFTP::MAVPACKED | ( | typedef struct RequestHeader { uint16_t seqNumber;uint8_t session;uint8_t opcode;uint8_t size;uint8_t req_opcode;uint8_t burstComplete;uint8_t paddng;uint32_t offset;} | ) |
This is the fixed length portion of the protocol data. This needs to be packed, because it's typecasted from mavlink_file_transfer_protocol_t.payload, which starts at a 3 byte offset, causing an unaligned access to seq_number and offset
| MavlinkFTP::MAVPACKED | ( | typedef struct Request{ RequestHeader hdr;union { uint8_t data[sizeof(((mavlink_file_transfer_protocol_t *) 0) ->payload) - sizeof(RequestHeader)];uint32_t openFileLength;};} | ) |
|
static |
Definition at line 3 of file MAVLinkFTP.cc.
References kCmdBurstReadFile, kCmdCalcFileCRC32, kCmdCreateDirectory, kCmdCreateFile, kCmdListDirectory, kCmdNone, kCmdOpenFileRO, kCmdOpenFileWO, kCmdReadFile, kCmdRemoveDirectory, kCmdRemoveFile, kCmdRename, kCmdResetSessions, kCmdTerminateSession, kCmdTruncateFile, kCmdWriteFile, kRspAck, and kRspNak.