FougTools  0.7.0dev-046fb6a
Handy tools for C++, Qt and OpenCascade
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gcpnts_uniform_abscissa_const_iterator.h
Go to the documentation of this file.
1 /****************************************************************************
2 ** FougTools
3 ** Copyright Fougue (30 Mar. 2015)
4 ** contact@fougue.pro
5 **
6 ** This software is a computer program whose purpose is to provide utility
7 ** tools for the C++ language and the Qt toolkit.
8 **
9 ** This software is governed by the CeCILL-C license under French law and
10 ** abiding by the rules of distribution of free software. You can use,
11 ** modify and/ or redistribute the software under the terms of the CeCILL-C
12 ** license as circulated by CEA, CNRS and INRIA at the following URL
13 ** "http://www.cecill.info".
14 ****************************************************************************/
15 
16 #pragma once
17 
18 #include "occtools.h"
19 #include <iterator>
20 class GCPnts_UniformAbscissa;
21 
22 namespace occ {
23 
25 {
26  // --- Friends
27  friend double operator*(const GCPnts_UniformAbscissaConstIterator& i);
60 
61 public:
62  typedef int difference_type;
63  typedef double value_type;
64  typedef const double* pointer;
65  typedef const double& reference;
66  typedef std::random_access_iterator_tag iterator_category;
67 
69  GCPnts_UniformAbscissaConstIterator(const GCPnts_UniformAbscissa& ua, int index = 1);
70 
71  double operator[](int n) const;
72  const GCPnts_UniformAbscissa& operator->() const;
73  int index() const;
74 
75 private:
76  void limitInternalIndex();
77 
78  const GCPnts_UniformAbscissa* m_ua;
79  int m_index;
80 };
81 
82 // --- Related functions
83 
85 
88 
91 
94 
97 
100 
103 
106 
109 
112 
115 
118 
121 
124 
127 
130 
133 
135 beginConstIterator(const GCPnts_UniformAbscissa& ua);
136 
138 endConstIterator(const GCPnts_UniformAbscissa& ua);
139 
140 } // namespace occ
GCPnts_UniformAbscissaConstIterator endConstIterator(const GCPnts_UniformAbscissa &ua)
const double * pointer
Definition: gcpnts_uniform_abscissa_const_iterator.h:64
GCPnts_UniformAbscissaConstIterator & operator++(GCPnts_UniformAbscissaConstIterator &i)
bool operator>(const GCPnts_UniformAbscissaConstIterator &i, const GCPnts_UniformAbscissaConstIterator &j)
int difference_type
Definition: gcpnts_uniform_abscissa_const_iterator.h:62
bool operator==(const GCPnts_UniformAbscissaConstIterator &i, const GCPnts_UniformAbscissaConstIterator &j)
double operator*(const GCPnts_UniformAbscissaConstIterator &i)
#define OCCTOOLS_EXPORT
Definition: occtools.h:27
GCPnts_UniformAbscissaConstIterator & operator-=(GCPnts_UniformAbscissaConstIterator &i, int n)
Definition: gcpnts_uniform_abscissa_const_iterator.h:24
const double & reference
Definition: gcpnts_uniform_abscissa_const_iterator.h:65
GCPnts_UniformAbscissaConstIterator & operator+=(GCPnts_UniformAbscissaConstIterator &i, int n)
std::random_access_iterator_tag iterator_category
Definition: gcpnts_uniform_abscissa_const_iterator.h:66
GCPnts_UniformAbscissaConstIterator operator-(const GCPnts_UniformAbscissaConstIterator &i, int n)
GCPnts_UniformAbscissaConstIterator beginConstIterator(const GCPnts_UniformAbscissa &ua)
Definition: ais_text.cpp:31
double value_type
Definition: gcpnts_uniform_abscissa_const_iterator.h:63
GCPnts_UniformAbscissaConstIterator operator+(const GCPnts_UniformAbscissaConstIterator &i, int n)
bool operator<=(const GCPnts_UniformAbscissaConstIterator &i, const GCPnts_UniformAbscissaConstIterator &j)
bool operator<(const GCPnts_UniformAbscissaConstIterator &i, const GCPnts_UniformAbscissaConstIterator &j)
bool operator!=(const GCPnts_UniformAbscissaConstIterator &i, const GCPnts_UniformAbscissaConstIterator &j)
bool operator>=(const GCPnts_UniformAbscissaConstIterator &i, const GCPnts_UniformAbscissaConstIterator &j)
GCPnts_UniformAbscissaConstIterator & operator--(GCPnts_UniformAbscissaConstIterator &i)