Gecode::ActorLink Class Reference
Double-linked list for actors.
More...
#include <core.hpp>
List of all members.
Public Member Functions |
void | init (void) |
| Initialize links (self-linked).
|
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.
|
bool | empty (void) const |
| Test whether actor link is empty (points to itself).
|
Static Public Member Functions |
template<class T > |
static ActorLink * | cast (T *a) |
| Static cast for a non-null pointer (to give a hint to optimizer).
|
template<class T > |
static const ActorLink * | cast (const T *a) |
| Static cast for a non-null pointer (to give a hint to optimizer).
|
|
ActorLink * | prev (void) const |
| Routines for double-linked list.
|
void | prev (ActorLink *) |
| Routines for double-linked list.
|
ActorLink * | next (void) const |
| Routines for double-linked list.
|
void | next (ActorLink *) |
| Routines for double-linked list.
|
ActorLink ** | next_ref (void) |
| Routines for double-linked list.
|
Detailed Description
Double-linked 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 589 of file core.hpp.
Member Function Documentation
ActorLink * Gecode::ActorLink::prev |
( |
void |
|
) |
const [inline] |
Routines for double-linked list.
Definition at line 3123 of file core.hpp.
void Gecode::ActorLink::prev |
( |
ActorLink * |
al |
) |
[inline] |
Routines for double-linked list.
Definition at line 3138 of file core.hpp.
ActorLink * Gecode::ActorLink::next |
( |
void |
|
) |
const [inline] |
Routines for double-linked list.
Definition at line 3128 of file core.hpp.
void Gecode::ActorLink::next |
( |
ActorLink * |
al |
) |
[inline] |
Routines for double-linked list.
Definition at line 3143 of file core.hpp.
ActorLink ** Gecode::ActorLink::next_ref |
( |
void |
|
) |
[inline] |
Routines for double-linked list.
Definition at line 3133 of file core.hpp.
void Gecode::ActorLink::init |
( |
void |
|
) |
[inline] |
Initialize links (self-linked).
Definition at line 3154 of file core.hpp.
void Gecode::ActorLink::unlink |
( |
void |
|
) |
[inline] |
Remove from predecessor and successor.
Definition at line 3148 of file core.hpp.
void Gecode::ActorLink::head |
( |
ActorLink * |
al |
) |
[inline] |
Insert al directly after this.
Definition at line 3159 of file core.hpp.
void Gecode::ActorLink::tail |
( |
ActorLink * |
al |
) |
[inline] |
Insert al directly before this.
Definition at line 3167 of file core.hpp.
bool Gecode::ActorLink::empty |
( |
void |
|
) |
const [inline] |
template<class T >
ActorLink * Gecode::ActorLink::cast |
( |
T * |
a |
) |
[inline, static] |
Static cast for a non-null pointer (to give a hint to optimizer).
Definition at line 3181 of file core.hpp.
template<class T >
const ActorLink * Gecode::ActorLink::cast |
( |
const T * |
a |
) |
[inline, static] |
Static cast for a non-null pointer (to give a hint to optimizer).
Definition at line 3190 of file core.hpp.
The documentation for this class was generated from the following file: