Public Types | |
enum | { not_analyzed = INT_MAX - 2, in_the_queue = INT_MAX - 1 } |
typedef mlc::exact< I >::ret::point_type | point |
typedef mlc::exact< I >::ret::value_type | value |
typedef oln::lrde::ufmt::internal::neighborhood< I >::ret | Nbh |
typedef mlc::exact< Nbh >::ret::iter_type | niter |
typedef std::map< value, unsigned > | number_nodes_t |
typedef std::set< value > | node_at_level_t |
typedef std::set< value, Greater > | levels_t |
typedef levels_t::const_iterator | level_iterator |
typedef std::pair< unsigned, value > | pair_t |
Public Member Functions | |
generic_salembier (const abstract::image< I > &f, const typename oln::lrde::ufmt::internal::neighborhood< I >::ret &nbh) | |
void | go () |
void | init () |
level_iterator | flood (const value &h) |
unsigned | n_level_roots () const |
template<typename Key, typename Data, typename Compare, typename Alloc> | |
Data | get (const std::map< Key, Data, Compare, Alloc > &map, const Key &key, const Data &default_val) const |
Public Attributes | |
const I & | f |
const Nbh & | nbh |
mute< I, int >::ret | status |
number_nodes_t | number_nodes |
node_at_level_t | node_at_level |
generic_hqueue_t< value, point > | hqueue |
value | h_min |
levels_t | levels |
Greater | level_greater |
std::map< pair_t, pair_t > | father |
Definition at line 120 of file generic_salembier.hh.
Data oln::lrde::ufmt::generic_salembier< I, Greater >::get | ( | const std::map< Key, Data, Compare, Alloc > & | map, | |
const Key & | key, | |||
const Data & | default_val | |||
) | const [inline] |
An alternative to std::map::operator[] handling non existent keys (using default_val).
Definition at line 292 of file generic_salembier.hh.
Referenced by oln::lrde::ufmt::generic_salembier< I, Greater >::flood().
00294 { 00295 typename std::map<Key, Data, Compare, Alloc>::const_iterator n = 00296 map.find(key); 00297 if (n != map.end()) 00298 return n->second; 00299 else 00300 return default_val; 00301 }