MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
timeComponent.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2016 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #pragma once
10 #include <lgrGui/lgrGui.h>
11 
12 #include <QtCore/QObject>
13 #include <lgrUtil/absoluteTime.h>
14 
15 namespace MAKLogger
16 {
17 
21  {
22  Q_OBJECT
23 
24  public:
25 
27 
28  virtual ~DtTimeComponent();
29 
30  private:
31 
34 
36  DtTimeComponent& operator=(const DtTimeComponent&);
37 
38  public:
39 
41 
42  virtual DtAbsoluteTime firstTime() const;
43 
45  virtual DtAbsoluteTime lastTime() const;
46 
48  virtual DtAbsoluteTime startTime() const;
49 
51  virtual DtAbsoluteTime stopTime() const;
52 
54  virtual DtAbsoluteTime currentTime() const;
55 
57  virtual DtRelativeTime length() const;
58 
60  virtual DtRelativeTime duration() const;
61 
65  bool followModeEnabled() const;
66 
68  virtual DtAbsoluteTime followFirstTime() const;
69 
71  virtual DtAbsoluteTime followLastTime() const;
72 
74  virtual DtAbsoluteTime followHoldTime() const;
75 
77  virtual DtRelativeTime followTime() const;
78 
80 
83  virtual DtAbsoluteTime timeOfPercentFirstLast(float percent) const;
84 
87  virtual float percentOfTimeFirstLast(const DtAbsoluteTime& time) const;
88 
91  virtual DtAbsoluteTime timeOfPercentStartStop(float percent) const;
92 
95  virtual float percentOfTimeStartStop(const DtAbsoluteTime& time) const;
96 
97  public:
98 
100  static void listenOnly(const DtTimeComponent*,const DtTimeComponent*);
104  static void disconnect(const DtTimeComponent*,const DtTimeComponent*);
105 
107  //
108  //First time is the first valid time, all other times must be >=
109  //Last time is the last valid time all other times must be <=
110  //Start time is the starting time, stop and current time must be >=
111  //Stop time is the stopping time, start and current time must be <=
112  //Current time is the current time, it is between start and stop time.
113 
114  public slots:
115 
116  virtual void setStartStopTimes(const DtAbsoluteTime&,const DtAbsoluteTime&, bool emitSignal=true);
117 
118  virtual void setFirstTime (const DtAbsoluteTime&);
119  virtual void setLastTime (const DtAbsoluteTime&);
120  virtual void setCurrentTime(const DtAbsoluteTime&);
121 
122  virtual void emitSetCurrentTime(const DtAbsoluteTime&);
123  virtual void emitStartStopTimesChanged(const DtAbsoluteTime&,const DtAbsoluteTime&);
124 
126  virtual void setFollowMode(bool mode);
127 
129  virtual void setFollowHoldTime(const DtAbsoluteTime& holdTime);
130 
132  virtual void setFollowTime(DtRelativeTime interval);
133 
134  signals:
135 
137  void firstTimeChanged (const DtAbsoluteTime&);
138  void lastTimeChanged (const DtAbsoluteTime&);
139  void startStopTimesChanged(const DtAbsoluteTime&,const DtAbsoluteTime&);
140  void currentTimeChanged(const DtAbsoluteTime&);
141 
142  void modifyCurrentTime(const DtAbsoluteTime&);
143  void modifyStartStopTime(const DtAbsoluteTime&,const DtAbsoluteTime&);
144 
146  void followModeChanged(bool);
147 
148  protected:
149 
153 
158 
162 
163  };
164 }
165 

Document ID: Generated on Thu Apr 7 20:50:59 EDT 2016 from SVN revision 163818
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)