ESyS-Particle
2.2
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
nts_iter.h
Go to the documentation of this file.
1
2
// //
3
// Copyright (c) 2003-2013 by The University of Queensland //
4
// Earth Systems Science Computational Centre (ESSCC) //
5
// http://www.uq.edu.au/esscc //
6
// //
7
// Primary Business: Brisbane, Queensland, Australia //
8
// Licensed under the Open Software License version 3.0 //
9
// http://www.opensource.org/licenses/osl-3.0.php //
10
// //
12
13
#ifndef __NTS_ITER_H
14
#define __NTS_ITER_H
15
16
//--- project includes ---
17
#include "
ntable.h
"
18
19
//---system includes---
20
#include <cstddef>
21
22
//--- STL includes ---
23
#include <valarray>
24
#include <vector>
25
#include <list>
26
27
using
std::slice;
28
using
std::vector;
29
using
std::list;
30
31
//--- forward decls ---
32
template
<
typename
T>
33
class
NTSlab_iter
;
34
35
template
<
typename
T>
bool
operator==
(
const
NTSlab_iter<T>
&,
const
NTSlab_iter<T>
&);
36
template
<
typename
T>
bool
operator!=
(
const
NTSlab_iter<T>
&,
const
NTSlab_iter<T>
&);
37
38
template
<
typename
T>
39
class
NTSlab
;
40
45
template
<
typename
T>
46
class
NTSlab_iter
47
{
48
private
:
49
NTSlab<T>
*
m_slab
;
50
typename
NeighborTable<T>::indextype
m_curr
;
51
52
public
:
53
NTSlab_iter
(
NTSlab<T>
*,
typename
NeighborTable<T>::indextype
);
54
56
NTSlab_iter
&
operator++
();
57
NTSlab_iter
operator++
(
int
);
58
59
NTSlab_iter
&
operator--
();
60
NTSlab_iter
operator--
(
int
);
61
62
64
T*
operator->
();
65
T&
operator*
();
66
67
typename
NeighborTable<T>::indextype
index
()
const
;
68
69
//comparison
70
friend
bool
operator== <>(
const
NTSlab_iter
&,
const
NTSlab_iter
&);
71
friend
bool
operator!= <>(
const
NTSlab_iter
&,
const
NTSlab_iter
&);
72
};
73
74
#include "
nts_iter.hpp
"
75
76
#endif //__NTS_ITER_H
ntable
src
nts_iter.h
Generated on Mon May 6 2013 23:26:30 for ESyS-Particle by
1.8.3.1