DGtal 2.0.0
Loading...
Searching...
No Matches
MyImage< T, N > Class Template Reference

[includes] More...

Inheritance diagram for MyImage< T, N >:
[legend]

Public Types

typedef MyImage< T, N > Self
typedef DGtal::IteratorCompletionTraits< Self >::Iterator Iterator
typedef DGtal::IteratorCompletionTraits< Self >::ConstIterator ConstIterator
typedef T Value
typedef DGtal::SpaceND< N > Space
typedef DGtal::HyperRectDomain< SpaceDomain
typedef Space::Point Point
typedef DGtal::Linearizer< Domain, DGtal::ColMajorStorageLinearizer
 Linearization of the points.
Public Types inherited from DGtal::IteratorCompletion< MyImage< T, N > >
typedef IteratorCompletionTraits< MyImage< T, N > >::Iterator Iterator
 Mutable iterator type.
typedef IteratorCompletionTraits< MyImage< T, N > >::ConstIterator ConstIterator
 Constant iterator type.
typedef IteratorCompletionTraits< MyImage< T, N > >::DistanceFunctor DistanceFunctor
 Type of the functor calculating the distance between iterators.
typedef boost::reverse_iterator< IteratorReverseIterator
 Mutable reverse iterator type.
typedef boost::reverse_iterator< ConstIteratorConstReverseIterator
 Constant reverse iterator type.
typedef SimpleRandomAccessRangeFromPoint< ConstIterator, Iterator, DistanceFunctorRange
 Mutable range type.
typedef SimpleRandomAccessConstRangeFromPoint< ConstIterator, DistanceFunctorConstRange
 Constant range type.
typedef std::ptrdiff_t Difference
 Type of the distance between two iterators.

Public Member Functions

 MyImage (Domain const &aDomain=Domain())
 ~MyImage ()
Value operator() (Point const &aPoint) const
 [MyImageHeader]
Value getValue (Point const &aPoint) const
void setValue (Point const &aPoint, Value const &aValue)
Domain const & domain () const
Selfoperator= (Self const &other)
Iterator begin ()
 [CImageBasicInterface]
ConstIterator begin () const
Iterator end ()
ConstIterator end () const
Public Member Functions inherited from DGtal::IteratorCompletion< MyImage< T, N > >
ReverseIterator rbegin ()
ConstReverseIterator crbegin () const
ReverseIterator rend ()
ConstReverseIterator crend () const
Range range ()
ConstRange constRange () const

Private Attributes

Domain myDomain
 [BasicIteratorInterface]
T * myData

Additional Inherited Members

Protected Member Functions inherited from DGtal::IteratorCompletion< MyImage< T, N > >
 ~IteratorCompletion ()
 Protected destructor to avoid memory leak.

Detailed Description

template<typename T, DGtal::Dimension N>
class MyImage< T, N >

[includes]

[includes] [MyImageHeader]

Definition at line 48 of file exampleIteratorCompletion.cpp.

Member Typedef Documentation

◆ ConstIterator

◆ Domain

template<typename T, DGtal::Dimension N>
typedef DGtal::HyperRectDomain<Space> MyImage< T, N >::Domain

Definition at line 60 of file exampleIteratorCompletion.cpp.

◆ Iterator

template<typename T, DGtal::Dimension N>
typedef DGtal::IteratorCompletionTraits<Self>::Iterator MyImage< T, N >::Iterator

Definition at line 55 of file exampleIteratorCompletion.cpp.

◆ Linearizer

Linearization of the points.

Definition at line 62 of file exampleIteratorCompletion.cpp.

◆ Point

template<typename T, DGtal::Dimension N>
typedef Space::Point MyImage< T, N >::Point

Definition at line 61 of file exampleIteratorCompletion.cpp.

◆ Self

template<typename T, DGtal::Dimension N>
typedef MyImage<T, N> MyImage< T, N >::Self

Definition at line 54 of file exampleIteratorCompletion.cpp.

◆ Space

template<typename T, DGtal::Dimension N>
typedef DGtal::SpaceND<N> MyImage< T, N >::Space

Definition at line 59 of file exampleIteratorCompletion.cpp.

◆ Value

template<typename T, DGtal::Dimension N>
typedef T MyImage< T, N >::Value

Definition at line 58 of file exampleIteratorCompletion.cpp.

Constructor & Destructor Documentation

◆ MyImage()

template<typename T, DGtal::Dimension N>
MyImage< T, N >::MyImage ( Domain const & aDomain = Domain())
inline

Definition at line 65 of file exampleIteratorCompletion.cpp.

66 : myDomain(aDomain), myData( new T[ myDomain.size() ] )
67 {}
Domain myDomain
[BasicIteratorInterface]

References myData, and myDomain.

◆ ~MyImage()

template<typename T, DGtal::Dimension N>
MyImage< T, N >::~MyImage ( )
inline

Definition at line 70 of file exampleIteratorCompletion.cpp.

71 {
72 delete[] myData;
73 }

References myData.

Member Function Documentation

◆ begin() [1/2]

template<typename T, DGtal::Dimension N>
Iterator MyImage< T, N >::begin ( )
inline

[CImageBasicInterface]

[BasicIteratorInterface]

Definition at line 122 of file exampleIteratorCompletion.cpp.

123 {
124 return myData;
125 }

References myData.

Referenced by operator=().

◆ begin() [2/2]

template<typename T, DGtal::Dimension N>
ConstIterator MyImage< T, N >::begin ( ) const
inline

Definition at line 128 of file exampleIteratorCompletion.cpp.

129 {
130 return myData;
131 }

References myData.

◆ domain()

template<typename T, DGtal::Dimension N>
Domain const & MyImage< T, N >::domain ( ) const
inline

Definition at line 98 of file exampleIteratorCompletion.cpp.

99 {
100 return myDomain;
101 }

References myDomain.

Referenced by operator=().

◆ end() [1/2]

template<typename T, DGtal::Dimension N>
Iterator MyImage< T, N >::end ( )
inline

Definition at line 134 of file exampleIteratorCompletion.cpp.

135 {
136 return myData + myDomain.size();
137 }

References myData, and myDomain.

Referenced by operator=().

◆ end() [2/2]

template<typename T, DGtal::Dimension N>
ConstIterator MyImage< T, N >::end ( ) const
inline

Definition at line 140 of file exampleIteratorCompletion.cpp.

141 {
142 return myData + myDomain.size();
143 }

References myData, and myDomain.

◆ getValue()

template<typename T, DGtal::Dimension N>
Value MyImage< T, N >::getValue ( Point const & aPoint) const
inline

Definition at line 86 of file exampleIteratorCompletion.cpp.

87 {
88 return operator()(aPoint);
89 }
Value operator()(Point const &aPoint) const
[MyImageHeader]

References aPoint, and operator()().

◆ operator()()

template<typename T, DGtal::Dimension N>
Value MyImage< T, N >::operator() ( Point const & aPoint) const
inline

[MyImageHeader]

[CImageBasicInterface]

Definition at line 80 of file exampleIteratorCompletion.cpp.

81 {
83 }

References aPoint, myData, and myDomain.

Referenced by getValue().

◆ operator=()

template<typename T, DGtal::Dimension N>
Self & MyImage< T, N >::operator= ( Self const & other)
inline

Definition at line 104 of file exampleIteratorCompletion.cpp.

105 {
106 if ( this != &other )
107 {
109 delete[] myData;
110 myData = new Value[ myDomain.size() ];
111 std::copy( other.begin(), other.end(), begin() );
112 }
113
114 return *this;
115 }
Iterator begin()
[CImageBasicInterface]
Domain const & domain() const

References begin(), domain(), end(), myData, and myDomain.

◆ setValue()

template<typename T, DGtal::Dimension N>
void MyImage< T, N >::setValue ( Point const & aPoint,
Value const & aValue )
inline

Definition at line 92 of file exampleIteratorCompletion.cpp.

References aPoint, myData, and myDomain.

Referenced by testImageCopyShort().

Field Documentation

◆ myData

template<typename T, DGtal::Dimension N>
T* MyImage< T, N >::myData
private

◆ myDomain

template<typename T, DGtal::Dimension N>
Domain MyImage< T, N >::myDomain
private

[BasicIteratorInterface]

[PrivateMembers]

Definition at line 149 of file exampleIteratorCompletion.cpp.

Referenced by domain(), end(), end(), MyImage(), operator()(), operator=(), and setValue().


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