Generated on Tue Jan 28 2020 00:00:00 for Gecode by doxygen 1.8.17

Group of branchers. More...

#include <core.hpp>

Protected Member Functions

 BrancherGroup (unsigned int gid)
 Initialize with group id gid. More...
 
- Protected Member Functions inherited from Gecode::Group
 Group (unsigned int gid0)
 Construct with predefined group id gid0. More...
 

Construction

 BrancherGroup (void)
 Constructor. More...
 
 BrancherGroup (const BrancherGroup &g)
 Copy constructor. More...
 
BrancherGroupoperator= (const BrancherGroup &g)
 Assignment operator. More...
 
Home operator() (Space &home)
 To augment a space argument. More...
 

Move branchers between groups

BrancherGroupmove (Space &home, BrancherGroup g)
 Move branchers from group g to this group. More...
 
BrancherGroupmove (Space &home, Brancher &b)
 Move brancher b to this group. More...
 
BrancherGroupmove (Space &home, unsigned int id)
 Move brancher with id id to this group. More...
 

Operations on groups

static BrancherGroup all
 Group of all branchers. More...
 
static BrancherGroup def
 Group of branchers not in any user-defined group. More...
 
bool operator== (BrancherGroup g) const
 Test whether this group is equal to group g. More...
 
bool operator!= (BrancherGroup g) const
 Test whether this group is different from group g. More...
 
unsigned int size (Space &home) const
 Return number of branchers in a group. More...
 
void kill (Space &home)
 Kill all branchers in a group. More...
 

Additional Inherited Members

- Public Member Functions inherited from Gecode::Group
 Group (void)
 Constructor. More...
 
 Group (const Group &g)
 Copy constructor. More...
 
Groupoperator= (const Group &g)
 Assignment operator. More...
 
unsigned int id (void) const
 Return a unique id for the group. More...
 
bool in (Group a) const
 Check whether actor group a is included in this group. More...
 
bool in (void) const
 Check whether this is a real group (and not just default) More...
 
- Static Public Attributes inherited from Gecode::Group
static Group all
 Group of all actors. More...
 
static Group def
 Group of actors not in any user-defined group. More...
 
- Protected Attributes inherited from Gecode::Group
unsigned int gid
 The group id. More...
 
- Static Protected Attributes inherited from Gecode::Group
static const unsigned int GROUPID_ALL = 0U
 Fake id for group of all actors. More...
 
static const unsigned int GROUPID_DEF = 1U
 Pre-defined default group id. More...
 
static const unsigned int GROUPID_MAX = UINT_MAX >> 2
 The maximal group number. More...
 
static unsigned int next = GROUPID_DEF+1
 Next group id. More...
 
static Support::Mutex m
 Mutex for protection. More...
 

Detailed Description

Group of branchers.

Definition at line 865 of file core.hpp.

Constructor & Destructor Documentation

◆ BrancherGroup() [1/3]

Gecode::BrancherGroup::BrancherGroup ( unsigned int  gid)
inlineprotected

Initialize with group id gid.

Definition at line 5066 of file core.hpp.

◆ BrancherGroup() [2/3]

Gecode::BrancherGroup::BrancherGroup ( void  )
inline

Constructor.

Definition at line 5063 of file core.hpp.

◆ BrancherGroup() [3/3]

Gecode::BrancherGroup::BrancherGroup ( const BrancherGroup g)
inline

Copy constructor.

Definition at line 5070 of file core.hpp.

Member Function Documentation

◆ operator=()

BrancherGroup & Gecode::BrancherGroup::operator= ( const BrancherGroup g)
inline

Assignment operator.

Definition at line 5074 of file core.hpp.

◆ operator()()

Home Gecode::BrancherGroup::operator() ( Space home)
inline

To augment a space argument.

Definition at line 5079 of file core.hpp.

◆ move() [1/3]

BrancherGroup & Gecode::BrancherGroup::move ( Space home,
BrancherGroup  g 
)

Move branchers from group g to this group.

Definition at line 972 of file core.cpp.

◆ move() [2/3]

BrancherGroup & Gecode::BrancherGroup::move ( Space home,
Brancher b 
)
inline

Move brancher b to this group.

Definition at line 5093 of file core.hpp.

◆ move() [3/3]

BrancherGroup & Gecode::BrancherGroup::move ( Space home,
unsigned int  id 
)

Move brancher with id id to this group.

Throws an exception of type UnknownBrancher, if no brancher with id id exists.

Definition at line 981 of file core.cpp.

◆ operator==()

bool Gecode::BrancherGroup::operator== ( BrancherGroup  g) const
inline

Test whether this group is equal to group g.

Definition at line 5084 of file core.hpp.

◆ operator!=()

bool Gecode::BrancherGroup::operator!= ( BrancherGroup  g) const
inline

Test whether this group is different from group g.

Definition at line 5088 of file core.hpp.

◆ size()

unsigned int Gecode::BrancherGroup::size ( Space home) const

Return number of branchers in a group.

Definition at line 995 of file core.cpp.

◆ kill()

void Gecode::BrancherGroup::kill ( Space home)

Kill all branchers in a group.

Definition at line 1006 of file core.cpp.

Member Data Documentation

◆ all

BrancherGroup Gecode::BrancherGroup::all
static

Group of all branchers.

Definition at line 913 of file core.hpp.

◆ def

BrancherGroup Gecode::BrancherGroup::def
static

Group of branchers not in any user-defined group.

Definition at line 916 of file core.hpp.


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