[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-08-06 UTC."],[[["`PropagationMonitor` is a class within the OR-Tools Constraint Solver that allows monitoring and interacting with the constraint propagation process."],["It provides virtual methods to track events like constraint initial propagation, demon runs, and modifications to integer and interval variables."],["Users can extend this class to implement custom monitoring or debugging logic during the solving process, such as printing debug information or collecting statistics."],["Methods are provided to track the beginning and end of constraint initial propagation, allowing detailed insight into how constraints are processed."],["`PropagationMonitor` can be installed on the solver to automatically receive notifications during the search for solutions."]]],["The `PropagationMonitor` class in C++ manages constraint propagation. Key actions include: monitoring constraint and demon lifecycles (`Begin/EndConstraintInitialPropagation`, `Begin/EndDemonRun`, `RegisterDemon`), setting and modifying variable bounds (`SetMin`, `SetMax`, `SetRange` for `IntExpr` and `IntVar`; `SetStart/End/Duration` for `IntervalVar`), removing values (`RemoveValue`, `RemoveValues`, `RemoveInterval`), ranking variables in sequences (`RankFirst`, `RankLast`, etc.), and managing contexts (`PushContext`, `PopContext`). It also handles variable processing starts and ends (`Start/EndProcessingIntegerVariable`).\n"]]