dlvhex  2.5.0
PropagatorCallback Class Reference

Base class for propagator callbacks. More...

#include <include/dlvhex2/GenuineSolver.h>

Inheritance diagram for PropagatorCallback:

Public Member Functions

virtual void propagate (InterpretationConstPtr partialInterpretation, InterpretationConstPtr assigned, InterpretationConstPtr changed)=0
 This method is called by the solver whenever 1.

Detailed Description

Base class for propagator callbacks.

Definition at line 59 of file GenuineSolver.h.


Member Function Documentation

virtual void PropagatorCallback::propagate ( InterpretationConstPtr  partialInterpretation,
InterpretationConstPtr  assigned,
InterpretationConstPtr  changed 
) [pure virtual]

This method is called by the solver whenever 1.

it cannot propagate by other means, or 2. when a model is complete but before getNextModel returns it.

Parameters:
partialInterpretationCurrent partial assignment. Bits represent true atoms, cleared bits represent false or unassigned atoms.

The method is expected to trigger propagations by adding appropriate nogoods to the reasoner using GenuineSolver::addNogood.

Parameters:
assignedSet of currently assigned atoms.
changesSet of atoms which have been reassigned since the last call and thus have possibly(!) changed.

Implemented in GenuineGuessAndCheckModelGenerator.

Referenced by InternalGroundASPSolver::getNextModel(), and CDNLSolver::getNextModel().


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