VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
objectConsole.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 #pragma once
11 
12 #include <list>
13 #include <vlutil/vlPrint.h>
15 #include <vlutil/vlFilename.h>
18 
19 class DtVrfObject;
20 class DtOutputStream;
22 class DtPrinter;
23 class DtVrfObjectMessage;
24 class DtSimMessage;
25 
26 DT_DLL_vrfobjcore std::string moduleFromFilename(const std::string& file);
27 
29 
30 #ifndef trUtf8
31 #define trUtf8(_message, _module) DtTranslatableStream(_message, _module)
32 #else
33 #error "trutf8 already defined!"
34 #endif
35 
41 {
42 private:
46  DtObjectConsole(const DtObjectConsole& orig);
47  DtObjectConsole& operator=(const DtObjectConsole& orig);
49 
50 public:
52  virtual ~DtObjectConsole();
53 
56  virtual bool init();
57 
64  virtual void registerMessageCallbacks();
65 
67  virtual void setNotifyLevel(DtNotifyLevelType level);
69  virtual DtNotifyLevelType notifyLevel() const;
70 
75  virtual void printToFile(const DtFilename& filename);
77  virtual void stopPrintingToFile();
78 
81  virtual DtOutputStream& debugStream() const;
82  virtual DtOutputStream& verboseStream() const;
83  virtual DtOutputStream& infoStream() const;
84  virtual DtOutputStream& warnStream() const;
85  virtual DtOutputStream& errorStream() const;
87 
90  virtual void addConsolePrinter(DtPrinter* printer);
91 
98  virtual void addAndManageConsolePrinter(DtPrinter* printer);
99 
102  virtual void removeConsolePrinter(DtPrinter* printer);
103 
104 protected:
107  virtual void addDefaultPrinters();
108 
109  static void logToFileCallback(const DtVrfObjectMessage* msg, void* usr);
110  virtual void processLogToFile(const DtVrfObjectMessage* msg);
111 
112  static void stopLoggingToFileCallback(const DtVrfObjectMessage* msg, void* usr);
113  virtual void processStopLoggingToFile(const DtVrfObjectMessage* msg);
114 
115  static void setNotifyLevelCallback(DtSimMessage* msg, void* usr);
116  virtual void processSetNotifyLevel(DtSimMessage* msg);
117 
118 protected:
119 
133  std::list<DtPrinter*> myManagedPrinterList;
138  DtFilePrinter* myFilePrinter;
139 };

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)