39 #if defined(DigitalSetByAssociativeContainer_RECURSES)
40 #error Recursive header files inclusion detected in DigitalSetByAssociativeContainer.h
41 #else // defined(DigitalSetByAssociativeContainer_RECURSES)
43 #define DigitalSetByAssociativeContainer_RECURSES
45 #if !defined DigitalSetByAssociativeContainer_h
47 #define DigitalSetByAssociativeContainer_h
54 #include "DGtal/base/Common.h"
55 #include "DGtal/base/CowPtr.h"
56 #include "DGtal/base/Clone.h"
57 #include "DGtal/base/Alias.h"
58 #include "DGtal/base/ConstAlias.h"
59 #include "DGtal/kernel/domains/CDomain.h"
60 #include "DGtal/base/CSTLAssociativeContainer.h"
88 template <
typename TDomain,
typename TContainer >
112 typedef typename Container::size_type
Size;
185 template <
typename Po
intInputIterator>
186 void insert( PointInputIterator first, PointInputIterator last );
209 template <
typename Po
intInputIterator>
210 void insertNew( PointInputIterator first, PointInputIterator last );
297 template<
typename TOutputIterator >
374 template <
typename Domain,
typename Container>
383 #include "DGtal/kernel/sets/DigitalSetByAssociativeContainer.ih"
388 #endif // !defined DigitalSetByAssociativeContainer_h
390 #undef DigitalSetByAssociativeContainer_RECURSES
391 #endif // else defined(DigitalSetByAssociativeContainer_RECURSES)
Aim: This class encapsulates its parameter class to indicate that the given parameter is required to ...
DigitalSetByAssociativeContainer< Domain, Container > Self
Self Type.
Domain::Space Space
Type of digital space.
DigitalSetByAssociativeContainer(const DigitalSetByAssociativeContainer &other)
DigitalSetByAssociativeContainer & operator=(const DigitalSetByAssociativeContainer &other)
TDomain Domain
Domain type.
ConstIterator begin() const
Vector lower(const Vector &z, unsigned int k)
void computeComplement(TOutputIterator &ito) const
std::string className() const
TContainer Container
Container type.
bool operator()(const Point &p) const
void insertNew(PointInputIterator first, PointInputIterator last)
ConstIterator find(const Point &p) const
DigitalSetByAssociativeContainer(Clone< Domain > d)
void erase(Iterator first, Iterator last)
void insertNew(const Point &p)
CowPtr< Domain > myDomain
DigitalSetByAssociativeContainer()
Aim: This concept represents a digital domain, i.e. a non mutable subset of points of the given digit...
Domain::Point Point
Type of points in the space.
void computeBoundingBox(Point &lower, Point &upper) const
DGtal is the top-level namespace which contains all DGtal functions and types.
BOOST_CONCEPT_ASSERT((concepts::CSTLAssociativeContainer< TContainer >))
BOOST_STATIC_ASSERT((boost::is_same< typename Container::key_type, Point >::value))
void selfDisplay(std::ostream &out) const
Iterator find(const Point &p)
void insert(const Point &p)
Aim: Defines the concept describing an Associative Container of the STL (https://www....
CowPtr< Domain > domainPointer() const
ConstIterator end() const
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
void insert(PointInputIterator first, PointInputIterator last)
Size erase(const Point &p)
Vector upper(const Vector &z, unsigned int k)
Container::value_type value_type
Value type of the container.
void assignFromComplement(const DigitalSetByAssociativeContainer< Domain, Container > &other_set)
const Domain & domain() const
Container::iterator Iterator
Iterator type of the container.
Container::const_iterator ConstIterator
ConstIterator type of the container;.
BOOST_CONCEPT_ASSERT((concepts::CDomain< TDomain >))
Concept checks.
Container::size_type Size
Size type of the container;.
~DigitalSetByAssociativeContainer()
Aim: A wrapper class around a STL associative container for storing sets of digital points within som...