![]() |
vrpRouting
0.3
|
#include "drivers/pickDeliver_driver.h"
#include <cstring>
#include <sstream>
#include <string>
#include <deque>
#include "problem/pickDeliver.h"
#include "c_types/pickDeliveryOrders_t.h"
#include "c_types/solution_rt.h"
#include "c_types/vehicle_t.h"
#include "problem/matrix.h"
#include "cpp_common/pgr_assert.h"
#include "initialsol/tabu.h"
#include "optimizers/tabu.h"
#include "c_common/pgr_alloc.hpp"
Go to the source code of this file.
Functions | |
void | do_pickDeliver (PickDeliveryOrders_t *customers_arr, size_t total_customers, Vehicle_t *vehicles_arr, size_t total_vehicles, Matrix_cell_t *matrix_cells_arr, size_t total_cells, Time_multipliers_t *multipliers_arr, size_t total_multipliers, bool optimize, double factor, int max_cycles, bool stop_on_all_served, int64_t execution_date, Solution_rt **return_tuples, size_t *return_count, char **log_msg, char **notice_msg, char **err_msg) |
void do_pickDeliver | ( | PickDeliveryOrders_t * | customers_arr, |
size_t | total_customers, | ||
Vehicle_t * | vehicles_arr, | ||
size_t | total_vehicles, | ||
Matrix_cell_t * | matrix_cells_arr, | ||
size_t | total_cells, | ||
Time_multipliers_t * | multipliers_arr, | ||
size_t | total_multipliers, | ||
bool | optimize, | ||
double | factor, | ||
int | max_cycles, | ||
bool | stop_on_all_served, | ||
int64_t | execution_date, | ||
Solution_rt ** | return_tuples, | ||
size_t * | return_count, | ||
char ** | log_msg, | ||
char ** | notice_msg, | ||
char ** | err_msg | ||
) |
[in] | customers_arr | A C Array of pickup and dropoff orders |
[in] | total_customers | size of the customers_arr |
[in] | vehicles_arr | A C Array of vehicles |
[in] | total_vehicles | size of the vehicles_arr |
[in] | matrix_cells_arr | A C Array of the (time) matrix cells |
[in] | total_cells | size of the matrix_cells_arr |
[in] | multipliers_arr | A C Array of the multipliers |
[in] | total_multipliers | size of the multipliers_arr |
[in] | optimize | flag to control optimization |
[in] | factor | A global multiplier for the (time) matrix cells |
[in] | max_cycles | number of cycles to perform during the optimization phase |
[in] | stop_on_all_served | Indicator to stop optimization when all orders are served |
[in] | execution_date | Value used for not moving orders that are before this date |
[out] | return_tuples | C array of contents to be returned to postgres |
[out] | return_count | number of tuples returned |
[out] | log_msg | special log message pointer |
[out] | notice_msg | special message pointer to be returned as NOTICE |
[out] | err_msg | special message pointer to be returned as ERROR |
Definition at line 108 of file pickDeliver/pickDeliver_driver.cpp.
References vrprouting::Pgr_messages::clear(), PickDeliveryOrders_t::deliver_node_id, vrprouting::base::Base_Matrix::fix_triangle_inequality(), vrprouting::Pgr_messages::get_error(), vrprouting::Pgr_messages::get_log(), Identifiers< T >::has(), vrprouting::base::Base_Matrix::has_no_infinity(), PickDeliveryOrders_t::id, vrprouting::problem::PickDeliver::msg, vrprouting::base::Base_Matrix::obeys_triangle_inequality(), pgassert, pgr_alloc(), pgr_msg(), PickDeliveryOrders_t::pick_node_id, and AssertFailedException::what().
Referenced by process().