PGROUTING  2.6-dev
contractGraph_driver.h
Go to the documentation of this file.
1 /*PGR-GNU*****************************************************************
2 File: contractGraph_driver.h
3 
4 Copyright (c) 2015 pgRouting developers
5 Mail: project@pgrouting.org
6 
7 Function's developer:
8 Copyright (c) 2016 Rohith Reddy
9 Mail:
10 
11 ------
12 
13 This program is free software; you can redistribute it and/or modify
14 it under the terms of the GNU General Public License as published by
15 the Free Software Foundation; either version 2 of the License, or
16 (at your option) any later version.
17 
18 This program is distributed in the hope that it will be useful,
19 but WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 GNU General Public License for more details.
22 
23 You should have received a copy of the GNU General Public License
24 along with this program; if not, write to the Free Software
25 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
26 
27 ********************************************************************PGR-GNU*/
28 
29 #ifndef INCLUDE_DRIVERS_CONTRACTION_CONTRACTGRAPH_DRIVER_H_
30 #define INCLUDE_DRIVERS_CONTRACTION_CONTRACTGRAPH_DRIVER_H_
31 #pragma once
32 
33 #include "c_types/contracted_rt.h"
34 #include "c_types/pgr_edge_t.h"
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40  /*********************************************************
41  edges_sql TEXT,
42  contraction_order BIGINT[],
43  forbidden_vertices BIGINT[] DEFAULT ARRAY[]::BIGINT[],
44  max_cycles integer DEFAULT 1,
45  directed BOOLEAN DEFAULT true
46  ********************************************************/
47  void
49  pgr_edge_t *data_edges,
50  size_t total_tuples,
51  int64_t *forbidden_vertices,
52  size_t size_forbidden_vertices,
53  int64_t *contraction_order,
54  size_t size_contraction_order,
55  int64_t max_cycles,
56  bool directed,
57  contracted_rt **return_tuples,
58  size_t *return_count,
59  char **log_msg,
60  char **notice_msg,
61  char **err_msg);
62 
63 
64 #ifdef __cplusplus
65 }
66 #endif
67 
68 #endif // INCLUDE_DRIVERS_CONTRACTION_CONTRACTGRAPH_DRIVER_H_
void do_pgr_contractGraph(pgr_edge_t *data_edges, size_t total_tuples, int64_t *forbidden_vertices, size_t size_forbidden_vertices, int64_t *contraction_order, size_t size_contraction_order, int64_t max_cycles, bool directed, contracted_rt **return_tuples, size_t *return_count, char **log_msg, char **notice_msg, char **err_msg)