source: flair-src/tags/latest/tools/Controller/Mavlink/src/GuiGcs.h@ 198

Last change on this file since 198 was 137, checked in by Sanahuja Guillaume, 7 years ago

singleton manager

File size: 1.3 KB
Line 
1// %flair:license{
2// This file is part of the Flair framework distributed under the
3// CECILL-C License, Version 1.0.
4// %flair:license}
5// created: 2016/09/02
6// filename: GuiGcs.h
7//
8// authors: Thomas Fuhrmann
9// Milan Erdelj
10// Copyright Heudiasyc UMR UTC/CNRS 7253
11//
12// version: $Id: $
13//
14// purpose: Implementation of GuiInterface, using sockets
15//
16//
17/*********************************************************************/
18
19#ifndef MAVPLANNER_GUI_GCS_H
20#define MAVPLANNER_GUI_GCS_H
21
22#include <string>
23#include <array>
24
25#include "GuiInterface.h"
26
27#include "MavlinkUDP.h"
28
29#define INTER_COMMAND_PAUSE 10000 // us
30#define PERIOD_SECOND 1000000 // us
31
32namespace flair {
33namespace core {
34 class Socket;
35}
36}
37
38class GuiGcs : public GuiInterface {
39public:
40
41 GuiGcs(std::string name,
42 std::string &outputAddress, int outputPort);
43 ~GuiGcs();
44
45protected:
46
47 virtual void MissionStart();
48 virtual void MissionStop();
49 virtual void MissionPause();
50 virtual void MissionSend();
51
52 uint16_t MavCommandGet(const std::string& command) const;
53
54private:
55 std::string outputAddress;
56 int outputPort;
57
58 MavlinkUDP* mavCom;
59
60 bool missionPauseEnabled;
61
62 void Initialize();
63 void ParametersParse(const std::string& parametersString, std::array<float, 6>& parametersFloat);
64};
65
66#endif // MAVPLANNER_GUI_GCS_H
Note: See TracBrowser for help on using the repository browser.