ug4
uid.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2009-2015: G-CSC, Goethe University Frankfurt
3
* Author: Sebastian Reiter
4
*
5
* This file is part of UG4.
6
*
7
* UG4 is free software: you can redistribute it and/or modify it under the
8
* terms of the GNU Lesser General Public License version 3 (as published by the
9
* Free Software Foundation) with the following additional attribution
10
* requirements (according to LGPL/GPL v3 §7):
11
*
12
* (1) The following notice must be displayed in the Appropriate Legal Notices
13
* of covered and combined works: "Based on UG4 (www.ug4.org/license)".
14
*
15
* (2) The following notice must be displayed at a prominent place in the
16
* terminal output of covered works: "Based on UG4 (www.ug4.org/license)".
17
*
18
* (3) The following bibliography is recommended for citation and must be
19
* preserved in all covered files:
20
* "Reiter, S., Vogel, A., Heppner, I., Rupp, M., and Wittum, G. A massively
21
* parallel geometric multigrid solver on hierarchically distributed grids.
22
* Computing and visualization in science 16, 4 (2013), 151-164"
23
* "Vogel, A., Reiter, S., Rupp, M., Nägel, A., and Wittum, G. UG4 -- a novel
24
* flexible software system for simulating pde based models on high performance
25
* computers. Computing and visualization in science 16, 4 (2013), 165-179"
26
*
27
* This program is distributed in the hope that it will be useful,
28
* but WITHOUT ANY WARRANTY; without even the implied warranty of
29
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30
* GNU Lesser General Public License for more details.
31
*/
32
33
#ifndef __H__UNIQUE_IDENTITY__
34
#define __H__UNIQUE_IDENTITY__
35
36
namespace
ug
37
{
38
41
43
// UID
45
49
class
UID
50
{
51
public
:
52
UID
()
53
{
54
static
unsigned
int
ID = 1;
55
m_uID
= ID;
56
ID++;
57
}
58
59
UID
(
const
UID
& uid) {
m_uID
= uid.
id
();}
60
inline
unsigned
int
id
()
const
{
return
m_uID
;}
61
62
inline
bool
operator ==
(
const
UID
& uid)
63
{
64
if
(uid.
id
() == this->id())
65
return
true
;
66
return
false
;
67
}
68
69
virtual
~UID
() {};
70
71
private
:
72
unsigned
int
m_uID
;
73
};
74
75
// end group ugbase_common_util
77
78
}
79
#endif
80
ug::UID
supplies a unique ID.
Definition:
uid.h:50
ug::UID::~UID
virtual ~UID()
Definition:
uid.h:69
ug::UID::operator==
bool operator==(const UID &uid)
Definition:
uid.h:62
ug::UID::UID
UID(const UID &uid)
Definition:
uid.h:59
ug::UID::id
unsigned int id() const
Definition:
uid.h:60
ug::UID::m_uID
unsigned int m_uID
Definition:
uid.h:69
ug::UID::UID
UID()
Definition:
uid.h:52
ug
the ug namespace
ugbase
common
util
uid.h
Generated on Mon Dec 23 2024 01:11:53 for ug4 by
1.9.1