$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::p_if< S, F > Class Template Reference

#include <mln/core/site_set/p_if.hh>

Public Member Functions

 p_if (const S &s, const F &f)
 p_if ()
bool has (const psite &p) const
bool is_empty () const
bool is_valid () const
std::size_t memory_size () const
const S & overset () const
bool pred (const psite &p) const
const F & predicate () const

Protected Attributes

f_
s_

Public Types

typedef p_if_piter_< typename
S::bkd_piter, S, F > 
bkd_piter
typedef Site_Set< void > category
typedef S::element element
typedef p_if< S, F > exact_t
typedef p_if_piter_< typename
S::fwd_piter, S, F > 
fwd_piter
typedef fwd_piter piter
typedef S::psite psite
typedef subject< S::psite >::ret site

Related Functions

(Note that these are not member functions.)

template<typename S , typename F >
p_if< S, F > operator| (const Site_Set< S > &s, const Function_v2b< F > &f)

Detailed Description

template<typename S, typename F>
class mln::p_if< S, F >

Site set restricted w.r.t.

a predicate.

Parameter S is a site set type; parameter F is a function from point to Boolean.

Definition at line 86 of file p_if.hh.

Constructor & Destructor Documentation

template<typename S, typename F>
mln::p_if< S, F >::p_if ( const S &  s,
const F &  f 
)

Constructor with a site set s and a predicate f.

template<typename S, typename F>
mln::p_if< S, F >::p_if ( )

Constructor without argument.

Member Function Documentation

template<typename S, typename F>
bool mln::p_if< S, F >::has ( const psite p) const

Test if p belongs to the subset.

bool mln::internal::site_set_base_< S::psite , p_if< S, F > >::is_empty ( ) const
inherited

Test if the site set is empty.

This final method dispatches to is_empty_ whose default implementation relies on the 'nsites' method.

template<typename S, typename F>
bool mln::p_if< S, F >::is_valid ( ) const

Test if this site set is valid.

template<typename S, typename F>
std::size_t mln::p_if< S, F >::memory_size ( ) const

Return the size of this site set in memory.

template<typename S, typename F>
const S& mln::p_if< S, F >::overset ( ) const

Give the primary overset.

template<typename S, typename F>
bool mln::p_if< S, F >::pred ( const psite p) const

Test predicate on point site p.

template<typename S, typename F>
const F& mln::p_if< S, F >::predicate ( ) const

Give the predicate function.

Friends And Related Function Documentation

template<typename S , typename F >
p_if< S, F > operator| ( const Site_Set< S > &  s,
const Function_v2b< F > &  f 
)
related

Restrict a site set s to points that verify f.

Parameters
[in]sA site set.
[in]fA function from point to Boolean.
Returns
A subset of points.

Member Data Documentation

template<typename S, typename F>
F mln::p_if< S, F >::f_
protected

Definition at line 139 of file p_if.hh.

template<typename S, typename F>
S mln::p_if< S, F >::s_
protected

Definition at line 138 of file p_if.hh.

Member Typedef Documentation

template<typename S, typename F>
typedef p_if_piter_<typename S ::bkd_piter, S, F> mln::p_if< S, F >::bkd_piter

Backward Site_Iterator associated type.

Definition at line 103 of file p_if.hh.

typedef Site_Set<void> mln::Site_Set< p_if< S, F > >::category
inherited

Definition at line 74 of file core/concept/site_set.hh.

template<typename S, typename F>
typedef S ::element mln::p_if< S, F >::element

Element associated type.

Definition at line 93 of file p_if.hh.

typedef p_if< S, F > mln::Object< p_if< S, F > >::exact_t
inherited

Definition at line 105 of file object.hh.

template<typename S, typename F>
typedef p_if_piter_<typename S ::fwd_piter, S, F> mln::p_if< S, F >::fwd_piter

Forward Site_Iterator associated type.

Definition at line 100 of file p_if.hh.

template<typename S, typename F>
typedef fwd_piter mln::p_if< S, F >::piter

Site_Iterator associated type.

Definition at line 106 of file p_if.hh.

template<typename S, typename F>
typedef S ::psite mln::p_if< S, F >::psite

Psite associated type.

Definition at line 97 of file p_if.hh.

typedef subject<S::psite >::ret mln::internal::site_set_base_< S::psite , p_if< S, F > >::site
inherited

Site associated type.

Definition at line 58 of file site_set_base.hh.