18 #ifndef __itkOneWayEquivalencyTable_h
19 #define __itkOneWayEquivalencyTable_h
23 #include "itksys/hash_map.hxx"
58 typedef itksys::hash_map<
unsigned long,
unsigned long,
77 bool Add(
unsigned long a,
unsigned long b);
82 unsigned long Lookup(
const unsigned long a)
const
86 if ( result ==
m_HashMap.end() ) {
return a; }
87 else {
return ( *result ).second; }
101 else {
return true; }
134 virtual void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
HashTableType::iterator Iterator
unsigned long Lookup(const unsigned long a) const
SmartPointer< Self > Pointer
HashTableType::const_iterator ConstIterator
OneWayEquivalencyTable Self
bool IsEntry(const unsigned long a) const
Hash table to manage integral label equivalencies that are order dependent.
itksys::hash_map< unsigned long, unsigned long, itksys::hash< unsigned long > > HashTableType
virtual ~OneWayEquivalencyTable()
virtual void PrintSelf(std::ostream &os, Indent indent) const ITK_OVERRIDE
void Erase(const unsigned long a)
SmartPointer< const Self > ConstPointer
bool Add(unsigned long a, unsigned long b)
Control indentation during Print() invocation.
void operator=(const Self &)
unsigned long RecursiveLookup(const unsigned long a) const
HashTableType::value_type ValueType
Base class for all data objects in ITK.