00001 #ifndef IFDINTKEY_HH
00002 #define IFDINTKEY_HH
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "ProxyDict/IfdKey.h"
00020 #if !(defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 95)) // BABAR_IOSTREAMS_MIGRATION
00021 #include <iostream>
00022 #else // BABAR_IOSTREAMS_MIGRATION
00023 #include <iostream.h>
00024 #endif // BABAR_IOSTREAMS_MIGRATION
00025 #include <stdlib.h>
00026
00027
00028 class IfdIntKey : public IfdKey {
00029 public:
00030 IfdIntKey( const int i );
00031
00032
00033 virtual int operator==( const IfdKey& k ) const {
00034 return ( intKey == k.getKeyKind() ) && ( intVal == k.intVal );
00035 }
00036
00037 virtual ~IfdIntKey() {}
00038
00039 virtual IfdKey* clone(void) const { return new IfdIntKey( intVal ); }
00040
00041
00042 #if !(defined(__GNUC__) && (__GNUC__ < 3) && (__GNUC_MINOR__ < 95)) // BABAR_IOSTREAMS_MIGRATION
00043 virtual void print( std::ostream &o) const
00044 #else // BABAR_IOSTREAMS_MIGRATION
00045 virtual void print( ostream &o) const
00046 #endif // BABAR_IOSTREAMS_MIGRATION
00047 { o << "IfdIntKey(" << intVal << ")"; }
00048
00049 protected:
00050
00051 private:
00052
00053
00054
00055 IfdIntKey( const IfdIntKey &);
00056 IfdIntKey& operator=( IfdIntKey &);
00057
00058
00059 };
00060
00061
00062 #endif