this repo has no description
1#
2# Main authors:
3# Christian Schulte <schulte@gecode.org>
4#
5# Copyright:
6# Christian Schulte, 2006
7#
8# This file is part of Gecode, the generic constraint
9# development environment:
10# http://www.gecode.org
11#
12# Permission is hereby granted, free of charge, to any person obtaining
13# a copy of this software and associated documentation files (the
14# "Software"), to deal in the Software without restriction, including
15# without limitation the rights to use, copy, modify, merge, publish,
16# distribute, sublicense, and/or sell copies of the Software, and to
17# permit persons to whom the Software is furnished to do so, subject to
18# the following conditions:
19#
20# The above copyright notice and this permission notice shall be
21# included in all copies or substantial portions of the Software.
22#
23# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30#
31
32[General]
33Name: Int
34Namespace: Gecode::Int
35Ifdef: GECODE_HAS_INT_VARS
36Bits: 0
37Dispose: false
38[ModEventHeader]
39 /**
40 * \defgroup TaskActorIntMEPC Integer modification events and propagation conditions
41 * \ingroup TaskActorInt
42 */
43 //@{
44[ModEvent]
45Name: FAILED=FAILED
46 /// Domain operation has resulted in failure
47[ModEvent]
48Name: NONE=NONE
49 /// Domain operation has not changed domain
50[ModEvent]
51Name: VAL=ASSIGNED
52Combine: VAL=VAL, BND=VAL, DOM=VAL
53 /// Domain operation has resulted in a value (assigned variable)
54[ModEvent]
55Name: BND=SUBSCRIBE
56Combine: VAL=VAL, BND=BND, DOM=BND
57 /**
58 * \brief Domain operation has changed the minimum or maximum of the domain
59 *
60 * Note that this implies that the domain has not resulted in a value.
61 *
62 * If a propagator subscribes to this variable, it will be processed
63 * assuming a ME_INT_BND modification event.
64 */
65[ModEvent]
66Name: DOM
67Combine: VAL=VAL, BND=BND, DOM=DOM
68 /**
69 * \brief Domain operation has changed the domain
70 *
71 * Note that this implies that the domain has not resulted in a value
72 * and that also the minimum and maximum of the domain have not changed.
73 */
74[ModEventFooter]
75[PropCondHeader]
76[PropCond]
77Name: NONE=NONE
78 /// Propagation condition to be ignored (convenience)
79[PropCond]
80Name: VAL=ASSIGNED
81ScheduledBy: VAL
82 /**
83 * \brief Propagate when a view becomes assigned (single value)
84 *
85 * If a propagator \a p depends on a view \a x with propagation
86 * condition PC_INT_VAL, then \a p is propagated when a domain
87 * update operation on \a x returns the modification event ME_INT_VAL.
88 */
89[PropCond]
90Name: BND
91ScheduledBy: VAL, BND
92 /**
93 * \brief Propagate when minimum or maximum of a view changes
94 *
95 * If a propagator \a p depends on a view \a x with propagation
96 * condition PC_INT_BND, then \a p is propagated when a domain
97 * update operation on \a x returns the modification events ME_INT_VAL
98 * or ME_INT_BND.
99 */
100[PropCond]
101Name: DOM
102ScheduledBy: VAL, BND, DOM
103 /**
104 * \brief Propagate when domain changes
105 *
106 * If a propagator \a p depends on a view \a x with propagation
107 * condition PC_INT_DOM, then \a p is propagated when a domain
108 * update operation on \a x returns the modification event ME_INT_VAL,
109 * ME_INT_BND, or ME_INT_DOM.
110 */
111[PropCondFooter]
112 //@}
113[End]