terom@185: terom@185: #include "Logger.hh" terom@185: terom@365: Logger::Logger (std::ostream &stream, enum LogLevel level, const char *module) : terom@365: stream(stream), level(level), module(module) terom@365: { terom@185: const char *l; terom@185: terom@185: switch (level) { terom@185: case FATAL: l = "FATAL"; break; terom@185: case ERROR: l = "ERROR"; break; terom@185: case WARN: l = "WARN"; break; terom@185: case INFO: l = "INFO"; break; terom@185: case DEBUG: l = "DEBUG"; break; terom@185: default: l = "???"; break; terom@185: }; terom@185: terom@365: #ifndef NDEBUG terom@185: stream << l << " [" << module << "] "; terom@365: #endif terom@185: } terom@185: terom@185: Logger::~Logger (void) { terom@365: #ifndef NDEBUG terom@185: stream << std::endl; terom@365: #endif terom@185: } terom@185: terom@185: std::ostream& operator<< (std::ostream &s, CL_NetComputer &c) { terom@185: s << "[" << c.get_address().get_address() << ":" << c.get_address().get_port() << "]"; terom@185: terom@185: return s; terom@185: } terom@185: terom@185: std::ostream& operator<< (std::ostream &s, CL_NetObject_Server &obj) { terom@185: s << "%" << obj.get_obj_id(); terom@185: terom@185: return s; terom@185: } terom@185: terom@185: std::ostream& operator<< (std::ostream &s, CL_NetObject_Client &obj) { terom@185: s << "%" << obj.get_obj_id(); terom@185: terom@185: return s; terom@185: } terom@185: