MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrSystemInterface.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef lgrSystemInterface_H_
11 #define lgrSystemInterface_H_
12 
13 #include <lgrCore/lgrCore.h>
14 #include <lgrCore/lgrInterface.h>
16 #include <lgrUtil/signalSlot.h>
17 #include <lgrUtil/threadSafe.h>
18 
19 #include <vlutil/vlTime.h>
20 
21 #include <memory>
22 
23 namespace MAKLogger
24 {
25  class DtLgrSystemCommandFactory;
26  class DtLgrMessageOutputListener;
27 
32  {
33  public:
34 
36 
39 
40 
41  virtual ~DtLgrSystemInterface();
42 
43  private:
45  DtLgrSystemInterface(const DtLgrSystemInterface&);
47  DtLgrSystemInterface& operator=(const DtLgrSystemInterface&);
48  public:
49 
51  virtual void issueTextCommand(const DtString& commandString) const;
52 
54  virtual void cancelLongOperation() const;
55 
57  virtual void deleteFile(const DtString& filename) const;
58 
60  virtual void setNotifyLevel(int vlLevel,int lgrLevel) const;
61 
63  virtual void shutdown() const;
64 
66  virtual bool timeToShutdown() const;
67 
69  virtual const DtString& operationName() const;
70 
72  virtual const DtString& operationMessage() const;
73 
75  virtual int operationProgress() const;
76 
78  virtual bool operationInterruptible() const;
79 
81  virtual bool wasOperationCanceled() const;
82 
84  virtual void installOutputListener(
85  std::auto_ptr<DtLgrMessageOutputListener> listener) const;
86 
88  DtValueSignal<DtString> messageSignal;
89 
91  DtValueSignal<DtString> consoleMessageSignal;
92 
95  DtValueSignal<bool> operationSignal;
96 
98  DtValueSignal<bool> shutdownSignal;
99 
101  DtValueSignal<DtString> operationMessageSignal;
102 
104  DtValueSignal<int> operationProgressSignal;
105 
107  DtValueSignal<bool> performanceWarningSignal;
108 
110  bool basicGuiFlag() const;
111 
113  void setGuiConfigFilename(DtString guiConfigFilename);
114 
116  DtString guiConfigFilename() const;
117 
119  void setPerformanceWarning(bool behind, DtTime amountBehind);
120 
122  bool isPerformanceWarningEnabled() const;
123 
125  DtTime tickOverheadTime() const;
126 
127  protected:
128  void connectResponseHandler(DtLgrCommandId id,
129  void (DtLgrSystemInterface::* function)(DtResponse));
130 
131  void messageReceived(DtResponse);
132  void consoleMessageReceived(DtResponse);
133  void requestShutdown(DtResponse);
134 
135  void basicGuiFlagSet(DtResponse);
136 
137  void longOperationStarted(DtResponse);
138  void longOperationFinished(DtResponse);
139  void longOperationUpdated(DtResponse);
140 
141  void setGuiConfigFilename(DtResponse);
142  void performanceWarningReceived(DtResponse);
143 
144  DtThreadSafe<bool>* myCancelFlag;
145  DtString myMessage;
146  DtString myConsoleMessage;
147 
148  DtString myOperationName;
149  DtString myOperationMessage;
150  bool myOperationRunningFlag;
151  int myOperationProgress;
152  bool myOperationInterruptible;
153  bool myOperationCanceledFlag;
154 
155  bool myTimeToShutdown;
156  bool myBasicGuiFlag;
157  bool myPerformanceWarning;
158  DtString myGuiConfigFilename;
159  DtTime myTickOverheadTime;
160  };
161 
162 }
163 
164 #endif

Document ID: Generated on Thu Jul 23 15:05:27 EDT 2020 from SVN revision 215371
Copyright © 2020 MAK Technologies. All Rights Reserved (www.mak.com)