DJI Onboard SDK  4.0
waypoint_v2_sample.hpp
Go to the documentation of this file.
1 
32 #ifndef DJIOSDK_WAYPOINT_V2_SAMPLE_HPP
33 #define DJIOSDK_WAYPOINT_V2_SAMPLE_HPP
34 
35 // System Includes
36 #include <chrono>
37 #include <cmath>
38 #include <condition_variable>
39 #include <mutex>
40 #include <vector>
41 // DJI OSDK includes
42 #include <dji_vehicle.hpp>
43 #include "dji_waypoint_v2.hpp"
44 // Helpers
45 #include <dji_linux_helpers.hpp>
46 const int DEFAULT_PACKAGE_INDEX = 0;
47 class WaypointV2MissionSample {
48 
49 public:
50  WaypointV2MissionSample(Vehicle *vehicle);
51 
52  ~WaypointV2MissionSample();
53 
54 public:
61  ErrorCode::ErrorCodeType runWaypointV2Mission();
62 
68  ErrorCode::ErrorCodeType initMissionSetting(int timeout);
69 
75  ErrorCode::ErrorCodeType uploadWaypointMission(int timeout);
76 
82  ErrorCode::ErrorCodeType uploadWapointActions(int timeout);
83 
89  ErrorCode::ErrorCodeType downloadWaypointMission(std::vector<WaypointV2> &mission,int timeout);
90 
96  ErrorCode::ErrorCodeType startWaypointMission(int timeout);
97 
103  ErrorCode::ErrorCodeType stopWaypointMission(int timeout);
104 
110  ErrorCode::ErrorCodeType pauseWaypointMission(int timeout);
111 
117  ErrorCode::ErrorCodeType resumeWaypointMission(int timeout);
118 
123  void getGlobalCruiseSpeed(int timeout);
124 
131  void setGlobalCruiseSpeed(const GlobalCruiseSpeed &cruiseSpeed, int timeout);
132 
138  bool setUpSubscription(int timeout);
139 
145  bool teardownSubscription(const int pkgIndex,
146  int timeout);
151 // void setWaypointV2Defaults(DJIWaypointV2& waypointV2);
152 
153  void setWaypointV2Defaults(WaypointV2& waypointV2);
160 // std::vector<DJIWaypointV2> generatePolygonWaypoints(float32_t radius, uint16_t polygonNum);
161 
162  std::vector<WaypointV2> generatePolygonWaypoints(float32_t radius, uint16_t polygonNum);
163 
164 
170  std::vector<DJIWaypointV2Action> generateWaypointActions(uint16_t actionNum);
171 
172 private:
173  Vehicle *vehiclePtr;
174  std::vector<DJIWaypointV2Action> actions;
175 };
176 
177 #endif // DJIOSDK_WAYPOINT_V2_SAMPLE_HPP
int64_t ErrorCodeType
Unified error type.
Definition: dji_error.hpp:144
Definition: dji_mission_type.hpp:1014
Implementation of GPS Waypoint Missions for DJI OSDK.
Vehicle API for DJI onboardSDK library.
float32_t GlobalCruiseSpeed
Definition: dji_mission_type.hpp:704