Main Page | Modules | Class Hierarchy | Class List | File List | Class Members | Related Pages

rlog-prec99.h

00001 /***************************************************************************** 00002 * Author: Valient Gough <vgough@pobox.com> 00003 * 00004 ***************************************************************************** 00005 * Copyright (c) 2002-2004, Valient Gough 00006 * 00007 * This library is free software; you can distribute it and/or modify it under 00008 * the terms of the GNU Lesser General Public License (LGPL), as published by 00009 * the Free Software Foundation; either version 2.1 of the License, or (at your 00010 * option) any later version. 00011 * 00012 * This library is distributed in the hope that it will be useful, but WITHOUT 00013 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00014 * FITNESS FOR A PARTICULAR PURPOSE. See the LGPL in the file COPYING for more 00015 * details. 00016 * 00017 */ 00018 00019 #define _rMessageDef(ID, COMPONENT) \ 00020 static rlog::PublishLoc ID ={&rlog::RLog_Register, 0, STR(COMPONENT), \ 00021 __FILE__, __FUNCTION__, __LINE__, 0}; 00022 00023 00024 #if HAVE_PRINTF_FP || !HAVE_PRINTF_ATTR 00025 # define _rMessageCall(ID, CHANNEL, ARGS...) \ 00026 if(unlikely(ID.publish!=0)) (*ID.publish)( &ID, CHANNEL, ##ARGS ); 00027 #else 00028 # define _rMessageCall(ID, CHANNEL, ARGS...) \ 00029 if(unlikely(ID.publish!=0)) \ 00030 { \ 00031 (*ID.publish)( &ID, CHANNEL, ##ARGS ); \ 00032 rlog::__checkArgs( 0, ##ARGS ); \ 00033 } 00034 #endif 00035 00036 00037 00038 #define _rMessage(ID, CHANNEL, ARGS... ) \ 00039 do { _rMessageDef(ID, RLOG_COMPONENT) \ 00040 _rMessageCall(ID, CHANNEL, ##ARGS ) } while(0) 00041 00042 00043 #define rDebug(ARGS...) \ 00044 _rMessage( LOGID, rlog::_RLDebugChannel, ##ARGS ) 00045 00046 #define rInfo(ARGS...) \ 00047 _rMessage( LOGID, rlog::_RLInfoChannel, ##ARGS ) 00048 00049 #define rWarning(ARGS...) \ 00050 _rMessage( LOGID, rlog::_RLWarningChannel, ##ARGS ) 00051 00052 #define rError(ARGS...) \ 00053 _rMessage( LOGID, rlog::_RLErrorChannel, ##ARGS ) 00054 00055 #define rLog(channel, ARGS...) \ 00056 _rMessage( LOGID, channel, ##ARGS ) 00057 00058

Generated on Wed Dec 8 22:52:02 2004 for rlog by doxygen 1.3.8