![]() |
Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
|
Definition at line 45 of file intervals.h.
#include <intervals.h>
Classes | |
| struct | CumulativeHelper |
Public Member Functions | |
| IntervalsRepository (Model *model) | |
| IntervalsRepository (const IntervalsRepository &)=delete | |
| IntervalsRepository & | operator= (const IntervalsRepository &)=delete |
| int | NumIntervals () const |
| IntervalVariable | CreateInterval (IntegerVariable start, IntegerVariable end, IntegerVariable size, IntegerValue fixed_size, LiteralIndex is_present) |
| IntervalVariable | CreateInterval (AffineExpression start, AffineExpression end, AffineExpression size, LiteralIndex is_present=kNoLiteralIndex, bool add_linear_relation=false) |
| bool | IsOptional (IntervalVariable i) const |
| Literal | PresenceLiteral (IntervalVariable i) const |
| bool | IsPresent (IntervalVariable i) const |
| bool | IsAbsent (IntervalVariable i) const |
| AffineExpression | Size (IntervalVariable i) const |
| AffineExpression | Start (IntervalVariable i) const |
| AffineExpression | End (IntervalVariable i) const |
| IntegerValue | MinSize (IntervalVariable i) const |
| IntegerValue | MaxSize (IntervalVariable i) const |
| std::vector< IntervalVariable > | AllIntervals () const |
| SchedulingConstraintHelper * | GetOrCreateHelper (std::vector< Literal > enforcement_literals, const std::vector< IntervalVariable > &variables, bool register_as_disjunctive_helper=false) |
| NoOverlap2DConstraintHelper * | GetOrCreate2DHelper (std::vector< Literal > enforcement_literals, const std::vector< IntervalVariable > &x_variables, const std::vector< IntervalVariable > &y_variables) |
| SchedulingDemandHelper * | GetOrCreateDemandHelper (SchedulingConstraintHelper *helper, absl::Span< const AffineExpression > demands) |
| void | InitAllDecomposedEnergies () |
| void | CreateDisjunctivePrecedenceLiteral (IntervalVariable a, IntervalVariable b) |
| LiteralIndex | GetOrCreateDisjunctivePrecedenceLiteralIfNonTrivial (const IntervalDefinition &a, const IntervalDefinition &b) |
| bool | CreatePrecedenceLiteralIfNonTrivial (AffineExpression x, AffineExpression y) |
| LiteralIndex | GetPrecedenceLiteral (AffineExpression x, AffineExpression y) const |
| Literal | GetOrCreatePrecedenceLiteral (AffineExpression x, AffineExpression y) |
| const std::vector< SchedulingConstraintHelper * > & | AllDisjunctiveHelpers () const |
| void | RegisterCumulative (CumulativeHelper helper) |
| const std::vector< CumulativeHelper > & | AllCumulativeHelpers () const |
|
explicit |
Definition at line 42 of file intervals.cc.
|
delete |
|
inline |
Definition at line 185 of file intervals.h.
|
inline |
Definition at line 170 of file intervals.h.
|
inline |
Definition at line 108 of file intervals.h.
| void operations_research::sat::IntervalsRepository::CreateDisjunctivePrecedenceLiteral | ( | IntervalVariable | a, |
| IntervalVariable | b ) |
Definition at line 94 of file intervals.cc.
| IntervalVariable operations_research::sat::IntervalsRepository::CreateInterval | ( | AffineExpression | start, |
| AffineExpression | end, | ||
| AffineExpression | size, | ||
| LiteralIndex | is_present = kNoLiteralIndex, | ||
| bool | add_linear_relation = false ) |
Definition at line 65 of file intervals.cc.
| IntervalVariable operations_research::sat::IntervalsRepository::CreateInterval | ( | IntegerVariable | start, |
| IntegerVariable | end, | ||
| IntegerVariable | size, | ||
| IntegerValue | fixed_size, | ||
| LiteralIndex | is_present ) |
Definition at line 53 of file intervals.cc.
| bool operations_research::sat::IntervalsRepository::CreatePrecedenceLiteralIfNonTrivial | ( | AffineExpression | x, |
| AffineExpression | y ) |
Definition at line 270 of file intervals.cc.
|
inline |
Definition at line 95 of file intervals.h.
| NoOverlap2DConstraintHelper * operations_research::sat::IntervalsRepository::GetOrCreate2DHelper | ( | std::vector< Literal > | enforcement_literals, |
| const std::vector< IntervalVariable > & | x_variables, | ||
| const std::vector< IntervalVariable > & | y_variables ) |
Definition at line 399 of file intervals.cc.
| SchedulingDemandHelper * operations_research::sat::IntervalsRepository::GetOrCreateDemandHelper | ( | SchedulingConstraintHelper * | helper, |
| absl::Span< const AffineExpression > | demands ) |
Definition at line 450 of file intervals.cc.
| LiteralIndex operations_research::sat::IntervalsRepository::GetOrCreateDisjunctivePrecedenceLiteralIfNonTrivial | ( | const IntervalDefinition & | a, |
| const IntervalDefinition & | b ) |
Definition at line 112 of file intervals.cc.
| SchedulingConstraintHelper * operations_research::sat::IntervalsRepository::GetOrCreateHelper | ( | std::vector< Literal > | enforcement_literals, |
| const std::vector< IntervalVariable > & | variables, | ||
| bool | register_as_disjunctive_helper = false ) |
Definition at line 357 of file intervals.cc.
| Literal operations_research::sat::IntervalsRepository::GetOrCreatePrecedenceLiteral | ( | AffineExpression | x, |
| AffineExpression | y ) |
Definition at line 341 of file intervals.cc.
| LiteralIndex operations_research::sat::IntervalsRepository::GetPrecedenceLiteral | ( | AffineExpression | x, |
| AffineExpression | y ) const |
Definition at line 315 of file intervals.cc.
| void operations_research::sat::IntervalsRepository::InitAllDecomposedEnergies | ( | ) |
Definition at line 466 of file intervals.cc.
|
inline |
Definition at line 81 of file intervals.h.
|
inline |
Definition at line 71 of file intervals.h.
|
inline |
Definition at line 77 of file intervals.h.
|
inline |
Definition at line 103 of file intervals.h.
|
inline |
Definition at line 98 of file intervals.h.
|
inline |
Definition at line 55 of file intervals.h.
|
delete |
|
inline |
Definition at line 74 of file intervals.h.
|
inline |
Definition at line 182 of file intervals.h.
|
inline |
Definition at line 93 of file intervals.h.
|
inline |
Definition at line 94 of file intervals.h.