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 657 of file core.hpp.
Member Function Documentation
ActorLink * Gecode::ActorLink::prev |
( |
void |
|
) |
const [inline] |
Routines for double-linked list.
Definition at line 3225 of file core.hpp.
void Gecode::ActorLink::prev |
( |
ActorLink * |
al |
) |
[inline] |
Routines for double-linked list.
Definition at line 3240 of file core.hpp.
ActorLink * Gecode::ActorLink::next |
( |
void |
|
) |
const [inline] |
Routines for double-linked list.
Definition at line 3230 of file core.hpp.
void Gecode::ActorLink::next |
( |
ActorLink * |
al |
) |
[inline] |
Routines for double-linked list.
Definition at line 3245 of file core.hpp.
ActorLink ** Gecode::ActorLink::next_ref |
( |
void |
|
) |
[inline] |
Routines for double-linked list.
Definition at line 3235 of file core.hpp.
void Gecode::ActorLink::init |
( |
void |
|
) |
[inline] |
Initialize links (self-linked).
Definition at line 3256 of file core.hpp.
void Gecode::ActorLink::unlink |
( |
void |
|
) |
[inline] |
Remove from predecessor and successor.
Definition at line 3250 of file core.hpp.
void Gecode::ActorLink::head |
( |
ActorLink * |
al |
) |
[inline] |
Insert al directly after this.
Definition at line 3261 of file core.hpp.
void Gecode::ActorLink::tail |
( |
ActorLink * |
al |
) |
[inline] |
Insert al directly before this.
Definition at line 3269 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 3283 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 3292 of file core.hpp.
The documentation for this class was generated from the following file: