#include <routing_filters.h>
|
| PathEnergyCostChecker (const PathState *path_state, std::vector< int64_t > force_start_min, std::vector< int64_t > force_end_min, std::vector< int > force_class, std::vector< const std::function< int64_t(int64_t)> * > force_per_class, std::vector< int > distance_class, std::vector< const std::function< int64_t(int64_t, int64_t)> * > distance_per_class, std::vector< EnergyCost > path_energy_cost, std::vector< bool > path_has_cost_when_empty) |
|
bool | Check () |
|
void | Commit () |
|
int64_t | CommittedCost () const |
|
int64_t | AcceptedCost () const |
|
- Todo
- (user): improve this class by:
- using WeightedWaveletTree to get the amount of energy above the threshold.
- detect when costs above and below are the same, to avoid correcting for energy above the threshold and get O(1) time per chain.
Definition at line 850 of file routing_filters.h.
◆ PathEnergyCostChecker()
operations_research::PathEnergyCostChecker::PathEnergyCostChecker |
( |
const PathState * | path_state, |
|
|
std::vector< int64_t > | force_start_min, |
|
|
std::vector< int64_t > | force_end_min, |
|
|
std::vector< int > | force_class, |
|
|
std::vector< const std::function< int64_t(int64_t)> * > | force_per_class, |
|
|
std::vector< int > | distance_class, |
|
|
std::vector< const std::function< int64_t(int64_t, int64_t)> * > | distance_per_class, |
|
|
std::vector< EnergyCost > | path_energy_cost, |
|
|
std::vector< bool > | path_has_cost_when_empty ) |
◆ AcceptedCost()
int64_t operations_research::PathEnergyCostChecker::AcceptedCost |
( |
| ) |
const |
|
inline |
◆ Check()
bool operations_research::PathEnergyCostChecker::Check |
( |
| ) |
|
◆ Commit()
void operations_research::PathEnergyCostChecker::Commit |
( |
| ) |
|
◆ CommittedCost()
int64_t operations_research::PathEnergyCostChecker::CommittedCost |
( |
| ) |
const |
|
inline |
The documentation for this class was generated from the following files: