3#include <QtCore/QString>
4#include <QtCore/QLoggingCategory>
16 typedef struct RequestHeader {
22 uint8_t burstComplete;
28 typedef struct Request{
35 uint8_t data[
sizeof(((mavlink_file_transfer_protocol_t*)0)->payload) -
sizeof(RequestHeader)];
38 uint32_t openFileLength;
79 static QString opCodeToString (OpCode_t opCode);
80 static QString errorCodeToString(ErrorCode_t errorCode);
Q_DECLARE_LOGGING_CATEGORY(AndroidSerialLog)
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
@ kErrNoSessionsAvailable
All available Sessions in use.
@ kErrFail
Unknown failure.
@ kErrEOF
Offset past end of file for List and Read commands.
@ kErrUnknownCommand
Unknown command opcode.
@ kErrFailFileExists
File exists already.
@ kErrInvalidDataSize
PayloadHeader.size is invalid.
@ kErrFailErrno
errno sent back in PayloadHeader.data[1]
@ kErrInvalidSession
Session is not currently open.
@ kErrFailFileProtected
File is write protected.
@ kCmdRemoveFile
Remove file at <path>
@ kCmdRename
Rename <path1> to <path2>
@ kCmdWriteFile
Writes <size> bytes to <offset> in <session>
@ kCmdCreateFile
Creates file at <path> for writing, returns <session>
@ kCmdOpenFileRO
Opens file at <path> for reading, returns <session>
@ kCmdRemoveDirectory
Removes Directory at <path>, must be empty.
@ kCmdReadFile
Reads <size> bytes from <offset> in <session>
@ kCmdTruncateFile
Truncate file at <path> to <offset> length.
@ kCmdOpenFileWO
Opens file at <path> for writing, returns <session>
@ kCmdResetSessions
Terminates all open Read sessions.
@ kCmdBurstReadFile
Burst download session file.
@ kCmdCreateDirectory
Creates directory at <path>
@ kCmdCalcFileCRC32
Calculate CRC32 for file at <path>
@ kCmdTerminateSession
Terminates open Read session.
@ kCmdListDirectory
List files in <path> from <offset>