Go to the documentation of this file.00001 #ifndef _ARDRONE_SDK_H_
00002 #define _ARDRONE_SDK_H_
00003
00004
00005 #ifndef FFMPEG_SUPPORT
00006 #define FFMPEG_SUPPORT
00007 #endif
00008
00009 #ifndef USE_LINUX
00010 #define USE_LINUX
00011 #endif
00012
00013
00014
00015 #if defined __cplusplus
00016 # define __STDC_CONSTANT_MACROS
00017 #endif
00018
00019 #include <stdint.h>
00020
00021 #ifndef UINT64_C
00022 #define UINT64_C(c) (c ## ULL)
00023 #endif
00024
00025 extern "C" {
00026
00027 #include <config.h>
00028
00029 #include <utils/ardrone_gen_ids.h>
00030 #include <ardrone_tool/ardrone_version.h>
00031 #include <ardrone_tool/ardrone_tool.h>
00032 #include <ardrone_tool/ardrone_tool_configuration.h>
00033 #include <ardrone_tool/Com/config_com.h>
00034 #include <ardrone_tool/UI/ardrone_input.h>
00035 #include <ardrone_tool/Video/video_com_stage.h>
00036 #include <ardrone_tool/Control/ardrone_control.h>
00037 #include <ardrone_tool/Navdata/ardrone_navdata_client.h>
00038
00039 #include <ardrone_tool/Video/video_stage.h>
00040 #include <ardrone_tool/Video/video_recorder_pipeline.h>
00041 #include <ardrone_tool/Video/video_stage_latency_estimation.h>
00042
00043 extern video_decoder_config_t vec;
00044 }
00045
00046 #include <ardrone_autonomy/ardrone_driver.h>
00047
00048 #define NB_DRIVER_POST_STAGES 10
00049
00050 extern ARDroneDriver *rosDriver;
00051
00052 extern navdata_unpacked_t *shared_raw_navdata;
00053 extern ros::Time shared_navdata_receive_time;
00054
00055 extern vp_os_mutex_t navdata_lock;
00056 extern vp_os_mutex_t video_lock;
00057 extern vp_os_mutex_t twist_lock;
00058
00059 extern int32_t looprate;
00060 extern bool realtime_navdata;
00061 extern bool realtime_video;
00062
00063 extern int32_t should_exit;
00064
00065 #endif