Tulip
5.3.0
Large graphs analysis and drawing
Face.h
1
/*
2
*
3
* This file is part of Tulip (http://tulip.labri.fr)
4
*
5
* Authors: David Auber and the Tulip development Team
6
* from LaBRI, University of Bordeaux
7
*
8
* Tulip is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU Lesser General Public License
10
* as published by the Free Software Foundation, either version 3
11
* of the License, or (at your option) any later version.
12
*
13
* Tulip is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16
* See the GNU General Public License for more details.
17
*
18
*/
19
///@cond DOXYGEN_HIDDEN
20
21
#ifndef Tulip_FACE_H
22
#define Tulip_FACE_H
23
#include <tulip/tulipconf.h>
24
#include <tulip/tuliphash.h>
25
26
#include <climits>
27
28
namespace
tlp
{
29
30
struct
Face {
31
unsigned
int
id;
32
Face() : id(UINT_MAX) {}
33
explicit
Face(
unsigned
int
j) : id(j) {}
34
bool
operator!=(
const
Face f)
const
{
35
return
id
!= f.id;
36
}
37
bool
operator==(
const
Face f)
const
{
38
return
id
== f.id;
39
}
40
bool
isValid()
const
{
41
return
id
!= UINT_MAX;
42
}
43
};
44
}
// namespace tlp
45
46
TLP_BEGIN_HASH_NAMESPACE {
47
template
<>
48
struct
hash<
tlp
::Face> {
49
size_t
operator()(
const
tlp::Face f)
const
{
50
return
f.id;
51
}
52
};
53
}
54
TLP_END_HASH_NAMESPACE
55
56
namespace
std
{
57
template
<>
58
struct
equal_to<
tlp
::Face> {
59
size_t
operator()(
const
tlp::Face f,
const
tlp::Face f2)
const
{
60
return
f.id == f2.id;
61
}
62
};
63
template
<>
64
struct
less<
tlp
::Face> {
65
size_t
operator()(
const
tlp::Face f,
const
tlp::Face f2)
const
{
66
return
f.id < f2.id;
67
}
68
};
69
}
// namespace std
70
71
#endif
72
///@endcond
tlp
Definition:
AbstractProperty.h:35
std
library
tulip-core
include
tulip
Face.h
Generated on Sun Apr 7 2019 23:52:22 for Tulip by
1.8.13