Gecode::ActorLink Class Reference
Inherited by
Gecode::Actor [private]
, and
Gecode::Advisor [private]
.
List of all members.
Detailed Description
Doublelinked list for actors.
Used to maintain which actors belong to a space and also (for propagators) to organize actors in the queue of waiting propagators.
Definition at line 514 of file core.icc.

ActorLink *  prev (void) const 
 Routines for doublelinked list.

void  prev (ActorLink *) 
 Routines for doublelinked list.

ActorLink *  next (void) const 
 Routines for doublelinked list.

void  next (ActorLink *) 
 Routines for doublelinked list.

ActorLink **  next_ref (void) 
 Routines for doublelinked list.

Public Member Functions 
void  init (void) 
 Initialize links (selflinked).

void  unlink (void) 
 Remove from predecessor and successor.

void  head (ActorLink *al) 
 Insert al directly after this.

void  tail (ActorLink *al) 
 Insert al directly before this.

Static Public Member Functions 
template<class T> 
static ActorLink *  cast (T *a) 
 Static cast for a nonnull pointer (to give a hint to optimizer).

template<class T> 
static const ActorLink *  cast (const T *a) 
 Static cast for a nonnull pointer (to give a hint to optimizer).

Member Function Documentation
ActorLink * Gecode::ActorLink::prev 
( 
void 

) 
const [inline] 
Routines for doublelinked list.
Definition at line 1488 of file core.icc.
void Gecode::ActorLink::prev 
( 
ActorLink * 
al 
) 
[inline] 
Routines for doublelinked list.
Definition at line 1503 of file core.icc.
ActorLink * Gecode::ActorLink::next 
( 
void 

) 
const [inline] 
Routines for doublelinked list.
Definition at line 1493 of file core.icc.
void Gecode::ActorLink::next 
( 
ActorLink * 
al 
) 
[inline] 
Routines for doublelinked list.
Definition at line 1508 of file core.icc.
ActorLink ** Gecode::ActorLink::next_ref 
( 
void 

) 
[inline] 
Routines for doublelinked list.
Definition at line 1498 of file core.icc.
void Gecode::ActorLink::init 
( 
void 

) 
[inline] 
Initialize links (selflinked).
Definition at line 1519 of file core.icc.
void Gecode::ActorLink::unlink 
( 
void 

) 
[inline] 
Remove from predecessor and successor.
Definition at line 1513 of file core.icc.
void Gecode::ActorLink::head 
( 
ActorLink * 
al 
) 
[inline] 
Insert al directly after this.
Definition at line 1524 of file core.icc.
void Gecode::ActorLink::tail 
( 
ActorLink * 
al 
) 
[inline] 
Insert al directly before this.
Definition at line 1532 of file core.icc.
template<class T>
ActorLink * Gecode::ActorLink::cast 
( 
T * 
a 
) 
[inline, static] 
Static cast for a nonnull pointer (to give a hint to optimizer).
Definition at line 1541 of file core.icc.
template<class T>
const ActorLink * Gecode::ActorLink::cast 
( 
const T * 
a 
) 
[inline, static] 
Static cast for a nonnull pointer (to give a hint to optimizer).
Definition at line 1550 of file core.icc.
The documentation for this class was generated from the following file: