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 30 of file bbtqueue.h.

Constructor & Destructor Documentation

◆ TQueue() [1/6]

TQueue::TQueue ( )

Definition at line 90 of file bbtqueue.cpp.

◆ ~TQueue() [1/6]

TQueue::~TQueue ( )
virtual

Definition at line 103 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 58 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 137 of file sptbinq.h.

◆ check() [1/6]

void TQueue::check ( const char *  errmess)

Definition at line 121 of file bbtqueue.cpp.

◆ check() [2/6]

void TQueue::check ( const char *  errmess)

◆ 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 87 of file sptbinq.cpp.

◆ deleteNode()

void TQueue::deleteNode ( TQItem )
private

◆ dequeue_bin()

TQItem* TQueue::dequeue_bin ( )
inline

Definition at line 110 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)

Definition at line 217 of file bbtqueue.cpp.

◆ find() [2/6]

TQItem* TQueue::find ( double  t)

◆ 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)  f)

Definition at line 115 of file bbtqueue.cpp.

◆ forall_callback() [2/6]

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

◆ 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 394 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 404 of file bbtqueue.cpp.

◆ insert_fifo() [1/2]

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

Definition at line 216 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 ( )

Definition at line 140 of file bbtqueue.cpp.

◆ least() [2/6]

TQItem* TQueue::least ( )

◆ 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 ( )

Definition at line 131 of file bbtqueue.cpp.

◆ least_t() [2/6]

double TQueue::least_t ( )

◆ 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 142 of file sptbinq.h.

◆ move() [1/6]

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

Definition at line 185 of file bbtqueue.cpp.

◆ move() [2/6]

void TQueue::move ( TQItem ,
double  tnew 
)

◆ 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)

Definition at line 178 of file bbtqueue.cpp.

◆ move_least() [2/6]

void TQueue::move_least ( double  tnew)

◆ 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 140 of file sptbinq.cpp.

◆ new_least() [1/2]

void TQueue::new_least ( )
private

Definition at line 158 of file bbtqueue.cpp.

◆ new_least() [2/2]

void TQueue::new_least ( )
private

◆ print() [1/6]

void TQueue::print ( )

Definition at line 109 of file bbtqueue.cpp.

◆ print() [2/6]

void TQueue::print ( )

◆ 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 271 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 i)

Definition at line 236 of file bbtqueue.cpp.

◆ remove() [2/6]

void TQueue::remove ( TQItem )

◆ 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 245 of file bbtqueue.cpp.

◆ reverse()

void TQueue::reverse ( TQItem b)
private

Definition at line 343 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 113 of file sptbinq.h.

◆ spike_stat() [1/4]

void TQueue::spike_stat ( double *  d)

Definition at line 189 of file spt2queue.cpp.

◆ spike_stat() [2/4]

void TQueue::spike_stat ( double *  )

◆ spike_stat() [3/4]

void TQueue::spike_stat ( double *  )

◆ spike_stat() [4/4]

void TQueue::spike_stat ( double *  )

◆ statistics() [1/6]

void TQueue::statistics ( )

Definition at line 477 of file bbtqueue.cpp.

◆ statistics() [2/6]

void TQueue::statistics ( )

◆ 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 117 of file sptbinq.h.

◆ top()

TQItem* TQueue::top ( )
inline

Definition at line 120 of file sptbinq.h.

Member Data Documentation

◆ binq_

BinQ* TQueue::binq_
private

Definition at line 151 of file sptbinq.h.

◆ fifo_

FifoQ* TQueue::fifo_
private

Definition at line 84 of file sptfifoq.h.

◆ least_

TQItem * TQueue::least_
private

Definition at line 54 of file bbtqueue.h.

◆ nbal [1/2]

unsigned long TQueue::nbal
private

Definition at line 58 of file bbtqueue.h.

◆ nbal [2/2]

MUTDEC unsigned long TQueue::nbal
private

Definition at line 156 of file sptbinq.h.

◆ ncmplxrem [1/2]

unsigned long TQueue::ncmplxrem
private

Definition at line 58 of file bbtqueue.h.

◆ ncmplxrem [2/2]

MUTDEC unsigned long TQueue::ncmplxrem
private

Definition at line 156 of file sptbinq.h.

◆ ncompare

unsigned long TQueue::ncompare
private

Definition at line 59 of file bbtqueue.h.

◆ nenq1

unsigned long TQueue::nenq1
private

Definition at line 67 of file spt2queue.h.

◆ nenq2

unsigned long TQueue::nenq2
private

Definition at line 67 of file spt2queue.h.

◆ nfastmove

unsigned long TQueue::nfastmove
private

Definition at line 59 of file bbtqueue.h.

◆ nfind

unsigned long TQueue::nfind
private

Definition at line 59 of file bbtqueue.h.

◆ nfindsrch

unsigned long TQueue::nfindsrch
private

Definition at line 59 of file bbtqueue.h.

◆ ninsert [1/2]

unsigned long TQueue::ninsert
private

Definition at line 58 of file bbtqueue.h.

◆ ninsert [2/2]

MUTDEC unsigned long TQueue::ninsert
private

Definition at line 156 of file sptbinq.h.

◆ nleast [1/2]

unsigned long TQueue::nleast
private

Definition at line 58 of file bbtqueue.h.

◆ nleast [2/2]

MUTDEC unsigned long TQueue::nleast
private

Definition at line 156 of file sptbinq.h.

◆ nleastsrch

unsigned long TQueue::nleastsrch
private

Definition at line 59 of file bbtqueue.h.

◆ nmove

unsigned long TQueue::nmove
private

Definition at line 59 of file bbtqueue.h.

◆ nrem [1/2]

unsigned long TQueue::nrem
private

Definition at line 58 of file bbtqueue.h.

◆ nrem [2/2]

MUTDEC unsigned long TQueue::nrem
private

Definition at line 156 of file sptbinq.h.

◆ nshift_

int TQueue::nshift_

Definition at line 133 of file sptbinq.h.

◆ root_

TQItem * TQueue::root_
private

Definition at line 55 of file bbtqueue.h.

◆ sptree2_

SPTREE* TQueue::sptree2_
private

Definition at line 62 of file spt2queue.h.

◆ sptree_ [1/2]

SPTREE * TQueue::sptree_
private

Definition at line 61 of file spt2queue.h.

◆ sptree_ [2/2]

SPTREE<TQItem>* TQueue::sptree_
private

Definition at line 150 of file sptbinq.h.

◆ tpool_

TQItemPool* TQueue::tpool_
private

Definition at line 153 of file sptbinq.h.


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