59 for (
auto q = bins[
i];
q;
q =
q->left_) {
69 int idt = (int) ((td -
tt_) *
rev_dt + 1.e-10);
105 for (
int i =
q->cnt_ + 1;
i <
nbin_; ++
i) {
210 n->leftlink =
nullptr;
211 n->rightlink =
nullptr;
230 temp =
next->rightlink;
231 if (temp ==
nullptr) {
232 left->rightlink =
next;
234 right->leftlink =
nullptr;
240 left->rightlink =
next;
247 next->rightlink = temp->leftlink;
248 if (temp->leftlink !=
nullptr)
249 temp->leftlink->uplink =
next;
250 left->rightlink = temp;
252 temp->leftlink =
next;
255 next = temp->rightlink;
256 if (
next ==
nullptr) {
257 right->leftlink =
nullptr;
269 temp =
next->leftlink;
270 if (temp ==
nullptr) {
271 right->leftlink =
next;
272 next->uplink = right;
273 left->rightlink =
nullptr;
279 right->leftlink =
next;
280 next->uplink = right;
285 next->leftlink = temp->rightlink;
286 if (temp->rightlink !=
nullptr)
287 temp->rightlink->uplink =
next;
288 right->leftlink = temp;
289 temp->uplink = right;
290 temp->rightlink =
next;
293 next = temp->leftlink;
294 if (
next ==
nullptr) {
295 left->rightlink =
nullptr;
308 n->leftlink =
n->rightlink;
334 if (
np ==
nullptr || *
np ==
nullptr) {
338 left =
next->leftlink;
339 if (left ==
nullptr) {
344 (*np)->uplink =
nullptr;
350 farleft = left->leftlink;
351 if (farleft ==
nullptr) {
353 next->leftlink = left->rightlink;
354 if (left->rightlink !=
nullptr)
355 left->rightlink->uplink =
next;
360 farfarleft = farleft->leftlink;
361 if (farfarleft ==
nullptr) {
363 left->leftlink = farleft->rightlink;
364 if (farleft->rightlink !=
nullptr)
365 farleft->rightlink->uplink = left;
370 next->leftlink = farleft;
371 farleft->uplink =
next;
372 left->leftlink = farleft->rightlink;
373 if (farleft->rightlink !=
nullptr)
374 farleft->rightlink->uplink = left;
375 farleft->rightlink = left;
376 left->uplink = farleft;
411 right =
n->rightlink;
415 while (up !=
nullptr) {
420 if (up->leftlink ==
prev)
422 if (upup !=
nullptr && upup->leftlink == up)
424 upupup = upup->uplink;
425 upup->leftlink = up->rightlink;
426 if (upup->leftlink !=
nullptr)
427 upup->leftlink->uplink = upup;
428 up->rightlink = upup;
430 if (upupup ==
nullptr)
432 else if (upupup->leftlink == upup)
433 upupup->leftlink = up;
435 upupup->rightlink = up;
439 up->leftlink = right;
440 if (right !=
nullptr)
446 if (upup !=
nullptr && upup->rightlink == up)
448 upupup = upup->uplink;
449 upup->rightlink = up->leftlink;
450 if (upup->rightlink !=
nullptr)
451 upup->rightlink->uplink = upup;
454 if (upupup ==
nullptr)
456 else if (upupup->rightlink == upup)
457 upupup->rightlink = up;
459 upupup->leftlink = up;
463 up->rightlink = left;
473 if (
q->root !=
prev) {
480 n->rightlink = right;
483 if (right !=
nullptr)
509 x->rightlink =
q->root;
510 x->leftlink =
nullptr;
512 if (
q->root !=
nullptr)
536 x =
spdeq(&
q->root->rightlink);
539 q->root =
q->root->leftlink;
541 q->root->uplink =
nullptr;
545 x->leftlink =
q->root->leftlink;
546 x->rightlink =
q->root->rightlink;
547 if (x->leftlink !=
nullptr)
548 x->leftlink->uplink = x;
549 if (x->rightlink !=
nullptr)
550 x->rightlink->uplink = x;
std::vector< std::vector< TQItem * > > vec_bins
void enqueue(double tt, TQItem *)
THIS FILE IS AUTO GENERATED DONT MODIFY IT.
SPBLK * spenq(SPBLK *n, SPTREE *q)
SPBLK * sphead(SPTREE *q)
SPBLK * spdeq(SPBLK **np)
void spdelete(SPBLK *n, SPTREE *q)
void splay(SPBLK *n, SPTREE *q)
int const size_t const size_t n
static double done(void *v)