Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator Class Reference
[C++ Language Interface]

An iterator keeping a Linear_System consistent with a Saturation_Matrix. More...

#include <Linear_System.defs.hh>

List of all members.

Public Types

typedef std::vector< Row >
::iterator 
Iter1
typedef std::vector
< Saturation_Row >::iterator 
Iter2
typedef std::iterator_traits
< Iter1 >::iterator_category 
iterator_category
typedef std::iterator_traits
< Iter1 >::value_type 
value_type
typedef std::iterator_traits
< Iter1 >::difference_type 
difference_type
typedef std::iterator_traits
< Iter1 >::pointer 
pointer
typedef std::iterator_traits
< Iter1 >::reference 
reference

Public Member Functions

 With_Saturation_Matrix_iterator (Iter1 iter1, Iter2 iter2)
 Constructor.
 With_Saturation_Matrix_iterator (const With_Saturation_Matrix_iterator &y)
 Copy-constructor.
 ~With_Saturation_Matrix_iterator ()
 Destructor.
With_Saturation_Matrix_iteratoroperator= (const With_Saturation_Matrix_iterator &y)
 Assignment operator.
difference_type operator- (const With_Saturation_Matrix_iterator &y) const
 Distance operator.
reference operator* () const
 Dereferencing operator.
pointer operator-> () const
 Access-through operator.
void iter_swap (const With_Saturation_Matrix_iterator &y) const
 Swaps the pointed Row objects while keeping Saturation_Matrix consistent.
Operators Implementing Iterator Movement
With_Saturation_Matrix_iteratoroperator++ ()
With_Saturation_Matrix_iterator operator++ (int)
With_Saturation_Matrix_iteratoroperator-- ()
With_Saturation_Matrix_iterator operator-- (int)
With_Saturation_Matrix_iteratoroperator+= (difference_type d)
With_Saturation_Matrix_iterator operator+ (difference_type d) const
With_Saturation_Matrix_iteratoroperator-= (difference_type d)
With_Saturation_Matrix_iterator operator- (difference_type d) const
Comparisons between Iterators
bool operator== (const With_Saturation_Matrix_iterator &y) const
bool operator!= (const With_Saturation_Matrix_iterator &y) const
bool operator< (const With_Saturation_Matrix_iterator &y) const

Private Attributes

Iter1 i1
Iter2 i2

Related Functions

(Note that these are not member functions.)

void iter_swap (Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator x, Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator y)
 Specializes std::iter_swap.


Detailed Description

An iterator keeping a Linear_System consistent with a Saturation_Matrix.

An iterator on the vector of Row objects encoded in a Linear_System extended to maintain a corresponding iterator on a vector of Saturation_Row objects. Access to values is always done on the Row objects, but iterator movements and swaps are done on both components.

Definition at line 435 of file Linear_System.defs.hh.


Member Typedef Documentation

Definition at line 437 of file Linear_System.defs.hh.

Definition at line 438 of file Linear_System.defs.hh.

Definition at line 446 of file Linear_System.defs.hh.

Definition at line 447 of file Linear_System.defs.hh.

Definition at line 448 of file Linear_System.defs.hh.

Definition at line 449 of file Linear_System.defs.hh.

Definition at line 450 of file Linear_System.defs.hh.


Constructor & Destructor Documentation

Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::With_Saturation_Matrix_iterator ( Iter1  iter1,
Iter2  iter2 
) [inline]

Constructor.

Definition at line 254 of file Linear_System.inlines.hh.

00255   : i1(iter1), i2(iter2) {
00256 }

Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::With_Saturation_Matrix_iterator ( const With_Saturation_Matrix_iterator y  )  [inline]

Copy-constructor.

Definition at line 260 of file Linear_System.inlines.hh.

00261   : i1(y.i1), i2(y.i2) {
00262 }

Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::~With_Saturation_Matrix_iterator (  )  [inline]

Destructor.

Definition at line 266 of file Linear_System.inlines.hh.

00266                                    {
00267 }


Member Function Documentation

Linear_System::With_Saturation_Matrix_iterator & Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator= ( const With_Saturation_Matrix_iterator y  )  [inline]

Assignment operator.

Definition at line 271 of file Linear_System.inlines.hh.

References i1, and i2.

00271                                                     {
00272   i1 = y.i1;
00273   i2 = y.i2;
00274   return *this;
00275 }

Linear_System::With_Saturation_Matrix_iterator & Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator++ (  )  [inline]

Definition at line 278 of file Linear_System.inlines.hh.

References i1, and i2.

Referenced by operator++().

00278                                                          {
00279   ++i1;
00280   ++i2;
00281   return *this;
00282 }

Linear_System::With_Saturation_Matrix_iterator Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator++ ( int   )  [inline]

Definition at line 285 of file Linear_System.inlines.hh.

References operator++().

00285                                                             {
00286   With_Saturation_Matrix_iterator tmp = *this;
00287   operator++();
00288   return tmp;
00289 }

Linear_System::With_Saturation_Matrix_iterator & Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator-- (  )  [inline]

Definition at line 292 of file Linear_System.inlines.hh.

References i1, and i2.

Referenced by operator--().

00292                                                          {
00293   --i1;
00294   --i2;
00295   return *this;
00296 }

Linear_System::With_Saturation_Matrix_iterator Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator-- ( int   )  [inline]

Definition at line 299 of file Linear_System.inlines.hh.

References operator--().

00299                                                             {
00300   With_Saturation_Matrix_iterator tmp = *this;
00301   operator--();
00302   return tmp;
00303 }

Linear_System::With_Saturation_Matrix_iterator & Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator+= ( difference_type  d  )  [inline]

Definition at line 306 of file Linear_System.inlines.hh.

References i1, and i2.

00306                                                                           {
00307   i1 += d;
00308   i2 += d;
00309   return *this;
00310 }

Linear_System::With_Saturation_Matrix_iterator Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator+ ( difference_type  d  )  const [inline]

Definition at line 314 of file Linear_System.inlines.hh.

00314                                    {
00315   With_Saturation_Matrix_iterator tmp = *this;
00316   tmp += d;
00317   return tmp;
00318 }

Linear_System::With_Saturation_Matrix_iterator & Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator-= ( difference_type  d  )  [inline]

Definition at line 321 of file Linear_System.inlines.hh.

References i1, and i2.

00321                                                                           {
00322   i1 -= d;
00323   i2 -= d;
00324   return *this;
00325 }

Linear_System::With_Saturation_Matrix_iterator Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator- ( difference_type  d  )  const [inline]

Definition at line 329 of file Linear_System.inlines.hh.

00329                                    {
00330   With_Saturation_Matrix_iterator tmp = *this;
00331   tmp -= d;
00332   return tmp;
00333 }

Linear_System::With_Saturation_Matrix_iterator::difference_type Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator- ( const With_Saturation_Matrix_iterator y  )  const [inline]

Distance operator.

Definition at line 337 of file Linear_System.inlines.hh.

References i1.

00337                                                           {
00338   return i1 - y.i1;
00339 }

bool Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator== ( const With_Saturation_Matrix_iterator y  )  const [inline]

Definition at line 343 of file Linear_System.inlines.hh.

References i1.

00343                                                            {
00344   return i1 == y.i1;
00345 }

bool Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator!= ( const With_Saturation_Matrix_iterator y  )  const [inline]

Definition at line 349 of file Linear_System.inlines.hh.

References i1.

00349                                                            {
00350   return i1 != y.i1;
00351 }

bool Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator< ( const With_Saturation_Matrix_iterator y  )  const [inline]

Definition at line 355 of file Linear_System.inlines.hh.

References i1.

00355                                                           {
00356   return i1 < y.i1;
00357 }

Linear_System::With_Saturation_Matrix_iterator::reference Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator* (  )  const [inline]

Dereferencing operator.

Definition at line 360 of file Linear_System.inlines.hh.

References i1.

00360                                                               {
00361   return *i1;
00362 }

Linear_System::With_Saturation_Matrix_iterator::pointer Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::operator-> (  )  const [inline]

Access-through operator.

Definition at line 365 of file Linear_System.inlines.hh.

References i1.

00365                                                                {
00366   return &*i1;
00367 }

void Parma_Polyhedra_Library::Linear_System::With_Saturation_Matrix_iterator::iter_swap ( const With_Saturation_Matrix_iterator y  )  const [inline]

Swaps the pointed Row objects while keeping Saturation_Matrix consistent.

Definition at line 371 of file Linear_System.inlines.hh.

References i1, and i2.

00371                                                           {
00372   std::iter_swap(i1, y.i1);
00373   std::iter_swap(i2, y.i2);
00374 }


Friends And Related Function Documentation

Specializes std::iter_swap.

Definition at line 384 of file Linear_System.inlines.hh.

00387                                                           {
00388   x.iter_swap(y);
00389 }


Member Data Documentation


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

Generated on Wed Jul 16 22:55:46 2008 for PPL by  doxygen 1.5.6