MAK Data Logger API Documentation for HLA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrApplication.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2024 MAK Technologies, Inc
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrApplication_H_
10 #define lgrApplication_H_
11 
12 #include "lgrApp.h"
13 
14 #include <list>
15 #include <vlutil/vlSmartPointers.h>
16 #include <vlutil/vlString.h>
17 
18 class DtPrinter;
19 
20 struct tagMSG;
21 
22 namespace MAKLogger
23 {
24  class DtLgrAppGuiInterface;
25  class DtLgrAppCommandLine;
26  class DtLgrConsole;
27  class DtLogger;
28  class DtLoggerAppConfigLoader;
30 
31  typedef DtBoost::shared_ptr<DtThreadedLogger> DtThreadedLoggerSP;
32  typedef DtBoost::shared_ptr<DtLgrConsole> DtLgrConsoleSP;
33  typedef DtBoost::shared_ptr<DtLgrAppGuiInterface> DtLgrAppGuiInterfaceSP;
34 
38  {
39  public:
41  virtual ~DtLoggerApplication();
42 
45  virtual void initialize(int argc,char** argv, DtString configFile);
46 
49  virtual DtString getConfigFilename( int argc, char** argv, DtString configFile);
50 
53  virtual void run();
54 
56  DtString language() const;
57 
59  virtual DtLogger& logger();
61  virtual const DtLogger& logger() const;
63 
66  virtual DtLgrAppGuiInterfaceSP gui();
67 
69  virtual DtLgrConsoleSP console();
70 
72  typedef void (*GuiStartupCallback)(DtLgrAppGuiInterfaceSP);
73 
75  virtual void registerGuiStartupCallback(GuiStartupCallback callback);
76 
78  virtual void executeGuiStartupCallbacks();
79 
80  typedef bool (*WinEventFilterFunction)(tagMSG *msg, long *result);
81  static WinEventFilterFunction winEventFilter();
82  static void setWinEventFilter(WinEventFilterFunction function);
83 
86  static void initFPUnit();
87 
88  virtual DtLoggerAppConfigLoader* environmentLoader();
89 
90  protected:
91 
94  void setOutputLog(const DtString& logFilename);
95 
97  virtual void processConfigurationFile(const DtString& configFile);
98 
100  virtual void processCommandLineArguments( int argc, char** argv );
101 
103  virtual void initializeGui();
104 
106  virtual void initializeConsole();
107 
108 
112  virtual void enableLoggerAppPlugins();
113 
120  DtPrinter* myLogFilePrinter;
121 
122  typedef std::list<GuiStartupCallback> GuiStartupCallbackList;
124 
125  static WinEventFilterFunction theCurrentWinEventFunction;
126  };
127 
128 }
129 
130 #endif
DtLgrAppGuiInterfaceSP myGui
Definition: lgrApplication.h:116
DtBoost::shared_ptr< DtThreadedLogger > DtThreadedLoggerSP
Typedef for Shared Pointer to Threaded Logger.
Definition: lgrApplication.h:29
DtLgrConsoleSP myConsole
Definition: lgrApplication.h:115
The logger application class responsible for creating a logger, its gui and its console.
Definition: lgrApplication.h:37
Provides an instance of DtLogger which can be run from a thread.
Definition: threadedLogger.h:25
DtString myLogFileName
Definition: lgrApplication.h:119
The logger application configuration file loader.
Definition: lgrConfigLoader.h:27
std::list< GuiStartupCallback > GuiStartupCallbackList
Definition: lgrApplication.h:122
DtLgrAppCommandLine * myCommandLine
Definition: lgrApplication.h:118
GuiStartupCallbackList myStartupCallbacks
Definition: lgrApplication.h:123
Command line processor.
Definition: lgrAppCommandLine.h:29
DtLoggerAppConfigLoader * myLoader
Definition: lgrApplication.h:117
DtThreadedLoggerSP myLogger
Definition: lgrApplication.h:114
DtBoost::shared_ptr< DtLgrAppGuiInterface > DtLgrAppGuiInterfaceSP
Definition: lgrAppGuiInterface.h:56
Contains IMPORT/EXPORTS for library and the definition of DtLoggerApp class.
DtPrinter * myLogFilePrinter
Definition: lgrApplication.h:120
static WinEventFilterFunction theCurrentWinEventFunction
Definition: lgrApplication.h:125
DtLogger provides the core system structure and controls the execution model for the underlying objec...
Definition: logger.h:35
#define DT_DLL_LGRAPP
Definition: lgrApp.h:20
DtBoost::shared_ptr< DtLgrConsole > DtLgrConsoleSP
Definition: lgrApplication.h:32

Document ID: Generated on Fri May 31 15:45:35 EDT 2024 from SVN revision 266500
Copyright © 2024 MAK Technologies. All Rights Reserved (www.mak.com)