Stay organized with collections
Save and categorize content based on your preferences.
C++ Reference: class DimensionChecker
Note: This documentation is automatically generated.
This checker enforces dimension requirements.
A dimension requires that there is some valuation of
cumul and demand such that for all paths:
- cumul[A] is in interval node_capacity[A]
- if arc A -> B is on a path of path_class p,
then cumul[A] + demand[p](A, B) = cumul[B].
- if A is on a path of class p, then
cumul[A] must be inside interval path_capacity[path].
Method |
Check | Return type: bool Given the change made in PathState, checks that the dimension
constraint is still feasible.
|
Commit | Return type: void Commits to the changes made in PathState,
must be called before PathState::Commit().
|
DimensionChecker | Arguments: const PathState* path_state,
std::vector<Interval> path_capacity,
std::vector<int> path_class,
std::vector<std::function<Interval(int64_t)>>
min_max_demand_per_path_class,
std::vector<Interval> node_capacity |
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-08-06 UTC.
[null,null,["Last updated 2024-08-06 UTC."],[],["The `DimensionChecker` class enforces dimension requirements based on `cumul` and `demand`. It ensures that for all paths, `cumul[A]` is within `node_capacity[A]`, and if arc `A -\u003e B` is on a path of class `p`, then `cumul[A] + demand[p](A, B) = cumul[B]`. `cumul[A]` must also be inside `path_capacity[path]`. The `Check` method verifies feasibility after changes, and `Commit` applies changes made to `PathState`. The constructor takes various capacity and demand parameters.\n"],null,[]]