CARMA C++
DriveMgrThread.h
Go to the documentation of this file.
1 
15 #ifndef CARMA_ANTENNA_BIMA_DRIVEMGRTHREAD_H
16 #define CARMA_ANTENNA_BIMA_DRIVEMGRTHREAD_H
17 
18 #include <vector>
19 
20 // System includes
21 #include <string>
22 #include <unistd.h>
23 
24 // CARMA includes
25 #include "carma/util/Program.h"
26 #include "log4cpp/Category.hh"
27 #include "carma/util/IPQreader.h"
28 #include "carma/services/Table.h"
32 
33 namespace carma
34 {
35  namespace antenna
36  {
37  namespace bima
38  {
39  class DriveMgrThread
40  {
41 
42  public:
43  DriveMgrThread( Configuration &config, Drives &drives );
44 
45  static void thread( DriveMgrThread &This );
46  void run();
47  double getAzOffsetRadians();
48  double getElOffsetRadians();
49 
50  bool isOk();
51 
52  private:
53  std::string _name;
54  Drives &_drives;
55  Configuration &_config;
56  static bool _ok;
57 
58  int _azNewV, _azOldV;
59  int _elNewV, _elOldV;
60  double _azRampDownMod, _elRampDownMod;
61  double _azTarget, _elTarget;
62  double _azOffset, _elOffset;
63  double _azMountOffset, _elMountOffset;
64  double _azApertureOffset, _elApertureOffset;
65  double _lastAzOffsetRads, _lastElOffsetRads;
66  double _lastObsFreq;
67  std::string _lastCUEEwhat;
68  time_t _cueeThrottle;
69  DriveCommand::CommandType _command;
70 
71  log4cpp::Category &_logger;
72 
74 
75  }; // class DriveMgrThread
76  } // namespace bima
77  } // namespace antenna
78 } // namespace carma
79 
80 #endif // CARMA_ANTENNA_BIMA_DRIVEMGRTHREAD_H
Class definition for DriveCommand on the BIMA antennas.
Common table functions.
Class definition for Stepper Motors for BIMA systems.