NEST  2.6.0,not_revisioned_source_dir@0
Public Member Functions | List of all members
nest::Mask< D > Class Template Referenceabstract

Abstract base class for masks with given dimension. More...

#include <mask.h>

Inheritance diagram for nest::Mask< D >:
nest::AbstractMask nest::AllMask< D > nest::AnchoredMask< D > nest::BallMask< D > nest::BoxMask< D > nest::ConverseMask< D > nest::DifferenceMask< D > nest::IntersectionMask< D > nest::UnionMask< D >

Public Member Functions

 ~Mask ()
 
virtual bool inside (const Position< D > &) const =0
 
bool inside (const std::vector< double_t > &pt) const
 
virtual bool inside (const Box< D > &) const =0
 
virtual bool outside (const Box< D > &b) const
 
virtual Box< D > get_bbox () const =0
 The whole mask is inside (i.e., false everywhere outside) the bounding box. More...
 
virtual Maskclone () const =0
 Clone method. More...
 
AbstractMaskintersect_mask (const AbstractMask &other) const
 Create the intersection of this mask with another. More...
 
AbstractMaskunion_mask (const AbstractMask &other) const
 Create the union of this mask with another. More...
 
AbstractMaskminus_mask (const AbstractMask &other) const
 Create the difference of this mask and another. More...
 
- Public Member Functions inherited from nest::AbstractMask
virtual ~AbstractMask ()
 Virtual destructor. More...
 
virtual DictionaryDatum get_dict () const
 

Detailed Description

template<int D>
class nest::Mask< D >

Abstract base class for masks with given dimension.

Constructor & Destructor Documentation

template<int D>
nest::Mask< D >::~Mask ( )
inline

Member Function Documentation

template<int D>
virtual Mask* nest::Mask< D >::clone ( ) const
pure virtual
template<int D>
virtual Box<D> nest::Mask< D >::get_bbox ( ) const
pure virtual
template<int D>
virtual bool nest::Mask< D >::inside ( const Position< D > &  ) const
pure virtual
template<int D>
bool nest::Mask< D >::inside ( const std::vector< double_t > &  pt) const
virtual
Returns
true if point is inside mask.

Implements nest::AbstractMask.

template<int D>
virtual bool nest::Mask< D >::inside ( const Box< D > &  ) const
pure virtual
Returns
true if the whole box is inside the mask.
Note
a return value of false is not a guarantee that the whole box is not inside the mask.

Implemented in nest::AnchoredMask< D >, nest::ConverseMask< D >, nest::DifferenceMask< D >, nest::UnionMask< D >, nest::IntersectionMask< D >, nest::BallMask< D >, nest::BoxMask< D >, and nest::AllMask< D >.

template<int D>
AbstractMask * nest::Mask< D >::intersect_mask ( const AbstractMask< D > &  other) const
virtual

Create the intersection of this mask with another.

Masks must have the same dimension

Returns
a new dynamically allocated mask.

Implements nest::AbstractMask.

References nest::names::other.

template<int D>
AbstractMask * nest::Mask< D >::minus_mask ( const AbstractMask< D > &  other) const
virtual

Create the difference of this mask and another.

Masks must have the same dimension.

Returns
a new dynamically allocated mask.

Implements nest::AbstractMask.

References nest::names::other.

template<int D>
bool nest::Mask< D >::outside ( const Box< D > &  b) const
virtual
Returns
true if the whole box is outside the mask.
Note
a return value of false is not a guarantee that the whole box is not outside the mask.

Reimplemented in nest::AnchoredMask< D >, nest::ConverseMask< D >, nest::DifferenceMask< D >, nest::UnionMask< D >, nest::IntersectionMask< D >, nest::BallMask< D >, nest::BoxMask< D >, and nest::AllMask< D >.

References nest::Box< D >::lower_left, and nest::Box< D >::upper_right.

template<int D>
AbstractMask * nest::Mask< D >::union_mask ( const AbstractMask< D > &  other) const
virtual

Create the union of this mask with another.

Masks must have the same dimension.

Returns
a new dynamically allocated mask.

Implements nest::AbstractMask.

References nest::names::other.


The documentation for this class was generated from the following files: