LRAUV  revA
Buoyancy.h
Go to the documentation of this file.
1 
12 #ifndef BUOYANCY_H_
13 #define BUOYANCY_H_
14 
15 #include "component/Behavior.h"
16 #include "data/Location.h"
17 
19 
31 class Buoyancy : public Behavior
32 {
33 public:
34 
35  Buoyancy( const Str& prefix, const Module* module );
36 
37  virtual ~Buoyancy();
38 
40  void initialize( void );
41 
43  void run();
44 
47  bool runIfUnsatisfied();
48 
51  bool isSatisfied();
52 
54  void uninitialize( void );
55 
57  static Behavior* CreateBehavior( const Str& prefix, const Module* module );
58 
59 protected:
60 
62  bool calcSatisfied( );
63 
64  // Positon at which to stop buoyancying
66 
67  // Allowable error is buoyancy
69 
70  // Servo ConfigReader
72 
73  // Slate input setting variables
75 
78 
81 
82 private:
83  // Note that the copy constructor below is private and not given a body.
84  // Any attempt to call it will return a compiler error.
85  Buoyancy( const Buoyancy& old ); // disallow copy constructor
86 
87 };
88 
89 #endif /*BUOYANCY_H_*/
ConfigReader * buoyancyDeviationCfgReader_
Definition: Buoyancy.h:71
double positionSetting_
Definition: Buoyancy.h:65
A DataAccessor that reads values from the Slate Contains a default dataValue that must not be NULL...
Definition: UniversalDataReader.h:26
bool runIfUnsatisfied()
Runs and returns false if not in capure radius Otherwise returns true.
Definition: Buoyancy.cpp:59
bool isSatisfied()
Returns true when vehicle has "arrived" within the captureRadius of the waypoint. ...
Definition: Buoyancy.cpp:75
void uninitialize(void)
Uninit function.
Definition: Buoyancy.cpp:81
SettingReader * positionSettingReader_
position setting
Definition: Buoyancy.h:77
Behavior is the abstract base class for components that implement mission behaviors and commands...
Definition: Behavior.h:32
A DataAccessor that writes values to the Slate via its associated DataElement.
Definition: DataWriter.h:27
Contains the Behavior class definition.
UniversalDataReader * positionReader_
Definition: Buoyancy.h:74
void run()
The actual "payload" of the component.
Definition: Buoyancy.cpp:52
virtual ~Buoyancy()
Definition: Buoyancy.cpp:42
Module is the abstract base class for a collection of Component objects that can be contained in a lo...
Definition: Module.h:45
bool calcSatisfied()
return true if the buoyancying time is over
Definition: Buoyancy.cpp:92
double buoyancyDeviation_
Definition: Buoyancy.h:68
Replacement for standard template class string.
Definition: Str.h:12
Definition: ConfigReader.h:13
static Behavior * CreateBehavior(const Str &prefix, const Module *module)
Mission Component factory interface.
Definition: Buoyancy.cpp:87
Reads values from mission settings.
Definition: SettingReader.h:26
DataWriter * positionCmdWriter_
position to VerticalControl
Definition: Buoyancy.h:80
void initialize(void)
Initialize function.
Definition: Buoyancy.cpp:46
Buoyancy(const Str &prefix, const Module *module)
Definition: Buoyancy.cpp:21
Contains the Buoyancy Command.
Definition: Buoyancy.h:31
Contains the Location class definition.