DGtal
0.6.devel
|
#include <CIncrementalSegmentComputer.h>
Public Member Functions | |
BOOST_CONCEPT_USAGE (CIncrementalSegmentComputer) | |
![]() | |
BOOST_STATIC_ASSERT ((boost::is_same< T, Self >::value)) | |
BOOST_CONCEPT_USAGE (CSegmentFactory) | |
![]() | |
BOOST_CONCEPT_USAGE (CSegment) |
Private Attributes | |
T | myX |
T::ConstIterator | myI |
bool | myB |
Additional Inherited Members | |
![]() | |
typedef T::Self | Self |
typedef T::Reverse | Reverse |
![]() | |
typedef T::ConstIterator | ConstIterator |
Aim: Defines the concept describing an incremental segment computer, ie. a model of CSegmentFactory that can, in addition, incrementally check whether or not an implicit predicate P is true. In other words, it can control its own extension from a range of one element (in the direction that is relative to the underlying iterator) so that an implicit predicate P remains true.
Description of concept 'CIncrementalSegmentComputer'
the same as CSegmentFactory
Name | Expression | Type requirements | Return type | Precondition | Semantics | Postcondition | Complexity |
initialization | x.init(i) | void | set a segment to i | x is valid and P is true | O(1) | ||
extension test | x.isExtendableForward() | bool | x is valid and P is true | checks whether x can be extended to x.end() or not | x is valid and P is true | ||
extension | x.extendForward() | bool | x is valid and P is true | check whether x can be extended to x.end() or not, only extend if true | x is valid and P is true |
Models of CIncrementalSegmentComputer garantee that for each iterator it from s.begin() to s.end(), the range [s.begin(), it) is a segment such that P is true.
T | the type that should be a model of CIncrementalSegmentComputer. |
Definition at line 145 of file CIncrementalSegmentComputer.h.
|
inline |
Definition at line 151 of file CIncrementalSegmentComputer.h.
References DGtal::CIncrementalSegmentComputer< T >::myB, DGtal::CIncrementalSegmentComputer< T >::myI, DGtal::CIncrementalSegmentComputer< T >::myX, and DGtal::ConceptUtils::sameType().
|
private |
Reimplemented in DGtal::CBidirectionalSegmentComputer< T >, DGtal::CDynamicSegmentComputer< T >, and DGtal::CDynamicBidirectionalSegmentComputer< T >.
Definition at line 163 of file CIncrementalSegmentComputer.h.
Referenced by DGtal::CIncrementalSegmentComputer< T >::BOOST_CONCEPT_USAGE().
|
private |
Definition at line 162 of file CIncrementalSegmentComputer.h.
Referenced by DGtal::CIncrementalSegmentComputer< T >::BOOST_CONCEPT_USAGE().
|
private |
Reimplemented from DGtal::CSegment< T >.
Reimplemented in DGtal::CBidirectionalSegmentComputer< T >, DGtal::CDynamicSegmentComputer< T >, and DGtal::CDynamicBidirectionalSegmentComputer< T >.
Definition at line 161 of file CIncrementalSegmentComputer.h.
Referenced by DGtal::CIncrementalSegmentComputer< T >::BOOST_CONCEPT_USAGE().