MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrAnnotationManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrAnnotationManager_H_
10 #define lgrAnnotationManager_H_
11 
12 #include <lgrAnnotations/lgrAnn.h>
13 
14 #include <list>
15 #include <set>
16 
17 class DtEnvironment;
18 
19 namespace MAKLogger
20 {
21  class DtAbsoluteTime;
22  class DtLgrAnnotation;
23  class DtLgrAnnotationSlots;
24  class DtLgrAnnotationBaseView;
25  class DtRelativeTime;
26 
29  {
30  public:
31  typedef std::list<DtLgrAnnotation*> AnnotationList;
32 
34 
35  virtual ~DtLgrAnnotationManager();
36 
37  private:
42  public:
43 
45  virtual void setAllowChanges(bool allowed);
46 
48  virtual bool allowChanges() const;
49 
52  virtual void addAnnotation(DtLgrAnnotation* annotation);
53 
55  virtual void removeAnnotation(DtLgrAnnotation* annotation);
56 
58  virtual void clearAnnotations();
59 
62  virtual void deleteTimeRange(const DtAbsoluteTime& start,
63  const DtAbsoluteTime& end);
64 
66  virtual void moveTimeRange(const DtAbsoluteTime& start,
67  const DtAbsoluteTime& end, const DtRelativeTime& offset);
68 
70  virtual void annotationsStartingAt(DtAbsoluteTime,AnnotationList& output);
71 
73  virtual void annotationsEndingAt(DtAbsoluteTime,AnnotationList& output);
74 
77  virtual void annotationsDuring(DtAbsoluteTime,AnnotationList& output);
78 
80  virtual const AnnotationList& annotations();
81 
84  virtual void annotationChanged(DtLgrAnnotation* annotation);
85 
87  virtual void annotationsChanged();
88 
90  virtual bool isAnnotationStateSaved() const;
91 
93  virtual void saveAnnotationState(DtEnvironment environment);
94 
101  virtual void setAnnotationState(const DtEnvironment environment,
102  bool clear = true);
103 
106  virtual void addView(DtLgrAnnotationBaseView* view);
107 
110  virtual void removeView(DtLgrAnnotationBaseView* view);
111 
113  virtual void annotationsSaved();
114 
116  virtual bool autoLoad() const;
117 
120  virtual void setAutoLoad( bool autoLoad );
121 
123  virtual bool empty() const;
124 
125  protected:
126 
129 
135 
137 
139  typedef std::set<DtLgrAnnotationBaseView*> ViewSet;
140 
143 
145 
146  };
147 }
148 
149 #endif
Defines INPORT/EXPORT macros for lgrGui library.
Relative Time, an elapsed duration of time, no implied measurement, could be seconds/cycles or ticks ...
Definition: absoluteTime.h:28
Defines the abstract interface for annotation views.
Definition: lgrAnnotationBaseView.h:21
bool myUnlockedState
Definition: lgrAnnotationManager.h:136
Base annotation class defines interface for all annotations.
Definition: lgrAnnotation.h:26
std::list< DtLgrAnnotation * > AnnotationList
Definition: lgrAnnotationManager.h:31
bool myAnnotationStateSaved
Stores whether the state is considered &#39;saved&#39;.
Definition: lgrAnnotationManager.h:134
Manages annotations.
Definition: lgrAnnotationManager.h:28
bool myAutoLoadFlag
Definition: lgrAnnotationManager.h:144
ViewSet myViews
A list of views the model will notify of changes.
Definition: lgrAnnotationManager.h:142
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22
AnnotationList myAnnotations
The managers list of annotations.
Definition: lgrAnnotationManager.h:128
std::set< DtLgrAnnotationBaseView * > ViewSet
List type of views.
Definition: lgrAnnotationManager.h:139
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
#define DT_DLL_LGRANN
Definition: lgrAnn.h:19

Document ID: Generated on Thu Dec 18 15:35:09 EST 2025 from SVN revision 282494
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)