bartonnackmanifcheck.hh

Go to the documentation of this file.
00001 
00010 //- Dune includes 
00011 #include <dune/common/exceptions.hh>
00012 
00013 #ifndef CHECK_INTERFACE_IMPLEMENTATION  
00014 #define CHECK_INTERFACE_IMPLEMENTATION(dummy) 
00015 #ifndef NDEBUG 
00016 // only do checking if DUNE_DEVEL_MODE is defined aswell 
00017 #ifdef DUNE_DEVEL_MODE
00018 #undef CHECK_INTERFACE_IMPLEMENTATION
00019 #define CHECK_INTERFACE_IMPLEMENTATION(__interface_method_to_call__) \
00020   {\
00021     static bool call = false; \
00022     if( call == true ) \
00023       DUNE_THROW(NotImplemented,"Interface method not implemented!");\
00024     call = true; \
00025     (__interface_method_to_call__); \
00026     call = false; \
00027   }
00028 #endif
00029 #endif
00030 #endif
00031 
00037 #ifndef CHECK_AND_CALL_INTERFACE_IMPLEMENTATION 
00038 #define CHECK_AND_CALL_INTERFACE_IMPLEMENTATION(__interface_method_to_call__) \
00039   (__interface_method_to_call__)
00040 #ifndef NDEBUG 
00041 // only do checking if DUNE_DEVEL_MODE is defined aswell 
00042 #ifdef DUNE_DEVEL_MODE
00043 #undef CHECK_AND_CALL_INTERFACE_IMPLEMENTATION
00044 #define CHECK_AND_CALL_INTERFACE_IMPLEMENTATION(__interface_method_to_call__) \
00045   CHECK_INTERFACE_IMPLEMENTATION(__interface_method_to_call__)
00046 #endif
00047 #endif
00048 #endif
00049 

Generated on 9 Apr 2008 with Doxygen (ver 1.5.2) [logfile].