dji_type.hpp File Reference

Data type and Data Structure definitions for use throughout DJI OSDK. More...

#include <cstdio>
#include <stdint.h>
Include dependency graph for dji_type.hpp:

Go to the source code of this file.

Classes

struct  DJI::OSDK::OpenHeader
 The Header struct is meant to handle the open protocol header. More...
 
struct  DJI::OSDK::VirtualRCSetting
 Virtual RC Settings (supported only on Matrice 100) More...
 
struct  DJI::OSDK::VirtualRCData
 Virtual RC data (supported only on Matrice 100) More...
 

Namespaces

 DJI
 
 DJI::OSDK
 

Macros

#define __UNUSED
 Define the UNUSED macro to suppress compiler warnings about unused arguments.
 
#define __DELETE(x)   delete x
 

Typedefs

typedef void * DJI::OSDK::UserData
 This is used as the datatype for all data arguments in callbacks.
 
typedef uint64_t DJI::OSDK::time_ms
 
typedef uint64_t DJI::OSDK::time_us
 
typedef float DJI::OSDK::float32_t
 
typedef double DJI::OSDK::float64_t
 
typedef struct DJI::OSDK::OpenHeader DJI::OSDK::OpenHeader
 The Header struct is meant to handle the open protocol header.
 
typedef struct DJI::OSDK::Command DJI::OSDK::Command
 
typedef struct DJI::OSDK::MMU_Tab DJI::OSDK::MMU_Tab
 
typedef struct DJI::OSDK::CMDSession DJI::OSDK::CMDSession
 
typedef struct DJI::OSDK::ACKSession DJI::OSDK::ACKSession
 
typedef struct DJI::OSDK::DataBuryPack DJI::OSDK::DataBuryPack
 
typedef struct DJI::OSDK::HeartBeatPack DJI::OSDK::HeartBeatPack
 
typedef struct DJI::OSDK::VirtualRCSetting DJI::OSDK::VirtualRCSetting
 Virtual RC Settings (supported only on Matrice 100)
 
typedef struct DJI::OSDK::VirtualRCData DJI::OSDK::VirtualRCData
 Virtual RC data (supported only on Matrice 100)
 

Enumerations

enum  OSDK_HARDWARE_TYPE {
  UNKNOWN_HARDWARE_TYPE = 0,
  ARMV7_HARDWARE_TYPE = 1,
  ARMV8_HARDWARE_TYPE = 2,
  x86_HARDWARE_TYPE = 3,
  STM32_HARDWARE_TYPE = 4
}
 
enum  OSDK_OPERATOR_TYPE {
  UNKNOWN_OPERATOR_TYPE = 0,
  LINUX_OPERATOR_TYPE = 1,
  RTOS_OPERATOR_TYPE = 2,
  ROS_OPERATOR_TYPE = 3
}
 
enum  DJI_CAMERA_TAKE_PHOTO_TYPE {
  DJI_CAMERA_TAKE_PHOTO_TYPE_STOP = 0,
  DJI_CAMERA_TAKE_PHOTO_TYPE_NORMAL = 1,
  DJI_CAMERA_TAKE_PHOTO_TYPE_HDR = 2,
  DJI_CAMERA_TAKE_PHOTO_TYPE_BOKEH = 3,
  DJI_CAMERA_TAKE_PHOTO_TYPE_BURST = 4,
  DJI_CAMERA_TAKE_PHOTO_TYPE_AEB = 5,
  DJI_CAMERA_TAKE_PHOTO_TYPE_TIME_LAPSE = 6,
  DJI_CAMERA_TAKE_PHOTO_TYPE_PANO_APP = 7,
  DJI_CAMERA_TAKE_PHOTO_TYPE_TRACKING = 8,
  DJI_CAMERA_TAKE_PHOTO_TYPE_RAW_BURST = 9,
  DJI_CAMERA_TAKE_PHOTO_TYPE_EHDR = 10
}
 
enum  DJI_CAMERA_TAKE_PHOTO_PROFILE {
  DJI_CAMERA_MODE_PROFILE_PHOTO_NORMAL = 5,
  DJI_CAMERA_MODE_PROFILE_PHOTO_INTERVAL = 8,
  DJI_CAMERA_MODE_PROFILE_PHOTO_REGIONAL_SR = 22
}
 
enum  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER {
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_AUTO = 0,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_AUTO_HIGH_SENSE = 1,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_50 = 2,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_100 = 3,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_200 = 4,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_400 = 5,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_800 = 6,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_1600 = 7,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_3200 = 8,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_6400 = 9,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_12800 = 10,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_25600 = 11,
  DJI::OSDK::DJI_CAMERA_ISO_PARAMETER_FIXED = 255
}
 
enum  DJI_CAMERA_RECORDING_TYPE {
  DJI_CAMERA_RECORDING_TYPE_COMMON = 0,
  DJI_CAMERA_RECORDING_TYPE_DELAY = 1,
  DJI_CAMERA_RECORDING_TYPE_SLOW_MOTION = 2,
  DJI_CAMERA_RECORDING_TYPE_QUICK_MOVIE = 3,
  DJI_CAMERA_RECORDING_TYPE_TIMELAPSE_STATIONARY = 4,
  DJI_CAMERA_RECORDING_TYPE_TIMELAPSE_MOTION = 5,
  DJI_CAMERA_RECORDING_TYPE_TIMELAPSE_HYPER = 6,
  DJI_CAMERA_RECORDING_TYPE_FAST_MOTION = 7,
  DJI_CAMERA_RECORDING_TYPE_EMERGENCY_VIDEO = 8,
  DJI_CAMERA_RECORDING_TYPE_HYPERLAPSE = 9,
  DJI_CAMERA_RECORDING_TYPE_MARK_VIDEO = 10
}
 
enum  DJI_CAMERA_RECORDING_CONTROL {
  DJI_CAMERA_RECORDING_CONTROL_STOP = 0,
  DJI_CAMERA_RECORDING_CONTROL_BEGIN = 1,
  DJI_CAMERA_RECORDING_CONTROL_PAUSE = 2,
  DJI_CAMERA_RECORDING_CONTROL_RESUME = 3
}
 

Variables

char DJI::OSDK::buffer []
 
const size_t DJI::OSDK::SESSION_TABLE_NUM = 32
 
const size_t DJI::OSDK::CALLBACK_LIST_NUM = 10
 
const size_t DJI::OSDK::MAX_INCOMING_DATA_SIZE = 300
 
const size_t DJI::OSDK::MAX_ACK_SIZE = 107
 
static const uint8_t DJI::OSDK::CAMERA_PAIR_NUM = 5
 
static const uint8_t DJI::OSDK::IMAGE_TYPE_NUM = 10
 
const uint8_t DJI::OSDK::MAX_OSDK_VERSION_SIZE = 16
 
const uint8_t DJI::OSDK::MAX_SEND_DATA_BURY_PKG_COUNT = 5
 

Detailed Description

Data type and Data Structure definitions for use throughout DJI OSDK.

Version
4.0.0
Date
April 2017
Attention
Most broadcast data definitions in this file have been deprecated. See dji_topics.hpp for updated definitions.

@Copyright (c) 2016-2017 DJI

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.