Anaphe Home Page Reference Documentation

Main Page     Namespaces     Classes     Source Code    

Extra_Bin_Indexes.h

Go to the documentation of this file.
00001 #ifndef _EXTRA_BIN_INDEXES_H_
00002 #define _EXTRA_BIN_INDEXES_H_ 1
00003 
00004 
00005 typedef enum { H_UNDERFLOW = 0, H_IN_RANGE = 1, H_OVERFLOW = 2 } Extra_Index;
00006         // Index used to access an extra bin.
00007 
00008 
00009 #define EXTRA_VALUE( e )        (e)
00010         // Value associated with the Extra_Index `e'
00011         // e.g. EXTRA_VALUE( H_UNDERFLOW ) --> 0
00012 
00013 #define EXTRA_INDEX(i)  ((Extra_Index)i)
00014         // Extra_Index associated with value `i'.
00015         // e.g. EXTRA_INDEX( 0 ) --> H_UNDERFLOW
00016         // No warning is issued when i > H_OVERFLOW ... The check is done by
00017         // the caller.
00018 
00019 #define EXTRA_EQUAL( e1, e2 )   ( EXTRA_VALUE(e1) == EXTRA_VALUE(e2) )
00020 #define EXTRA_VALID( e )        ( EXTRA_VALUE(e) <= EXTRA_VALUE(H_OVERFLOW) )
00021 
00022 #define EXTRA_IN_RANGE( e )     EXTRA_EQUAL( e, H_IN_RANGE )
00023 
00024 
00025 #endif // _EXTRA_BIN_INDEXES_H_
00026 


Anaphe documentation generated by Doxygen (www.doxygen.org)