PGROUTING  2.5
pickDeliveryOrders_t.h
Go to the documentation of this file.
1 /*PGR-GNU*****************************************************************
2 File: pickDeliveryOrders_t.h
3 
4 Copyright (c) 2015 Celia Virginia Vergara Castillo
5 Mail: 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*/
26 #ifndef INCLUDE_C_TYPES_PICKDELIVER_PICKDELIVERYORDERS_T_H_
27 #define INCLUDE_C_TYPES_PICKDELIVER_PICKDELIVERYORDERS_T_H_
28 #pragma once
29 
30 
31 #ifdef __cplusplus
32 
33 #include <cstddef>
34 
35 #else // __cplusplus
36 
37 // for bool
38 #ifdef __GNUC__
39 #if __GNUC__ > 5
40 #pragma GCC diagnostic ignored "-Wpedantic"
41 #else
42 #pragma GCC diagnostic ignored "-pedantic"
43 #endif
44 #endif
45 
46 #include <postgres.h>
47 
48 #ifdef __GNUC__
49 #pragma GCC diagnostic pop
50 #endif
51 
52 // For NULL & size_t
53 #include <stdlib.h>
54 
55 
56 #endif // __cplusplus
57 
58 // For int64_t etc
59 #include <stdint.h>
60 
61 
62 /**************************************************************************
63  * pickDelivery types
64  * ***********************************************************************/
65 /*
66  * its with either (foo_x, foo_y) pairs (for eucledian or with foo_node_id (for matrix)
67  */
68 typedef struct {
69  int64_t id;
70  double demand;
71 
72  double pick_x;
73  double pick_y;
74  int64_t pick_node_id;
75 
76  double pick_open_t;
77  double pick_close_t;
79 
80  double deliver_x;
81  double deliver_y;
82  int64_t deliver_node_id;
83 
88 
89 #endif // INCLUDE_C_TYPES_PICKDELIVER_PICKDELIVERYORDERS_T_H_