vrpRouting  0.3
typedefs.h
Go to the documentation of this file.
1 /*PGR-GNU*****************************************************************
2 File: typedefs.h
3 
4 Copyright (c) 2017 Celia Virginia Vergara Castillo
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_TYPEDEFS_H_
27 #define INCLUDE_C_TYPES_TYPEDEFS_H_
28 #pragma once
29 
30 #ifdef __cplusplus
31 #include <cstdint>
32 #include <cstddef>
33 #include <cstring>
34 using TTimestamp = int64_t;
35 using TInterval = int64_t;
36 using Coordinate = double;
37 using Amount = int64_t;
38 using PAmount = uint32_t;
39 using Speed = double;
40 using Multiplier = double;
41 using Id = int64_t;
42 using Idx = uint64_t;
43 using MatrixIndex = int64_t;
44 using Duration = uint32_t;
45 using TravelCost = uint32_t;
46 using Priority = uint32_t;
47 using Distance = uint32_t;
48 using Skill = uint32_t;
49 using StepType = int32_t;
51 using Vehicle_t = struct Vehicle_t;
52 using Matrix_cell_t = struct Matrix_cell_t;
54 using Solution_rt = struct Solution_rt;
55 using Short_vehicle_rt = struct Short_vehicle_rt;
56 using Vroom_job_t = struct Vroom_job_t;
57 using Vroom_shipment_t = struct Vroom_shipment_t;
58 using Vroom_vehicle_t = struct Vroom_vehicle_t;
59 using Vroom_matrix_t = struct Vroom_matrix_t;
60 using Vroom_break_t = struct Vroom_break_t;
62 using Vroom_rt = struct Vroom_rt;
63 /*
64  * Index on a container
65  */
66 using Position = size_t;
67 #else
68 #include <stdint.h>
69 #include <stddef.h>
70 #include <string.h>
71 typedef int64_t TTimestamp;
72 typedef int64_t TInterval;
73 typedef double Coordinate;
74 typedef int64_t Amount;
75 typedef uint32_t PAmount;
76 typedef double Speed;
77 typedef double Multiplier;
78 typedef int64_t Id;
79 typedef uint64_t Idx;
80 typedef int64_t MatrixIndex;
81 typedef uint32_t Duration;
82 typedef uint32_t TravelCost;
83 typedef uint32_t Priority;
84 typedef uint32_t Distance;
85 typedef uint32_t Skill;
86 typedef int32_t StepType;
88 typedef struct Vehicle_t Vehicle_t;
91 typedef struct Solution_rt Solution_rt;
93 typedef struct Vroom_job_t Vroom_job_t;
99 typedef struct Vroom_rt Vroom_rt;
100 #endif
101 
102 /*************************************************************************/
103 
104 #endif // INCLUDE_C_TYPES_TYPEDEFS_H_
PickDeliveryOrders_t
order's attributes
Definition: pickDeliveryOrders_t.h:56
Time_multipliers_t
Time Dependant Multipliers.
Definition: time_multipliers_t.h:46
Vroom_time_window_t
Time window's attributes.
Definition: vroom_time_window_t.h:46
Skill
uint32_t Skill
Definition: typedefs.h:85
Vehicle_t
vehicles's attributes
Definition: vehicle_t.h:50
Speed
double Speed
Definition: typedefs.h:76
Id
int64_t Id
Definition: typedefs.h:78
Vroom_shipment_t
Vehicles's attributes.
Definition: vroom_shipment_t.h:56
Solution_rt
Solution schedule when twv & cw are hard restrictions.
Definition: solution_rt.h:56
Vroom_break_t
Vehicle's break attributes.
Definition: vroom_break_t.h:46
TravelCost
uint32_t TravelCost
Definition: typedefs.h:82
TTimestamp
int64_t TTimestamp
Definition: typedefs.h:71
Coordinate
double Coordinate
Definition: typedefs.h:73
Vroom_matrix_t
Matrix's attributes.
Definition: vroom_matrix_t.h:46
Vroom_job_t
Job's attributes.
Definition: vroom_job_t.h:54
Amount
int64_t Amount
Definition: typedefs.h:74
Short_vehicle_rt
short_vehicle
Definition: short_vehicle_rt.h:40
Idx
uint64_t Idx
Definition: typedefs.h:79
Matrix_cell_t
traveling costs
Definition: matrix_cell_t.h:41
MatrixIndex
int64_t MatrixIndex
Definition: typedefs.h:80
Duration
uint32_t Duration
Definition: typedefs.h:81
Distance
uint32_t Distance
Definition: typedefs.h:84
PAmount
uint32_t PAmount
Definition: typedefs.h:75
Priority
uint32_t Priority
Definition: typedefs.h:83
TInterval
int64_t TInterval
Definition: typedefs.h:72
Vroom_vehicle_t
Vehicles's attributes.
Definition: vroom_vehicle_t.h:54
Multiplier
double Multiplier
Definition: typedefs.h:77
Vroom_rt
Solution's attributes.
Definition: vroom_rt.h:57
StepType
int32_t StepType
Definition: typedefs.h:86