PGROUTING  2.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
identifier.h
Go to the documentation of this file.
1 /*PGR-GNU*****************************************************************
2  *
3 
4 Copyright (c) 2017 Celia Virginia Vergara Castillo
5 vicky_vergara@hotmail.com
6 
7 ------
8 
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
13 
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22 
23 ********************************************************************PGR-GNU*/
24 
27 #ifndef INCLUDE_CPP_COMMON_IDENTIFIER_H_
28 #define INCLUDE_CPP_COMMON_IDENTIFIER_H_
29 #pragma once
30 
31 #if defined(__MINGW32__) || defined(_MSC_VER)
32 #include <stdint.h>
33 #endif
34 
35 #include <ostream>
36 
37 namespace pgrouting {
38 
39 class Identifier {
40  public:
41  Identifier() = default;
42  Identifier(const Identifier &v) = default;
43  Identifier(const size_t _idx, const int64_t _id);
44 
45  int64_t id() const;
46  size_t idx() const;
47  void reset_id(int64_t);
48 
49  friend std::ostream& operator<<(std::ostream& log, const Identifier&);
50 
51  private:
52  size_t m_idx;
53  int64_t m_id;
54 };
55 
56 
57 } // namespace pgrouting
58 
59 #endif // INCLUDE_CPP_COMMON_IDENTIFIER_H_
int64_t id() const
Definition: identifier.cpp:42
void reset_id(int64_t)
Definition: identifier.cpp:47
friend std::ostream & operator<<(std::ostream &log, const Identifier &)
Definition: identifier.cpp:51
size_t idx() const
Definition: identifier.cpp:37