DGtal 1.4.0
Loading...
Searching...
No Matches
DomainPredicate.ih
1/**
2 * This program is free software: you can redistribute it and/or modify
3 * it under the terms of the GNU Lesser General Public License as
4 * published by the Free Software Foundation, either version 3 of the
5 * License, or (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program. If not, see <http://www.gnu.org/licenses/>.
14 *
15 **/
16
17/**
18 * @file DomainPredicate.ih
19 * @author Jacques-Olivier Lachaud (\c jacques-olivier.lachaud@univ-savoie.fr )
20 * Laboratory of Mathematics (CNRS, UMR 5807), University of Savoie, France
21 *
22 * @date 2010/07/10
23 *
24 * Implementation of inline methods defined in DomainPredicate.h
25 *
26 * This file is part of the DGtal library.
27 */
28
29
30//////////////////////////////////////////////////////////////////////////////
31#include <cstdlib>
32//////////////////////////////////////////////////////////////////////////////
33
34///////////////////////////////////////////////////////////////////////////////
35// IMPLEMENTATION of inline methods.
36///////////////////////////////////////////////////////////////////////////////
37
38///////////////////////////////////////////////////////////////////////////////
39// ----------------------- Standard services ------------------------------
40
41//------------------------------------------------------------------------------
42template <typename TDomain>
43inline
44DGtal::functors::DomainPredicate<TDomain>
45::DomainPredicate( ConstAlias<Domain> aDomain )
46 : myDomain( &aDomain )
47{
48}
49//------------------------------------------------------------------------------
50template <typename TDomain>
51inline
52DGtal::functors::DomainPredicate<TDomain>
53::DomainPredicate( const DomainPredicate & other )
54 : myDomain( other.myDomain )
55{
56}
57//------------------------------------------------------------------------------
58template <typename TDomain>
59inline
60DGtal::functors::DomainPredicate<TDomain>&
61DGtal::functors::DomainPredicate<TDomain>
62::operator=( const DomainPredicate & other )
63{
64 if (this != &other)
65 {
66 myDomain = other.myDomain;
67 }
68 return *this;
69}
70
71//------------------------------------------------------------------------------
72template <typename TDomain>
73inline
74const TDomain &
75DGtal::functors::DomainPredicate<TDomain>
76::domain() const
77{
78 return *myDomain;
79}
80//------------------------------------------------------------------------------
81template <typename TDomain>
82inline
83bool
84DGtal::functors::DomainPredicate<TDomain>
85::operator()( const Point & p ) const
86{
87 return myDomain->isInside( p );
88}
89//------------------------------------------------------------------------------
90
91// //
92///////////////////////////////////////////////////////////////////////////////
93
94