00001 //---------------------------------------------------------------------------- 00002 /** @file Benzene.hpp 00003 */ 00004 //---------------------------------------------------------------------------- 00005 00006 #ifndef BENZENE_HPP 00007 #define BENZENE_HPP 00008 00009 //---------------------------------------------------------------------------- 00010 00011 /** Suppresses compiler warnings about unused variables. 00012 00013 This is not the best solution, since it's possible to call this 00014 function on a variable and then use it later on. The macro defined 00015 below is better in that it prevents this from happening, but 00016 confuses doxygen. We use this one for now as a compromise. 00017 */ 00018 template <typename T> 00019 inline void UNUSED(const T&) 00020 { 00021 } 00022 00023 #if 0 00024 00025 /** Marks a parameter as unusable and suppresses compiler the warning 00026 that it is unused. 00027 00028 CURRENTLY UNUSED since mangling names in function definitions 00029 confuses doxygen. 00030 */ 00031 #ifdef UNUSED 00032 #elif defined(__GNUC__) 00033 # define UNUSED(x) UNUSED_ ## x __attribute__((unused)) 00034 #elif defined(__LCLINT__) 00035 # define UNUSED(x) /*@unused@*/ x 00036 #else 00037 # define UNUSED(x) x 00038 #endif 00039 00040 #endif 00041 00042 //---------------------------------------------------------------------------- 00043 00044 /** Begins the benzene namespace. 00045 Should be used in all header files, immediately after the include 00046 directives. 00047 */ 00048 #define _BEGIN_BENZENE_NAMESPACE_ namespace benzene { 00049 00050 /** Ends the benzene namespace. 00051 Should be used at the end of every header file. 00052 */ 00053 #define _END_BENZENE_NAMESPACE_ } 00054 00055 //---------------------------------------------------------------------------- 00056 00057 #endif // BENZENE_HPP