vrpRouting  0.3
vroom_driver.h
Go to the documentation of this file.
1 /*PGR-GNU*****************************************************************
2 File: vroom_driver.h
3 
4 Copyright (c) 2021 pgRouting developers
6 
7 Function's developer:
8 Copyright (c) 2021 Ashish Kumar
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_VROOM_VROOM_DRIVER_H_
30 #define INCLUDE_DRIVERS_VROOM_VROOM_DRIVER_H_
31 #pragma once
32 
33 #include "c_types/typedefs.h"
34 
35 #ifdef __cplusplus
36 extern "C" {
37 #endif
38 
39  void do_vrp_vroom(
40  Vroom_job_t *jobs, size_t total_jobs,
41  Vroom_time_window_t *jobs_tws, size_t total_jobs_tws,
42  Vroom_shipment_t *shipments, size_t total_shipments,
43  Vroom_time_window_t *shipments_tws, size_t total_shipments_tws,
44  Vroom_vehicle_t *vehicles, size_t total_vehicles,
45  Vroom_break_t *breaks, size_t total_breaks,
46  Vroom_time_window_t *breaks_tws, size_t total_breaks_tws,
47  Vroom_matrix_t *matrix_cells_arr, size_t total_cells,
48 
49  int32_t exploration_level,
50  int32_t timeout,
51  int32_t loading_time,
52 
53  Vroom_rt **return_tuples,
54  size_t *return_count,
55 
56  char ** log_msg,
57  char ** notice_msg,
58  char ** err_msg);
59 
60 #ifdef __cplusplus
61 }
62 #endif
63 
64 #endif // INCLUDE_DRIVERS_VROOM_VROOM_DRIVER_H_
Vroom_time_window_t
Time window's attributes.
Definition: vroom_time_window_t.h:46
typedefs.h
Vroom_shipment_t
Vehicles's attributes.
Definition: vroom_shipment_t.h:56
Vroom_break_t
Vehicle's break attributes.
Definition: vroom_break_t.h:46
Vroom_matrix_t
Matrix's attributes.
Definition: vroom_matrix_t.h:46
Vroom_job_t
Job's attributes.
Definition: vroom_job_t.h:54
do_vrp_vroom
void do_vrp_vroom(Vroom_job_t *jobs, size_t total_jobs, Vroom_time_window_t *jobs_tws, size_t total_jobs_tws, Vroom_shipment_t *shipments, size_t total_shipments, Vroom_time_window_t *shipments_tws, size_t total_shipments_tws, Vroom_vehicle_t *vehicles, size_t total_vehicles, Vroom_break_t *breaks, size_t total_breaks, Vroom_time_window_t *breaks_tws, size_t total_breaks_tws, Vroom_matrix_t *matrix_cells_arr, size_t total_cells, int32_t exploration_level, int32_t timeout, int32_t loading_time, Vroom_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: vroom_driver.cpp:84
Vroom_vehicle_t
Vehicles's attributes.
Definition: vroom_vehicle_t.h:54
Vroom_rt
Solution's attributes.
Definition: vroom_rt.h:57