fork
Configure Feed
Select the types of activity you want to include in your feed.
this repo has no description
fork
Configure Feed
Select the types of activity you want to include in your feed.
1#
2# Main authors:
3# Guido Tack <tack@gecode.org>
4#
5# Contributing authors:
6# Christian Schulte <schulte@gecode.org>
7#
8# Copyright:
9# Guido Tack, 2004
10# Christian Schulte, 2006
11#
12# This file is part of Gecode, the generic constraint
13# development environment:
14# http://www.gecode.org
15#
16# Permission is hereby granted, free of charge, to any person obtaining
17# a copy of this software and associated documentation files (the
18# "Software"), to deal in the Software without restriction, including
19# without limitation the rights to use, copy, modify, merge, publish,
20# distribute, sublicense, and/or sell copies of the Software, and to
21# permit persons to whom the Software is furnished to do so, subject to
22# the following conditions:
23#
24# The above copyright notice and this permission notice shall be
25# included in all copies or substantial portions of the Software.
26#
27# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
28# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
29# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
30# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
31# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
32# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
33# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
34#
35
36[General]
37Name: Set
38Namespace: Gecode::Set
39Ifdef: GECODE_HAS_SET_VARS
40Bits: 0
41Dispose: false
42[ModEventHeader]
43 /**
44 * \defgroup TaskActorSetMEPC Set modification events and propagation conditions
45 * \ingroup TaskActorSet
46 */
47 //@{
48[ModEvent]
49Name: FAILED=FAILED
50 /// Domain operation has resulted in failure
51[ModEvent]
52Name: NONE=NONE
53 /// Domain operation has not changed domain
54[ModEvent]
55Name: VAL=ASSIGNED
56Combine: VAL=VAL,CARD=VAL,LUB=VAL,GLB=VAL,BB=VAL,CLUB=VAL,CGLB=VAL,CBB=VAL
57 /// Domain operation has resulted in a value (assigned variable)
58[ModEvent]
59Name: CARD
60Combine: VAL=VAL,CARD=CARD,LUB=CLUB,GLB=CGLB,BB=CBB,CLUB=CLUB,CGLB=CGLB,CBB=CBB
61 /**
62 * \brief Domain operation has changed the variable cardinality
63 *
64 * Note that this implies that the domain has not resulted in a value.
65 */
66[ModEvent]
67Name: LUB
68Combine: VAL=VAL,CARD=CLUB,LUB=LUB,GLB=BB,BB=BB,CLUB=CLUB,CGLB=CGLB,CBB=CBB
69 /**
70 * \brief Domain operation has changed the least upper bound
71 *
72 * Note that this implies that the domain has not resulted in a value
73 * and that also neither cardinality nor the greatest lower bound
74 * have changed.
75 */
76[ModEvent]
77Name: GLB
78Combine: VAL=VAL,CARD=CGLB,LUB=BB,GLB=GLB,BB=BB,CLUB=CBB,CGLB=CGLB,CBB=CBB
79 /**
80 * \brief Domain operation has changed the greatest lower bound
81 *
82 * Note that this implies that the domain has not resulted in a value
83 * and that also neither cardinality nor the least upper bound
84 * have changed.
85 */
86[ModEvent]
87Name: BB
88Combine: VAL=VAL,CARD=CBB,LUB=BB,GLB=BB,BB=BB,CLUB=CBB,CGLB=CBB,CBB=CBB
89 /**
90 * \brief Domain operation has changed both greatest lower and least
91 * upper bound
92 *
93 * Note that this implies that the domain has not resulted in a value
94 * and that also the cardinality has not changed.
95 */
96[ModEvent]
97Name: CLUB
98Combine: VAL=VAL,CARD=CLUB,LUB=CLUB,GLB=CBB,BB=CBB,CLUB=CLUB,CGLB=CBB,CBB=CBB
99 /**
100 * \brief Domain operation has changed the least upper bound and the cardinality
101 *
102 * Note that this implies that the domain has not resulted in a value
103 * and that also the greatest lower bound has not changed.
104 */
105[ModEvent]
106Name: CGLB
107Combine: VAL=VAL,CARD=CGLB,LUB=CBB,GLB=CGLB,BB=CBB,CLUB=CBB,CGLB=CGLB,CBB=CBB
108 /**
109 * \brief Domain operation has changed the greatest lower bound and the cardinality
110 *
111 * Note that this implies that the domain has not resulted in a value
112 * and that also the least upper bound has not changed.
113 */
114[ModEvent]
115Name: CBB=SUBSCRIBE
116Combine: VAL=VAL,CARD=CBB,LUB=CBB,GLB=CBB,BB=CBB,CLUB=CBB,CGLB=CBB,CBB=CBB
117 /**
118 * \brief Domain operation has changed both the greatest lower bound and
119 * the least upper bound, as well as the cardinality
120 *
121 * Note that this implies that the domain has not resulted in a value.
122 *
123 * If a propagator subscribes to this variable, it will be processed
124 * assuming a ME_SET_CBB modification event.
125 *
126 */
127[ModEventFooter]
128[PropCondHeader]
129[PropCond]
130Name: NONE=NONE
131 /// Propagation condition to be ignored (convenience)
132[PropCond]
133Name: VAL=ASSIGNED
134ScheduledBy: VAL
135 /**
136 * \brief Propagate when a view becomes assigned (single value)
137 *
138 * If a propagator \a p depends on a view \a x with propagation
139 * condition PC_SET_VAL, then \a p is propagated when a domain
140 * update operation on \a x returns the modification event ME_SET_VAL.
141 */
142[PropCond]
143Name: CARD
144ScheduledBy: VAL,CARD,CGLB,CLUB,CBB
145 /**
146 * \brief Propagate when the cardinality of a view changes
147 *
148 * If a propagator \a p depends on a view \a x with propagation
149 * condition PC_SET_CARD, then \a p is propagated when a domain
150 * update operation on \a x returns the modification event ME_SET_VAL,
151 * ME_SET_CARD, ME_SET_CGLB, ME_SET_CLUB, or ME_SET_CBB.
152 */
153[PropCond]
154Name: CLUB
155ScheduledBy: VAL,CARD,LUB,BB,CLUB,CGLB,CBB
156 /**
157 * \brief Propagate when the cardinality or the least upper bound
158 * of a view changes
159 *
160 * If a propagator \a p depends on a view \a x with propagation
161 * condition PC_SET_CLUB, then \a p is propagated when a domain
162 * update operation on \a x returns the modification event ME_SET_VAL,
163 * ME_SET_LUB, ME_SET_BB, ME_SET_CARD, ME_SET_CGLB, ME_SET_CLUB,
164 * or ME_SET_CBB.
165 */
166[PropCond]
167Name: CGLB
168ScheduledBy: VAL,CARD,GLB,BB,CLUB,CGLB,CBB
169 /**
170 * \brief Propagate when the cardinality or the greatest lower bound
171 * of a view changes
172 *
173 * If a propagator \a p depends on a view \a x with propagation
174 * condition PC_SET_CGLB, then \a p is propagated when a domain
175 * update operation on \a x returns the modification event ME_SET_VAL,
176 * ME_SET_GLB, ME_SET_BB, ME_SET_CARD, ME_SET_CGLB, ME_SET_CLUB,
177 * or ME_SET_CBB.
178 */
179[PropCond]
180Name: ANY
181ScheduledBy: VAL,CARD,LUB,GLB,BB,CLUB,CGLB,CBB
182 /**
183 * \brief Propagate when any bound or the cardinality
184 * of a view changes
185 *
186 * If a propagator \a p depends on a view \a x with propagation
187 * condition PC_SET_ANY, then \a p is propagated when a domain
188 * update operation on \a x returns any modification event but ME_SET_FAILED
189 * and ME_SET_NONE.
190 */
191[PropCondFooter]
192 //@}
193[End]