dune-common
2.3.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
dune
common
parallel
localindex.hh
Go to the documentation of this file.
1
// -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2
// vi: set et ts=4 sw=2 sts=2:
3
// $Id$
4
5
#ifndef DUNE_COMMON_LOCALINDEX_HH
6
#define DUNE_COMMON_LOCALINDEX_HH
7
8
#include <cstddef>
9
10
namespace
Dune
11
{
12
13
27
enum
LocalIndexState
{
VALID
,
DELETED
};
28
29
33
class
LocalIndex
34
{
35
public
:
40
LocalIndex
() :
41
localIndex_(0), state_(
VALID
){}
42
43
48
LocalIndex
(std::size_t index) :
49
localIndex_(index), state_(
VALID
){}
54
inline
const
std::size_t&
local
()
const
;
55
59
inline
operator
std::size_t()
const
;
60
66
inline
LocalIndex
&
operator=
(std::size_t index);
67
72
inline
LocalIndexState
state
()
const
;
73
78
inline
void
setState
(
LocalIndexState
state
);
79
80
private
:
82
std::size_t localIndex_;
83
90
char
state_;
91
92
};
93
94
95
96
inline
const
std::size_t&
LocalIndex::local
()
const
{
97
return
localIndex_;
98
}
99
100
inline
LocalIndex::operator std::size_t()
const
{
101
return
localIndex_;
102
}
103
104
inline
LocalIndex
&
LocalIndex::operator=
(std::size_t index){
105
localIndex_ = index;
106
return
*
this
;
107
}
108
109
inline
LocalIndexState
LocalIndex::state
()
const
{
110
return
static_cast<
LocalIndexState
>
(state_);
111
}
112
113
inline
void
LocalIndex::setState
(
LocalIndexState
state){
114
state_ =
static_cast<
char
>
(
state
);
115
}
116
119
}
// namespace Dune
120
121
#endif
Generated on Mon Feb 10 2014 23:52:38 for dune-common by
1.8.1.2