DGtal  0.9.4beta
Public Types | Public Member Functions | Private Attributes
DGtal::concepts::CSegment< T > Struct Template Reference

#include <DGtal/geometry/curves/CSegment.h>

Inheritance diagram for DGtal::concepts::CSegment< T >:
[legend]
Collaboration diagram for DGtal::concepts::CSegment< T >:
[legend]

Public Types

typedef T::ConstIterator ConstIterator
 

Public Member Functions

 BOOST_CONCEPT_USAGE (CSegment)
 

Private Attributes

myX
 
ConstIterator it
 

Detailed Description

template<typename T>
struct DGtal::concepts::CSegment< T >

Aim: Defines the concept describing a segment, ie. a valid and not empty range.

Description of concept 'CSegment'

Refinement of boost::DefaultConstructible<T>, boost::CopyConstructible<T>, boost::Assignable<T>, boost::EqualityComparable<T>

Associated types :

Notation

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
begin method x.begin() ConstIteratorprovides an iterator on the first element of the segmentO(1)
end method x.end() ConstIteratorpast-the-end value O(1)

Invariants

The range [x.begin(),x.end()) is valid (x.end() is reachable from x.begin()) and not empty (x.begin() != x.end()).

Models

Notes

A class of segments \( \Sigma_P \) is a set of segments such that for each segment of the set, a given predicate \( P \) is true: \( \forall s \in \Sigma_P, P(s) = \textrm{true} \).

Segment computers, which refines CSegment, are segment that can control their own extension so that a given predicate remains true.

Template Parameters
Tthe type that should be a model of CSegment.

Definition at line 101 of file CSegment.h.

Member Typedef Documentation

template<typename T >
typedef T::ConstIterator DGtal::concepts::CSegment< T >::ConstIterator

Definition at line 106 of file CSegment.h.

Member Function Documentation

template<typename T >
DGtal::concepts::CSegment< T >::BOOST_CONCEPT_USAGE ( CSegment< T >  )
inline

Field Documentation

template<typename T >
ConstIterator DGtal::concepts::CSegment< T >::it
private

Definition at line 119 of file CSegment.h.

Referenced by DGtal::concepts::CSegment< T >::BOOST_CONCEPT_USAGE().

template<typename T >
T DGtal::concepts::CSegment< T >::myX
private

Definition at line 118 of file CSegment.h.

Referenced by DGtal::concepts::CSegment< T >::BOOST_CONCEPT_USAGE().


The documentation for this struct was generated from the following file: