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

Detailed Description

Definition at line 52 of file enforcement.h.

#include <enforcement.h>

Inheritance diagram for operations_research::sat::EnforcementPropagator:
operations_research::sat::SatPropagator

Public Member Functions

 EnforcementPropagator (Model *model)
bool Propagate (Trail *trail) final
void Untrail (const Trail &trail, int trail_index) final
EnforcementId Register (absl::Span< const Literal > enforcement, std::function< void(EnforcementId, EnforcementStatus)> callback=nullptr)
void AddEnforcementReason (EnforcementId id, std::vector< Literal > *reason) const
EnforcementStatus Status (EnforcementId id) const
EnforcementStatus Status (absl::Span< const Literal > enforcement) const
EnforcementStatus DebugStatus (EnforcementId id)
absl::Span< const LiteralGetEnforcementLiterals (EnforcementId id) const
Public Member Functions inherited from operations_research::sat::SatPropagator
 SatPropagator (const std::string &name)
 SatPropagator (const SatPropagator &)=delete
SatPropagatoroperator= (const SatPropagator &)=delete
virtual ~SatPropagator ()=default
void SetPropagatorId (int id)
int PropagatorId () const
virtual void Reimply (Trail *, int)
virtual absl::Span< const LiteralReason (const Trail &, int, int64_t) const
bool PropagatePreconditionsAreSatisfied (const Trail &trail) const
bool PropagationIsDone (const Trail &trail) const
const std::string & name () const
virtual bool IsEmpty () const

Friends

class EnforcementHelper

Additional Inherited Members

Protected Attributes inherited from operations_research::sat::SatPropagator
const std::string name_
int propagator_id_
int propagation_trail_index_

Constructor & Destructor Documentation

◆ EnforcementPropagator()

operations_research::sat::EnforcementPropagator::EnforcementPropagator ( Model * model)
explicit

Definition at line 50 of file enforcement.cc.

Member Function Documentation

◆ AddEnforcementReason()

void operations_research::sat::EnforcementPropagator::AddEnforcementReason ( EnforcementId id,
std::vector< Literal > * reason ) const

Definition at line 215 of file enforcement.cc.

◆ DebugStatus()

EnforcementStatus operations_research::sat::EnforcementPropagator::DebugStatus ( EnforcementId id)

Definition at line 311 of file enforcement.cc.

◆ GetEnforcementLiterals()

absl::Span< const Literal > operations_research::sat::EnforcementPropagator::GetEnforcementLiterals ( EnforcementId id) const
inline

Definition at line 89 of file enforcement.h.

◆ Propagate()

bool operations_research::sat::EnforcementPropagator::Propagate ( Trail * trail)
finalvirtual

Implements operations_research::sat::SatPropagator.

Definition at line 58 of file enforcement.cc.

◆ Register()

EnforcementId operations_research::sat::EnforcementPropagator::Register ( absl::Span< const Literal > enforcement,
std::function< void(EnforcementId, EnforcementStatus)> callback = nullptr )

Definition at line 117 of file enforcement.cc.

◆ Status() [1/2]

EnforcementStatus operations_research::sat::EnforcementPropagator::Status ( absl::Span< const Literal > enforcement) const

Definition at line 296 of file enforcement.cc.

◆ Status() [2/2]

EnforcementStatus operations_research::sat::EnforcementPropagator::Status ( EnforcementId id) const
inline

Definition at line 75 of file enforcement.h.

◆ Untrail()

void operations_research::sat::EnforcementPropagator::Untrail ( const Trail & trail,
int trail_index )
finalvirtual

Reimplemented from operations_research::sat::SatPropagator.

Definition at line 99 of file enforcement.cc.

◆ EnforcementHelper

friend class EnforcementHelper
friend

Definition at line 132 of file enforcement.h.


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