Logger.inl

Go to the documentation of this file.
00001 #ifndef ORO_CORELIB_LOGGER_INL
00002 #define ORO_CORELIB_LOGGER_INL
00003 
00012 namespace RTT
00013 {
00014 
00015     template< class T>
00016     Logger& Logger::operator<<( T t ) {
00017 #ifndef OROBLD_DISABLE_LOGGING
00018         if ( !mayLog() )
00019             return *this;
00020         std::stringstream tmp;
00021         tmp << t;
00022         return this->operator<<( tmp.str() );
00023 #endif
00024         return *this;
00025     }
00026 
00027 #ifdef OROBLD_DISABLE_LOGGING
00028 
00029     // instance will be actually null
00030     inline Logger& Logger::log() {
00031         return *_instance;
00032     }
00033 
00034     inline Logger& Logger::log(LogLevel) {
00035         return *_instance;
00036     }
00037 
00038     inline bool Logger::mayLog() const {
00039         return false;
00040     }
00041 
00042     inline void Logger::mayLogStdOut(bool ) {
00043     }
00044 
00045     inline void Logger::mayLogFile(bool ) {
00046     }
00047 
00048     inline void Logger::allowRealTime() {
00049     }
00050 
00051     inline void Logger::disallowRealTime() {
00052     }
00053 
00054     inline std::ostream&
00055     Logger::nl(std::ostream& __os)
00056     {
00057         return __os;
00058     }
00059 
00060     inline std::ostream&
00061     Logger::endl(std::ostream& __os)
00062     {
00063         return __os;
00064     }
00065 
00066     inline std::ostream&
00067     Logger::flush(std::ostream& __os)
00068     {
00069         return __os;
00070     }
00071 
00072 
00073     inline Logger::In::In(const std::string&)
00074     {
00075     }
00076 
00077     inline Logger::In::~In()
00078     {
00079     }
00080 
00081     inline Logger& Logger::in(const std::string&)
00082     {
00083         return *this;
00084     }
00085 
00086     inline Logger& Logger::out(const std::string&)
00087     {
00088         return *this;
00089     }
00090 
00091     inline std::string Logger::getLogModule() const {
00092         return "";
00093     }
00094 
00095     inline void Logger::startup() {
00096     }
00097 
00098     inline void Logger::shutdown() {
00099     }
00100 
00101     inline std::string Logger::getLogLine() {
00102         return "";
00103     }
00104 
00105     inline void Logger::setStdStream( std::ostream& ) {
00106     }
00107 
00108     inline Logger& Logger::operator<<( const std::string& ) {
00109         return *this;
00110     }
00111 
00112     inline Logger& Logger::operator<<(LogLevel) {
00113         return *this;
00114     }
00115 
00116     inline Logger& Logger::operator<<(std::ostream& (*pf)(std::ostream&))
00117     {
00118         return *this;
00119     }
00120 
00121     inline void Logger::logflush() {
00122      }
00123 
00124     inline void Logger::lognl() {
00125      }
00126 
00127     inline void Logger::logendl() {
00128      }
00129 
00130     inline void Logger::setLogLevel( LogLevel ) {
00131     }
00132 
00133     inline Logger::LogLevel Logger::getLogLevel() const {
00134         return Never;
00135     }
00136 #endif
00137 
00138 }
00139 
00140 #endif
Generated on Thu Dec 23 13:22:38 2010 for Orocos Real-Time Toolkit by  doxygen 1.6.3