31#if defined(GreedySegmentation_RECURSES)
32#error Recursive header files inclusion detected in GreedySegmentation.h
35#define GreedySegmentation_RECURSES
37#if !defined GreedySegmentation_h
39#define GreedySegmentation_h
44#include "DGtal/base/Common.h"
45#include "DGtal/geometry/curves/SegmentComputerUtils.h"
46#include "DGtal/geometry/curves/CForwardSegmentComputer.h"
148 template <
typename TSegmentComputer>
233 const TSegmentComputer& aSegmentComputer,
511 template <
typename SegmentComputer>
520#include "DGtal/geometry/curves/GreedySegmentation.ih"
527#undef GreedySegmentation_RECURSES
std::vector< Z2i::Point >::const_iterator ConstIterator
Aim: Specific iterator to visit all the segments of a greedy segmentation.
bool doesIntersectNext(const ConstIterator &it)
bool doesIntersectNext(const ConstIterator &it, const ConstIterator &itb, const ConstIterator &ite)
bool intersectPrevious() const
SegmentComputer::ConstIterator ConstIterator
bool intersectNext() const
bool doesIntersectNext(const ConstIterator &it, const ConstIterator &itb, const ConstIterator &ite, IteratorType)
SegmentComputer mySegmentComputer
bool doesIntersectNext(const ConstIterator &it, const ConstIterator &itb, const ConstIterator &ite, CirculatorType)
SegmentComputerIterator & operator++()
const ConstIterator begin() const
SegmentComputer get() const
bool operator==(const SegmentComputerIterator &aOther) const
bool operator!=(const SegmentComputerIterator &aOther) const
void longestSegment(const ConstIterator &it)
~SegmentComputerIterator()
SegmentComputerIterator(const SegmentComputerIterator &aOther)
const SegmentComputer * operator->() const
SegmentComputerIterator(const GreedySegmentation< TSegmentComputer > *aSegmentation, const TSegmentComputer &aSegmentComputer, const bool &aFlag)
const ConstIterator end() const
const GreedySegmentation< TSegmentComputer > * myS
const SegmentComputer & operator*() const
bool myFlagIntersectPrevious
SegmentComputerIterator & operator=(const SegmentComputerIterator &aOther)
GreedySegmentation::SegmentComputer SegmentComputer
Aim: Computes the greedy segmentation of a range given by a pair of ConstIterators....
GreedySegmentation::SegmentComputerIterator end() const
GreedySegmentation & operator=(const GreedySegmentation &other)
void setMode(const std::string &aMode)
TSegmentComputer SegmentComputer
GreedySegmentation(const ConstIterator &itb, const ConstIterator &ite, const SegmentComputer &aSegmentComputer)
BOOST_CONCEPT_ASSERT((concepts::CForwardSegmentComputer< TSegmentComputer >))
void selfDisplay(std::ostream &out) const
SegmentComputer mySegmentComputer
GreedySegmentation::SegmentComputerIterator begin() const
void setSubRange(const ConstIterator &itb, const ConstIterator &ite)
SegmentComputer::ConstIterator ConstIterator
GreedySegmentation(const GreedySegmentation &other)
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
Aim: Defines the concept describing a forward segment computer. Like any model of CIncrementalSegment...