GimbalLockMonitor.h
1 //-*-C++-*-
2 /***************************************************************************
3  *
4  * Copyright (C) 2007 by Willem van Straten
5  * Licensed under the Academic Free License version 2.1
6  *
7  ***************************************************************************/
8 
9 // psrchive/More/MEAL/MEAL/GimbalLockMonitor.h
10 
11 #ifndef __Pulsar_GimbalLockMonitor_h
12 #define __Pulsar_GimbalLockMonitor_h
13 
14 #include "MEAL/Rotation1.h"
15 
16 namespace MEAL {
17 
19  class GimbalLockMonitor : public Reference::Able {
20 
21  public:
22 
25 
27  void set_yaw (Rotation1*);
28 
30  void set_pitch (Rotation1*);
31 
33  void set_roll (Rotation1*);
34 
36  void set_pitch_limits (double lower, double upper);
37 
39  bool lock_detected ();
40 
41  protected:
42 
45 
48 
51 
54 
55  double lower_pitch_limit, upper_pitch_limit;
56  double lower_yaw_limit, upper_yaw_limit;
57  };
58 
59 }
60 
61 #endif
bool lock_detected()
Return true if gimbal lock is detected.
Definition: GimbalLockMonitor.C:50
Reference::To< Rotation1 > yaw
The yaw rotation.
Definition: GimbalLockMonitor.h:54
Reference::To< Rotation1 > roll
The roll rotation.
Definition: GimbalLockMonitor.h:60
void set_roll(Rotation1 *)
Set the roll rotation.
Definition: GimbalLockMonitor.C:37
Represents a rotation (passive unitary transformation) about a fixed axis.
Definition: Rotation1.h:35
GimbalLockMonitor()
Constructor.
Definition: GimbalLockMonitor.C:13
Namespace in which all modeling and calibration related code is declared.
Definition: ExampleComplex2.h:16
void set_yaw(Rotation1 *)
Set the yaw rotation.
Definition: GimbalLockMonitor.C:25
void set_pitch_limits(double lower, double upper)
Set the limits on the pitch rotation.
Definition: GimbalLockMonitor.C:43
bool gimbal_lock_detected
Flag set when gimbal lock detected.
Definition: GimbalLockMonitor.h:63
void set_pitch(Rotation1 *)
Set the pitch rotation.
Definition: GimbalLockMonitor.C:31
Reference::To< Rotation1 > pitch
The pitch rotation.
Definition: GimbalLockMonitor.h:57

Generated using doxygen 1.8.17