3 #ifndef GAUDIALG_GAUDIHISTOID_H
4 #define GAUDIALG_GAUDIHISTOID_H 1
62 ID (
const char*
id ) ;
66 inline bool numeric ()
const {
return -1 != m_nID ; }
68 inline bool literal ()
const {
return !m_aID.empty() ; }
70 inline bool undefined ()
const {
return !numeric() && !literal(); }
86 hash () !=
id.hash () ?
false :
87 numeric () &&
id.numeric () ?
id.numericID () == numericID () :
88 literal () &&
id.literal () ?
id.literalID () == literalID () :
89 idAsString () ==
id.idAsString() ;
92 inline bool operator!=(
const ID&
id )
const {
return ! ( *
this == id ) ; }
102 numeric () &&
id.numeric() ? numericID() <
id.numericID() :
103 literal () &&
id.literal() ? literalID() <
id.literalID() :
104 idAsString () <
id.idAsString() ;
117 inline size_t hash ()
const {
return m_hash ; }
119 inline size_t __hash__ ()
const {
return hash () ; }
137 {
return id.fillStream ( str ) ; }
153 #endif // GAUDIALG_GAUDIHISTOID_H