Print object.
543 {
545
546 if (info != NULL) {
547
548 for (TIter next(info->GetElements()); TStreamerElement* ts = dynamic_cast<TStreamerElement*>(next()); ) {
549
550 if (this->count(ts->GetTypeName()) != 0) {
551
552 if (ts->GetArrayLength() == 0)
553 this->
print(out, prefix +
"." + ts->GetName(), ts->GetTypeName(), ps + ts->GetOffset());
554 else
555 this->
print(out, prefix +
"." + ts->GetName(), ts->GetTypeName(), ps + ts->GetOffset(), ts->GetArrayLength(), ts->GetSize() / ts->GetArrayLength());
556
557 } else if (ts->GetClass() != NULL) {
558
559 if (ts->IsaPointer()) {
560
561 char* po = NULL;
562
563 memcpy(&po, ps + ts->GetOffset(), sizeof(char*));
564
565 if (po != NULL) {
566
567 if (ts->GetClass()->InheritsFrom(TList::Class())) {
568
569 this->
print(out, prefix +
"." + ts->GetName(), JRootWritableClass(TList::Class(), po));
570
571 } else {
572
573 this->
print(out, prefix +
"." + ts->GetName(), ts->GetClass()->GetStreamerInfo(), po);
574 }
575
576 } else {
577
578 out << prefix << "." << ts->GetName() << " <" << ts->GetTypeName() << "> " << "NULL" << endl;
579 }
580
581 } else if (ts->GetClass()->InheritsFrom(TArray::Class())) {
582
583 print(out, prefix +
"." + ts->GetName(), JRootWritableClass(TArray::Class(), ps + ts->GetOffset()));
584
585 } else if (ts->GetClass()->InheritsFrom(TDirectory::Class())) {
586
587
588
589 } else if (ts->GetClass()->GetCollectionProxy() != NULL) {
590
591 print(out, prefix +
"." + ts->GetName(), JRootWritableClass(ts->GetClass(), ps + ts->GetOffset()));
592
593 } else {
594
596 this->
print(out, prefix +
"." + ts->GetName(), ts->GetClass()->GetStreamerInfo(), ps + ts->GetOffset());
597 }
598 }
599 }
600 }
601 }
602 }