00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #define INCLXX_IN_GEANT4_MODE 1
00034
00035 #include "globals.hh"
00036
00037 #include "G4INCLLogger.hh"
00038
00039 namespace G4INCL {
00040 #ifdef INCL_DEBUG_LOG
00041 std::string typeToString(const MessageType t) {
00042 if(t == ErrorMsg)
00043 return std::string("Error");
00044 else if(t == FatalMsg)
00045 return std::string ("Fatal");
00046 else if(t == WarningMsg)
00047 return std::string("Warning");
00048 else if(t == DebugMsg)
00049 return std::string("Debug");
00050 else if(t == InfoMsg)
00051 return std::string("");
00052 else if(t == DataBlockMsg)
00053 return std::string("DataBlock");
00054 else
00055 return std::string("Unknown");
00056 }
00057
00058 void LoggerSlave::logMessage(const MessageType type, const std::string &fileName, const G4int lineNumber, std::string const &s) const {
00059 if(type!=InfoMsg) {
00060 (*logStream) << typeToString(type) << " [" <<
00061 fileName.substr(fileName.find_last_of("/")+1) <<
00062 ":" << lineNumber << "] ";
00063 }
00064 (*logStream) << s;
00065 }
00066
00067 void LoggerSlave::logDataBlock(const std::string &block, const std::string &fileName, const G4int lineNumber) const {
00068 (*logStream) << typeToString(DataBlockMsg) << " [" <<
00069 fileName.substr(fileName.find_last_of("/")+1) <<
00070 ":" << lineNumber << "] " << std::endl
00071 << "BEGINDATA"
00072 << block
00073 << "ENDDATA" << std::endl;
00074 }
00075
00076 #endif
00077
00078 LoggerSlave * Logger::theLoggerSlave = NULL;
00079 }