NEURON
TQueue Class Reference

#include <bbtqueue.h>

Public Member Functions

 TQueue ()
 
virtual ~TQueue ()
 
TQItemleast ()
 
double least_t ()
 
TQIteminsert (double t, void *data_)
 
TQItemfind (double t)
 
void remove (TQItem *)
 
void move (TQItem *, double tnew)
 
void move_least (double tnew)
 
void print ()
 
void check (const char *errmess)
 
void statistics ()
 
void insert1 (double t, TQItem *)
 
void remove1 (TQItem *)
 
void forall_callback (void(*)(const TQItem *, int))
 
 TQueue ()
 
virtual ~TQueue ()
 
TQItemleast ()
 
double least_t ()
 
TQIteminsert (double t, void *data_)
 
TQItemfind (double t)
 
void remove (TQItem *)
 
void move (TQItem *, double tnew)
 
void move_least (double tnew)
 
void print ()
 
void check (const char *errmess)
 
void statistics ()
 
void forall_callback (void(*)(const TQItem *, int))
 
 TQueue ()
 
virtual ~TQueue ()
 
TQItemleast ()
 
double least_t ()
 
TQIteminsert (double t, void *data_)
 
TQIteminsert_fifo (double t, void *data_)
 
TQItemfind (double t)
 
void remove (TQItem *)
 
void move (TQItem *, double tnew)
 
void move_least (double tnew)
 
void print ()
 
void check (const char *errmess)
 
void statistics ()
 
void spike_stat (double *)
 
void forall_callback (void(*)(const TQItem *, int))
 
double q2least_t ()
 
 TQueue (TQItemPool *, int mkmut=0)
 
virtual ~TQueue ()
 
TQItemleast ()
 
double least_t ()
 
TQItematomic_dq (double til)
 
TQIteminsert (double t, void *data)
 
TQItemenqueue_bin (double t, void *data)
 
TQItemdequeue_bin ()
 
void shift_bin (double t)
 
double tbin ()
 
TQItemtop ()
 
void release (TQItem *)
 
TQItemfind (double t)
 
void remove (TQItem *)
 
void move (TQItem *, double tnew)
 
void move_least (double tnew)
 
void print ()
 
void check (const char *errmess)
 
void statistics ()
 
void spike_stat (double *)
 
void forall_callback (void(*)(const TQItem *, int))
 
void deleteitem (TQItem *)
 
BinQbinq ()
 
 TQueue ()
 
virtual ~TQueue ()
 
TQItemleast ()
 
double least_t ()
 
TQIteminsert (double t, void *data_)
 
TQIteminsert_fifo (double t, void *data_)
 
TQItemfind (double t)
 
void remove (TQItem *)
 
void move (TQItem *, double tnew)
 
void move_least (double tnew)
 
void print ()
 
void check (const char *errmess)
 
void statistics ()
 
void spike_stat (double *)
 
void forall_callback (void(*)(const TQItem *, int))
 
 TQueue ()
 
virtual ~TQueue ()
 
TQItemleast ()
 
double least_t ()
 
TQIteminsert (double t, void *data_)
 
TQItemfind (double t)
 
void remove (TQItem *)
 
void move (TQItem *, double tnew)
 
void move_least (double tnew)
 
void print ()
 
void check (const char *errmess)
 
void statistics ()
 
void spike_stat (double *)
 
void forall_callback (void(*)(const TQItem *, int))
 

Public Attributes

int nshift_
 

Private Member Functions

void reverse (TQItem *)
 
void new_least ()
 
void insertNode (double t, TQItem *)
 
void deleteNode (TQItem *)
 
void rotateLeft (TQItem *)
 
void rotateRight (TQItem *)
 
void insertFixup (TQItem *)
 
void deleteFixup (TQItem *)
 
void new_least ()
 
double least_t_nolock ()
 
void move_least_nolock (double tnew)
 

Private Attributes

TQItemleast_
 
TQItemroot_
 
unsigned long ninsert
 
unsigned long nrem
 
unsigned long nleast
 
unsigned long nbal
 
unsigned long ncmplxrem
 
unsigned long ncompare
 
unsigned long nleastsrch
 
unsigned long nfind
 
unsigned long nfindsrch
 
unsigned long nmove
 
unsigned long nfastmove
 
SPTREEsptree_
 
SPTREEsptree2_
 
unsigned long nenq1
 
unsigned long nenq2
 
SPTREE< TQItem > * sptree_
 
BinQbinq_
 
TQItemPool * tpool_
 
MUTDEC unsigned long ninsert
 
MUTDEC unsigned long nrem
 
MUTDEC unsigned long nleast
 
MUTDEC unsigned long nbal
 
MUTDEC unsigned long ncmplxrem
 
FifoQfifo_
 

Detailed Description

Definition at line 25 of file bbtqueue.h.

Constructor & Destructor Documentation

◆ TQueue() [1/6]

TQueue::TQueue ( )

Definition at line 94 of file bbtqueue.cpp.

◆ ~TQueue() [1/6]

TQueue::~TQueue ( )
virtual

Definition at line 107 of file bbtqueue.cpp.

◆ TQueue() [2/6]

TQueue::TQueue ( )

◆ ~TQueue() [2/6]

virtual TQueue::~TQueue ( )
virtual

◆ TQueue() [3/6]

TQueue::TQueue ( )

◆ ~TQueue() [3/6]

virtual TQueue::~TQueue ( )
virtual

◆ TQueue() [4/6]

TQueue::TQueue ( TQItemPool *  tp,
int  mkmut = 0 
)

Definition at line 59 of file sptbinq.cpp.

◆ ~TQueue() [4/6]

virtual TQueue::~TQueue ( )
virtual

◆ TQueue() [5/6]

TQueue::TQueue ( )

◆ ~TQueue() [5/6]

virtual TQueue::~TQueue ( )
virtual

◆ TQueue() [6/6]

TQueue::TQueue ( )

◆ ~TQueue() [6/6]

virtual TQueue::~TQueue ( )
virtual

Member Function Documentation

◆ atomic_dq()

TQItem * TQueue::atomic_dq ( double  til)

Definition at line 251 of file sptbinq.cpp.

◆ binq()

BinQ* TQueue::binq ( )
inline

Definition at line 97 of file sptbinq.h.

◆ check() [1/6]

void TQueue::check ( const char *  errmess)

◆ check() [2/6]

void TQueue::check ( const char *  errmess)

Definition at line 126 of file bbtqueue.cpp.

◆ check() [3/6]

void TQueue::check ( const char *  errmess)

◆ check() [4/6]

void TQueue::check ( const char *  errmess)

◆ check() [5/6]

void TQueue::check ( const char *  errmess)

◆ check() [6/6]

void TQueue::check ( const char *  errmess)

◆ deleteFixup()

void TQueue::deleteFixup ( TQItem )
private

◆ deleteitem()

void TQueue::deleteitem ( TQItem i)

Definition at line 88 of file sptbinq.cpp.

◆ deleteNode()

void TQueue::deleteNode ( TQItem )
private

◆ dequeue_bin()

TQItem* TQueue::dequeue_bin ( )
inline

Definition at line 80 of file sptbinq.h.

◆ enqueue_bin()

TQItem * TQueue::enqueue_bin ( double  t,
void data 
)

Definition at line 215 of file sptbinq.cpp.

◆ find() [1/6]

TQItem* TQueue::find ( double  t)

◆ find() [2/6]

TQItem * TQueue::find ( double  t)

Definition at line 220 of file bbtqueue.cpp.

◆ find() [3/6]

TQItem* TQueue::find ( double  t)

◆ find() [4/6]

TQItem* TQueue::find ( double  t)

◆ find() [5/6]

TQItem* TQueue::find ( double  t)

◆ find() [6/6]

TQItem* TQueue::find ( double  t)

◆ forall_callback() [1/6]

void TQueue::forall_callback ( void(*)(const TQItem *, int )

◆ forall_callback() [2/6]

void TQueue::forall_callback ( void(*)(const TQItem *, int f)

Definition at line 120 of file bbtqueue.cpp.

◆ forall_callback() [3/6]

void TQueue::forall_callback ( void(*)(const TQItem *, int )

◆ forall_callback() [4/6]

void TQueue::forall_callback ( void(*)(const TQItem *, int )

◆ forall_callback() [5/6]

void TQueue::forall_callback ( void(*)(const TQItem *, int )

◆ forall_callback() [6/6]

void TQueue::forall_callback ( void(*)(const TQItem *, int )

◆ insert() [1/6]

TQItem* TQueue::insert ( double  t,
void data_ 
)

◆ insert() [2/6]

TQItem * TQueue::insert ( double  t,
void data_ 
)

Definition at line 391 of file bbtqueue.cpp.

◆ insert() [3/6]

TQItem* TQueue::insert ( double  t,
void data_ 
)

◆ insert() [4/6]

TQItem* TQueue::insert ( double  t,
void data_ 
)

◆ insert() [5/6]

TQItem* TQueue::insert ( double  t,
void data_ 
)

◆ insert() [6/6]

TQItem* TQueue::insert ( double  t,
void data 
)

◆ insert1()

void TQueue::insert1 ( double  t,
TQItem i 
)

Definition at line 401 of file bbtqueue.cpp.

◆ insert_fifo() [1/2]

TQItem * TQueue::insert_fifo ( double  t,
void data_ 
)

Definition at line 197 of file spt2queue.cpp.

◆ insert_fifo() [2/2]

TQItem* TQueue::insert_fifo ( double  t,
void data_ 
)

◆ insertFixup()

void TQueue::insertFixup ( TQItem )
private

◆ insertNode()

void TQueue::insertNode ( double  t,
TQItem  
)
private

◆ least() [1/6]

TQItem* TQueue::least ( )

◆ least() [2/6]

TQItem * TQueue::least ( )

Definition at line 145 of file bbtqueue.cpp.

◆ least() [3/6]

TQItem* TQueue::least ( )

◆ least() [4/6]

TQItem* TQueue::least ( )

◆ least() [5/6]

TQItem* TQueue::least ( )

◆ least() [6/6]

TQItem* TQueue::least ( )

◆ least_t() [1/6]

double TQueue::least_t ( )

◆ least_t() [2/6]

double TQueue::least_t ( )

Definition at line 136 of file bbtqueue.cpp.

◆ least_t() [3/6]

double TQueue::least_t ( )

◆ least_t() [4/6]

double TQueue::least_t ( )

◆ least_t() [5/6]

double TQueue::least_t ( )

◆ least_t() [6/6]

double TQueue::least_t ( )

◆ least_t_nolock()

double TQueue::least_t_nolock ( )
inlineprivate

Definition at line 99 of file sptbinq.h.

◆ move() [1/6]

void TQueue::move ( TQItem ,
double  tnew 
)

◆ move() [2/6]

void TQueue::move ( TQItem i,
double  tnew 
)

Definition at line 188 of file bbtqueue.cpp.

◆ move() [3/6]

void TQueue::move ( TQItem ,
double  tnew 
)

◆ move() [4/6]

void TQueue::move ( TQItem ,
double  tnew 
)

◆ move() [5/6]

void TQueue::move ( TQItem ,
double  tnew 
)

◆ move() [6/6]

void TQueue::move ( TQItem ,
double  tnew 
)

◆ move_least() [1/6]

void TQueue::move_least ( double  tnew)

◆ move_least() [2/6]

void TQueue::move_least ( double  tnew)

Definition at line 181 of file bbtqueue.cpp.

◆ move_least() [3/6]

void TQueue::move_least ( double  tnew)

◆ move_least() [4/6]

void TQueue::move_least ( double  tnew)

◆ move_least() [5/6]

void TQueue::move_least ( double  tnew)

◆ move_least() [6/6]

void TQueue::move_least ( double  tnew)

◆ move_least_nolock()

void TQueue::move_least_nolock ( double  tnew)
private

Definition at line 142 of file sptbinq.cpp.

◆ new_least() [1/2]

void TQueue::new_least ( )
private

◆ new_least() [2/2]

void TQueue::new_least ( )
private

Definition at line 163 of file bbtqueue.cpp.

◆ print() [1/6]

void TQueue::print ( )

◆ print() [2/6]

void TQueue::print ( )

Definition at line 114 of file bbtqueue.cpp.

◆ print() [3/6]

void TQueue::print ( )

◆ print() [4/6]

void TQueue::print ( )

◆ print() [5/6]

void TQueue::print ( )

◆ print() [6/6]

void TQueue::print ( )

◆ q2least_t()

double TQueue::q2least_t ( )

Definition at line 252 of file spt2queue.cpp.

◆ release()

void TQueue::release ( TQItem q)

Definition at line 226 of file sptbinq.cpp.

◆ remove() [1/6]

void TQueue::remove ( TQItem )

◆ remove() [2/6]

void TQueue::remove ( TQItem i)

Definition at line 239 of file bbtqueue.cpp.

◆ remove() [3/6]

void TQueue::remove ( TQItem )

◆ remove() [4/6]

void TQueue::remove ( TQItem )

◆ remove() [5/6]

void TQueue::remove ( TQItem )

◆ remove() [6/6]

void TQueue::remove ( TQItem )

◆ remove1()

void TQueue::remove1 ( TQItem i)

Definition at line 248 of file bbtqueue.cpp.

◆ reverse()

void TQueue::reverse ( TQItem b)
private

Definition at line 346 of file bbtqueue.cpp.

◆ rotateLeft()

void TQueue::rotateLeft ( TQItem )
private

◆ rotateRight()

void TQueue::rotateRight ( TQItem )
private

◆ shift_bin()

void TQueue::shift_bin ( double  t)
inline

Definition at line 81 of file sptbinq.h.

◆ spike_stat() [1/4]

void TQueue::spike_stat ( double *  )

◆ spike_stat() [2/4]

void TQueue::spike_stat ( double *  d)

Definition at line 170 of file spt2queue.cpp.

◆ spike_stat() [3/4]

void TQueue::spike_stat ( double *  )

◆ spike_stat() [4/4]

void TQueue::spike_stat ( double *  )

◆ statistics() [1/6]

void TQueue::statistics ( )

◆ statistics() [2/6]

void TQueue::statistics ( )

Definition at line 474 of file bbtqueue.cpp.

◆ statistics() [3/6]

void TQueue::statistics ( )

◆ statistics() [4/6]

void TQueue::statistics ( )

◆ statistics() [5/6]

void TQueue::statistics ( )

◆ statistics() [6/6]

void TQueue::statistics ( )

◆ tbin()

double TQueue::tbin ( )
inline

Definition at line 82 of file sptbinq.h.

◆ top()

TQItem* TQueue::top ( )
inline

Definition at line 83 of file sptbinq.h.

Member Data Documentation

◆ binq_

BinQ* TQueue::binq_
private

Definition at line 102 of file sptbinq.h.

◆ fifo_

FifoQ* TQueue::fifo_
private

Definition at line 74 of file sptfifoq.h.

◆ least_

TQItem * TQueue::least_
private

Definition at line 47 of file bbtqueue.h.

◆ nbal [1/2]

unsigned long TQueue::nbal
private

Definition at line 51 of file bbtqueue.h.

◆ nbal [2/2]

MUTDEC unsigned long TQueue::nbal
private

Definition at line 107 of file sptbinq.h.

◆ ncmplxrem [1/2]

unsigned long TQueue::ncmplxrem
private

Definition at line 51 of file bbtqueue.h.

◆ ncmplxrem [2/2]

MUTDEC unsigned long TQueue::ncmplxrem
private

Definition at line 107 of file sptbinq.h.

◆ ncompare

unsigned long TQueue::ncompare
private

Definition at line 52 of file bbtqueue.h.

◆ nenq1

unsigned long TQueue::nenq1
private

Definition at line 57 of file spt2queue.h.

◆ nenq2

unsigned long TQueue::nenq2
private

Definition at line 57 of file spt2queue.h.

◆ nfastmove

unsigned long TQueue::nfastmove
private

Definition at line 52 of file bbtqueue.h.

◆ nfind

unsigned long TQueue::nfind
private

Definition at line 52 of file bbtqueue.h.

◆ nfindsrch

unsigned long TQueue::nfindsrch
private

Definition at line 52 of file bbtqueue.h.

◆ ninsert [1/2]

unsigned long TQueue::ninsert
private

Definition at line 51 of file bbtqueue.h.

◆ ninsert [2/2]

MUTDEC unsigned long TQueue::ninsert
private

Definition at line 107 of file sptbinq.h.

◆ nleast [1/2]

unsigned long TQueue::nleast
private

Definition at line 51 of file bbtqueue.h.

◆ nleast [2/2]

MUTDEC unsigned long TQueue::nleast
private

Definition at line 107 of file sptbinq.h.

◆ nleastsrch

unsigned long TQueue::nleastsrch
private

Definition at line 52 of file bbtqueue.h.

◆ nmove

unsigned long TQueue::nmove
private

Definition at line 52 of file bbtqueue.h.

◆ nrem [1/2]

unsigned long TQueue::nrem
private

Definition at line 51 of file bbtqueue.h.

◆ nrem [2/2]

MUTDEC unsigned long TQueue::nrem
private

Definition at line 107 of file sptbinq.h.

◆ nshift_

int TQueue::nshift_

Definition at line 94 of file sptbinq.h.

◆ root_

TQItem * TQueue::root_
private

Definition at line 48 of file bbtqueue.h.

◆ sptree2_

SPTREE* TQueue::sptree2_
private

Definition at line 52 of file spt2queue.h.

◆ sptree_ [1/2]

SPTREE * TQueue::sptree_
private

Definition at line 51 of file spt2queue.h.

◆ sptree_ [2/2]

SPTREE<TQItem>* TQueue::sptree_
private

Definition at line 101 of file sptbinq.h.

◆ tpool_

TQItemPool* TQueue::tpool_
private

Definition at line 104 of file sptbinq.h.


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