sequence.hh gecode/set.hh gecode/set/rel.hh gecode/set/rel-op/common.hpp gecode/set/sequence/common.hpp gecode/set/sequence/seq.hpp gecode/set/sequence/seq-u.hpp Gecode::Set::Sequence::Seq Gecode::Set::Sequence::SeqU Gecode Gecode::Set Gecode::Set::Sequence /*-*-mode:C++;c-basic-offset:2;indent-tabs-mode:nil-*-*/ /* *Mainauthors: *GuidoTack<tack@gecode.org> *ChristianSchulte<schulte@gecode.org> * *Contributingauthors: *GaborSzokoli<szokoli@gecode.org> * *Copyright: *GuidoTack,2004 *ChristianSchulte,2004 *GaborSzokoli,2004 * *Lastmodified: *$Date:2009-10-1217:36:53+0200(Mon,12Oct2009)$by$Author:schulte$ *$Revision:9878$ * *ThisfileispartofGecode,thegenericconstraint *developmentenvironment: *http://www.gecode.org * *Permissionisherebygranted,freeofcharge,toanypersonobtaining *acopyofthissoftwareandassociateddocumentationfiles(the *"Software"),todealintheSoftwarewithoutrestriction,including *withoutlimitationtherightstouse,copy,modify,merge,publish, *distribute,sublicense,and/orsellcopiesoftheSoftware,andto *permitpersonstowhomtheSoftwareisfurnishedtodoso,subjectto *thefollowingconditions: * *Theabovecopyrightnoticeandthispermissionnoticeshallbe *includedinallcopiesorsubstantialportionsoftheSoftware. * *THESOFTWAREISPROVIDED"ASIS",WITHOUTWARRANTYOFANYKIND, *EXPRESSORIMPLIED,INCLUDINGBUTNOTLIMITEDTOTHEWARRANTIESOF *MERCHANTABILITY,FITNESSFORAPARTICULARPURPOSEAND *NONINFRINGEMENT.INNOEVENTSHALLTHEAUTHORSORCOPYRIGHTHOLDERSBE *LIABLEFORANYCLAIM,DAMAGESOROTHERLIABILITY,WHETHERINANACTION *OFCONTRACT,TORTOROTHERWISE,ARISINGFROM,OUTOFORINCONNECTION *WITHTHESOFTWAREORTHEUSEOROTHERDEALINGSINTHESOFTWARE. * */ #ifndef__GECODE_SET_SEQUENCE_HH__ #define__GECODE_SET_SEQUENCE_HH__ #include<gecode/set.hh> namespaceGecode{namespaceSet{namespaceSequence{ classSeq:publicNaryPropagator<SetView,PC_SET_ANY>{ protected: Seq(Space&home,boolshare,Seq&p); Seq(Homehome,ViewArray<SetView>&); public: GECODE_SET_EXPORTvirtualActor*copy(Space&home,bool); GECODE_SET_EXPORTvirtualExecStatuspropagate(Space&home,constModEventDelta&med); staticExecStatuspost(Homehome,ViewArray<SetView>); }; classSeqU:publicNaryOnePropagator<SetView,PC_SET_ANY>{ protected: GLBndSetunionOfDets;//Unionofdeterminedvariablesdroppedformx. SeqU(Space&home,boolshare,SeqU&p); SeqU(Homehome,ViewArray<SetView>&,SetView); ExecStatuspropagateSeqUnion(Space&home, bool&modified,ViewArray<SetView>&x, SetView&y); public: GECODE_SET_EXPORTvirtualActor*copy(Space&home,bool); GECODE_SET_EXPORTvirtualExecStatuspropagate(Space&home,constModEventDelta&med); staticExecStatuspost(Homehome,ViewArray<SetView>,SetView); }; }}} #include<gecode/set/rel.hh> #include<gecode/set/rel-op/common.hpp> #include<gecode/set/sequence/common.hpp> #include<gecode/set/sequence/seq.hpp> #include<gecode/set/sequence/seq-u.hpp> #endif //STATISTICS:set-prop