Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::PathEnergyCostChecker Class Reference

#include <routing_filters.h>

Classes

struct  EnergyCost
 

Public Member Functions

 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
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ 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 )

Definition at line 4416 of file routing_filters.cc.

Member Function Documentation

◆ AcceptedCost()

int64_t operations_research::PathEnergyCostChecker::AcceptedCost ( ) const
inline

Definition at line 873 of file routing_filters.h.

◆ Check()

bool operations_research::PathEnergyCostChecker::Check ( )

Definition at line 4451 of file routing_filters.cc.

◆ Commit()

void operations_research::PathEnergyCostChecker::Commit ( )

Definition at line 4510 of file routing_filters.cc.

◆ CommittedCost()

int64_t operations_research::PathEnergyCostChecker::CommittedCost ( ) const
inline

Definition at line 872 of file routing_filters.h.


The documentation for this class was generated from the following files: