# # Main authors: # Guido Tack # # Copyright: # Guido Tack, 2007 # # Last modified: # $Date: 2008-02-01 12:10:00 +0100 (Fri, 01 Feb 2008) $ by $Author: schulte $ # $Revision: 6034 $ # # This file is part of Gecode, the generic constraint # development environment: # http://www.gecode.org # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # [General] Name: CpltSet Ifdef: GECODE_HAS_CPLTSET_VARS Namespace: Gecode::CpltSet Dispose: true [ModEventHeader] /** * \defgroup TaskActorCpltSetMEPC CpltSet modification events and propagation conditions * \ingroup TaskActorCpltSet */ //@{ [ModEvent] Name: FAILED=FAILED /// Domain operation has resulted in failure [ModEvent] Name: NONE=NONE /// Domain operation has not changed domain [ModEvent] Name: VAL=ASSIGNED Combine: VAL=VAL,DOM=VAL /// Domain operation has resulted in a value (assigned variable) [ModEvent] Name: DOM=SUBSCRIBE Combine: VAL=VAL,DOM=DOM /** * \brief Domain operation has modified set */ [PropCond] Name: VAL=ASSIGNED ModEvents: VAL /** * \brief Propagate when a view becomes assigned (single value) * * If a propagator \a p depends on a view \a x with propagation * condition PC_CPLTSET_VAL, then \a p is propagated when a domain * update operation on \a x returns the modification event ME_CPLTSET_VAL. */ [PropCond] Name: DOM ModEvents: VAL,DOM /** * \brief Propagate when the domain of a view changes * * If a propagator \a p depends on a view \a x with propagation * condition PC_CPLTSET_DOM, then \a p is propagated when a domain * update operation on \a x returns the modification event ME_CPLTSET_VAL or * ME_CPLTSET_DOM. */ [PropCondFooter] //@} [End]