Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement > Class Template Reference

Detailed Description

template<bool has_enforcement = true>
class operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >

Definition at line 596 of file constraint_violation.h.

#include <constraint_violation.h>

Inheritance diagram for operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >:
operations_research::sat::CompiledConstraint

Classes

struct  Interval

Public Member Functions

 CompiledNoOverlapWithTwoIntervals (absl::Span< const int > enforcement_literals, const ConstraintProto &x1, const ConstraintProto &x2)
 ~CompiledNoOverlapWithTwoIntervals () final=default
int64_t ComputeViolation (absl::Span< const int64_t > solution) final
int64_t ViolationDelta (int, int64_t, absl::Span< const int64_t > solution_with_new_value) final
std::vector< int > UsedVariables (const CpModelProto &model_proto) const final
Public Member Functions inherited from operations_research::sat::CompiledConstraint
 CompiledConstraint ()=default
virtual ~CompiledConstraint ()=default
void InitializeViolation (absl::Span< const int64_t > solution)
virtual void PerformMove (int var, int64_t old_value, absl::Span< const int64_t > solution_with_new_value)
int64_t violation () const

Additional Inherited Members

Protected Attributes inherited from operations_research::sat::CompiledConstraint
int64_t violation_

Constructor & Destructor Documentation

◆ CompiledNoOverlapWithTwoIntervals()

template<bool has_enforcement = true>
operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >::CompiledNoOverlapWithTwoIntervals ( absl::Span< const int > enforcement_literals,
const ConstraintProto & x1,
const ConstraintProto & x2 )
inline

Definition at line 605 of file constraint_violation.h.

◆ ~CompiledNoOverlapWithTwoIntervals()

template<bool has_enforcement = true>
operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >::~CompiledNoOverlapWithTwoIntervals ( )
finaldefault

Member Function Documentation

◆ ComputeViolation()

template<bool has_enforcement = true>
int64_t operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >::ComputeViolation ( absl::Span< const int64_t > solution)
inlinefinalvirtual

◆ UsedVariables()

template<bool has_enforcement>
std::vector< int > operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >::UsedVariables ( const CpModelProto & model_proto) const
finalvirtual

◆ ViolationDelta()

template<bool has_enforcement>
int64_t operations_research::sat::CompiledNoOverlapWithTwoIntervals< has_enforcement >::ViolationDelta ( int ,
int64_t ,
absl::Span< const int64_t > solution_with_new_value )
finalvirtual

Reimplemented from operations_research::sat::CompiledConstraint.

Definition at line 1136 of file constraint_violation.cc.


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