CoreNEURON
|
Definition at line 123 of file tqueue.hpp.
#include <tqueue.hpp>
Public Types | |
enum | qtype { enq = 0, spike, ite, deq } |
Types of queuing statistics. More... | |
Public Member Functions | |
TQueue () | |
~TQueue () | |
TQItem * | least () |
TQItem * | insert (double t, DiscreteEvent *data) |
TQItem * | enqueue_bin (double t, DiscreteEvent *data) |
TQItem * | dequeue_bin () |
void | shift_bin (double _t_) |
TQItem * | top () |
TQItem * | atomic_dq (double til) |
void | remove (TQItem *) |
void | move (TQItem *, double tnew) |
void | move (TQItem *i, double tnew) |
Splay tree priority queue implementation. More... | |
void | move (TQItem *i, double tnew) |
STL priority queue implementation. More... | |
TQItem * | insert (double tt, DiscreteEvent *d) |
Splay tree priority queue implementation. More... | |
TQItem * | insert (double tt, DiscreteEvent *d) |
STL priority queue implementation. More... | |
void | remove (TQItem *q) |
Splay tree priority queue implementation. More... | |
void | remove (TQItem *q) |
STL priority queue implementation. More... | |
TQItem * | atomic_dq (double tt) |
Splay tree priority queue implementation. More... | |
TQItem * | atomic_dq (double tt) |
STL priority queue implementation. More... | |
Public Attributes | |
int | nshift_ |
std::priority_queue< TQPair, std::vector< TQPair >, less_time > | pq_que_ |
Priority queue of vectors for queuing the events. More... | |
BinQ * | binq_ |
Private Member Functions | |
double | least_t_nolock () |
void | move_least_nolock (double tnew) |
TQPair | make_TQPair (TQItem *p) |
void | move_least_nolock (double tnew) |
Splay tree priority queue implementation. More... | |
void | move_least_nolock (double tnew) |
STL priority queue implementation. More... | |
Private Attributes | |
SPTREE * | sptree_ |
TQItem * | least_ |
enum coreneuron::TQueue::qtype |
coreneuron::TQueue< C >::TQueue |
Definition at line 33 of file tqueue.ipp.
coreneuron::TQueue< C >::~TQueue |
Clear the binq
Clear the splay tree
Clear the priority queue
Definition at line 42 of file tqueue.ipp.
|
inline |
|
inline |
Splay tree priority queue implementation.
Definition at line 232 of file tqueue.ipp.
|
inline |
STL priority queue implementation.
This while loop is to delete events whose times have been moved with the ::move function, but in fact events were left in the queue since the only function available is pop
Definition at line 247 of file tqueue.ipp.
|
inline |
Definition at line 133 of file tqueue.hpp.
|
inline |
Definition at line 71 of file tqueue.ipp.
|
inline |
|
inline |
Splay tree priority queue implementation.
Probably storing both time and event which has the time is redundant, but the event is then returned to the upper level call stack function. If we were to eliminate i->t_ and i->cnt_ fields, we need to make sure we are not braking anything.
Definition at line 152 of file tqueue.ipp.
|
inline |
STL priority queue implementation.
Probably storing both time and event which has the time is redundant, but the event is then returned to the upper level call stack function. If we were to eliminate i->t_ and i->cnt_ fields, we need to make sure we are not braking anything.
Definition at line 175 of file tqueue.ipp.
|
inline |
Definition at line 128 of file tqueue.hpp.
|
inlineprivate |
Definition at line 156 of file tqueue.hpp.
|
inlineprivate |
Definition at line 171 of file tqueue.hpp.
|
inline |
|
inline |
Splay tree priority queue implementation.
Definition at line 112 of file tqueue.ipp.
|
inline |
STL priority queue implementation.
Definition at line 129 of file tqueue.ipp.
|
inlineprivate |
Splay tree priority queue implementation.
Definition at line 81 of file tqueue.ipp.
|
inlineprivate |
STL priority queue implementation.
Definition at line 96 of file tqueue.ipp.
|
private |
|
inline |
|
inline |
Splay tree priority queue implementation.
Definition at line 198 of file tqueue.ipp.
|
inline |
STL priority queue implementation.
Definition at line 215 of file tqueue.ipp.
|
inline |
Definition at line 136 of file tqueue.hpp.
|
inline |
Definition at line 140 of file tqueue.hpp.
BinQ* coreneuron::TQueue< C >::binq_ |
Definition at line 167 of file tqueue.hpp.
|
private |
Definition at line 170 of file tqueue.hpp.
int coreneuron::TQueue< C >::nshift_ |
Definition at line 147 of file tqueue.hpp.
std::priority_queue<TQPair, std::vector<TQPair>, less_time> coreneuron::TQueue< C >::pq_que_ |
Priority queue of vectors for queuing the events.
enqueuing for move() and move_least_nolock() is not implemented
Definition at line 151 of file tqueue.hpp.
|
private |
Definition at line 164 of file tqueue.hpp.