oln::lrde::ufmt::generic_salembier< I, Greater > Struct Template Reference

Collaboration diagram for oln::lrde::ufmt::generic_salembier< I, Greater >:

Collaboration graph
[legend]
List of all members.

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< valuenode_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 Nbhnbh
mute< I, int >::ret status
number_nodes_t number_nodes
node_at_level_t node_at_level
generic_hqueue_t< value, pointhqueue
value h_min
levels_t levels
Greater level_greater
std::map< pair_t, pair_tfather

Detailed Description

template<class I, class Greater = std::greater< typename mlc::exact< I >::ret::value_type >>
struct oln::lrde::ufmt::generic_salembier< I, Greater >

Definition at line 120 of file generic_salembier.hh.


Member Function Documentation

template<class I, class Greater = std::greater< typename mlc::exact< I >::ret::value_type >>
template<typename Key, typename Data, typename Compare, typename Alloc>
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         }


The documentation for this struct was generated from the following file:
Generated on Tue Feb 20 20:27:49 2007 for Olena by  doxygen 1.5.1