Generated on Thu Jan 16 2025 00:00:00 for Gecode by doxygen 1.14.0

Group of branchers. More...

#include <core.hpp>

Protected Member Functions

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

Operations on groups

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

Construction

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

Move branchers between groups

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

Additional Inherited Members

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

Detailed Description

Group of branchers.

Definition at line 799 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 5028 of file core.hpp.

◆ BrancherGroup() [2/3]

Gecode::BrancherGroup::BrancherGroup ( void )
inline

Constructor.

Definition at line 5025 of file core.hpp.

◆ BrancherGroup() [3/3]

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

Copy constructor.

Definition at line 5032 of file core.hpp.

Member Function Documentation

◆ operator=()

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

Assignment operator.

Definition at line 5036 of file core.hpp.

◆ operator()()

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

To augment a space argument.

Definition at line 5041 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 1011 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 5055 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 1020 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 5046 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 5050 of file core.hpp.

◆ size()

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

Return number of branchers in a group.

Definition at line 1034 of file core.cpp.

◆ kill()

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

Kill all branchers in a group.

Definition at line 1045 of file core.cpp.

Member Data Documentation

◆ all

BrancherGroup Gecode::BrancherGroup::all
static

Group of all branchers.

Definition at line 847 of file core.hpp.

◆ def

BrancherGroup Gecode::BrancherGroup::def
static

Group of branchers not in any user-defined group.

Definition at line 850 of file core.hpp.


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