1 // SALOME Logger : CORBA server managing trace output
3 // Copyright (C) 2003 CEA/DEN, EDF R&D
5 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
7 // File : SALOME_Logger_Server.hxx
8 // Author : Vasily Rusyaev
11 #if !defined SALOME_Logger_Server_include
12 #define SALOME_Logger_Server_include
20 #include <omnithread.h>
24 # if defined LOGGER_EXPORTS
25 # define LOGGER_EXPORT __declspec( dllexport )
27 # define LOGGER_EXPORT __declspec( dllimport )
30 # define LOGGER_EXPORT
34 class LOGGER_EXPORT Logger :
35 public POA_SALOME_Logger::Logger
38 //constructor w/o parameters
39 //all messages will be put into terminal via cout
41 //constructor with parameter, filename is output file
42 //all messages will be put into special file passed as parameter
43 Logger(const char *filename);
45 //put message into one special place for all servers
46 void putMessage(const char* message);
49 //if m_putIntoFile is true all messages will be put into special
50 //otherwise all messages will be put into terminal via cout
52 //ofstream class specialized for disk file output
54 ofstream m_outputFile;
56 std::ofstream m_outputFile;
58 //synchronisation object
59 static omni_mutex myLock;
62 #endif // !defined(SALOME_Logger_Server_include)