- DisjunctivePropagator
- Tasks
A structure to hold tasks described by their features. More...
#include <routing.h>
Public Member Functions | |
| void | Clear () |
Public Attributes | |
| int | num_chain_tasks = 0 |
| std::vector< int64 > | start_min |
| std::vector< int64 > | start_max |
| std::vector< int64 > | duration_min |
| std::vector< int64 > | duration_max |
| std::vector< int64 > | end_min |
| std::vector< int64 > | end_max |
| std::vector< bool > | is_preemptible |
| std::vector< const SortedDisjointIntervalList * > | forbidden_intervals |
| std::vector< std::pair< int64, int64 > > | distance_duration |
A structure to hold tasks described by their features.
The first num_chain_tasks are considered linked by a chain of precedences, i.e. if i < j < num_chain_tasks, then end(i) <= start(j). This occurs frequently in routing, and can be leveraged by some variants of classic propagators.
| std::vector<std::pair<int64, int64> > DisjunctivePropagator::Tasks::distance_duration |
| std::vector<int64> DisjunctivePropagator::Tasks::duration_max |
| std::vector<int64> DisjunctivePropagator::Tasks::duration_min |
| std::vector<const SortedDisjointIntervalList*> DisjunctivePropagator::Tasks::forbidden_intervals |
| std::vector<bool> DisjunctivePropagator::Tasks::is_preemptible |
| std::vector<int64> DisjunctivePropagator::Tasks::start_max |
| std::vector<int64> DisjunctivePropagator::Tasks::start_min |