PGROUTING  3.2
depthFirstSearch_driver.h
Go to the documentation of this file.
1 /*PGR-GNU*****************************************************************
2 File: depthFirstSearch_driver.h
3 
4 Generated with Template by:
5 Copyright (c) 2020 pgRouting developers
7 
8 Function's developer:
9 Copyright (c) 2020 Ashish Kumar
11 
12 ------
13 
14 This program is free software; you can redistribute it and/or modify
15 it under the terms of the GNU General Public License as published by
16 the Free Software Foundation; either version 2 of the License, or
17 (at your option) any later version.
18 
19 This program is distributed in the hope that it will be useful,
20 but WITHOUT ANY WARRANTY; without even the implied warranty of
21 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 GNU General Public License for more details.
23 
24 You should have received a copy of the GNU General Public License
25 along with this program; if not, write to the Free Software
26 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
27 
28  ********************************************************************PGR-GNU*/
29 
30 #ifndef INCLUDE_DRIVERS_TRAVERSAL_DEPTHFIRSTSEARCH_DRIVER_H_
31 #define INCLUDE_DRIVERS_TRAVERSAL_DEPTHFIRSTSEARCH_DRIVER_H_
32 #pragma once
33 
34 /* for size-t */
35 #ifdef __cplusplus
36 # include <cstddef>
37 #else
38 # include <stddef.h>
39 #endif
40 
41 #include "c_types/pgr_edge_t.h"
42 #include "c_types/pgr_mst_rt.h"
43 
44 #ifdef __cplusplus
45 extern "C" {
46 #endif
47 
48  /**************************************************
49  *
50  * pgr_depthFirstSearch(
51  * edges_sql TEXT,
52  * root_vids ANYARRAY,
53  * directed BOOLEAN DEFAULT true
54  * max_depth BIGINT DEFAULT 9223372036854775807,
55  * );
56  *
57  *************************************************/
59  pgr_edge_t *data_edges,
60  size_t total_edges,
61 
62  int64_t *rootsArr,
63  size_t size_rootsArr,
64 
65  bool directed,
66  int64_t max_depth,
67 
68  pgr_mst_rt **return_tuples,
69  size_t *return_count,
70 
71  char ** log_msg,
72  char ** notice_msg,
73  char ** err_msg);
74 
75 #ifdef __cplusplus
76 }
77 #endif
78 
79 #endif // INCLUDE_DRIVERS_TRAVERSAL_DEPTHFIRSTSEARCH_DRIVER_H_
pgr_mst_rt
Definition: pgr_mst_rt.h:36
pgr_edge_t
Definition: pgr_edge_t.h:37
do_pgr_depthFirstSearch
void do_pgr_depthFirstSearch(pgr_edge_t *data_edges, size_t total_edges, int64_t *rootsArr, size_t size_rootsArr, bool directed, int64_t max_depth, pgr_mst_rt **return_tuples, size_t *return_count, char **log_msg, char **notice_msg, char **err_msg)
Performs exception handling and converts the results to postgres.
Definition: depthFirstSearch_driver.cpp:118
pgr_mst_rt.h
pgr_edge_t.h