source: flair-src/trunk/lib/FlairMeta/src/Ugv.h @ 377

Last change on this file since 377 was 377, checked in by Sanahuja Guillaume, 10 months ago

ugv update

  • Property svn:eol-style set to native
File size: 1.4 KB
RevLine 
[377]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/*!
6 * \file Ugv.h
7 * \brief Base class to construct sensors/actuators depending on Ugv type
8 * \author Guillaume Sanahuja, Copyright Heudiasyc UMR UTC/CNRS 7253
9 * \date 2020/12/16
10 * \version 3.4
11 */
12
13#ifndef UGV_H
14#define UGV_H
15
16#include <Object.h>
17
18namespace flair {
19        namespace actuator {
20                class UgvControls;
21        }
22}
23
24namespace flair {
25namespace meta {
26
27/*! \class Ugv
28*
29* \brief Base class to construct sensors/actuators depending on Ugv type.
30* The Object is created with
31*  the FrameworkManager as parent. FrameworkManager must be created before.
32* Only one instance of this class is allowed by program.
33*/
34class Ugv : public core::Object {
35public:
36
37  Ugv(std::string name);
38  ~Ugv();
39
40  virtual void StartSensors(void)=0;
41  void UseDefaultPlot(void);
42  actuator::UgvControls *GetUgvControls(void) const;
43        virtual std::string GetDefaultVrpnAddress(void) const{return "127.0.0.1:3883";}
44  virtual bool isReadyToGo(void) const { return true;}
45  virtual std::string GetType(void) const=0;
46
47protected:
48  void SetUgvControls(const actuator::UgvControls *controls);
49 
50
51private:
52  actuator::UgvControls *controls;
53};
54
55/*!
56* \brief get Ugv
57*
58* \return the Ugv
59*/
60Ugv *GetUgv(void);
61
62} // end namespace meta
63} // end namespace flair
64#endif // UGV_H
Note: See TracBrowser for help on using the repository browser.