Print object.
411 {
413
414 if (info != NULL) {
415
416 for (TIter next(info->GetElements()); TStreamerElement* ts = dynamic_cast<TStreamerElement*>(next()); ) {
417
418 if (this->count(ts->GetTypeName()) != 0) {
419
420 if (ts->GetArrayLength() == 0)
421 this->
print(out, prefix +
"." + ts->GetName(), ts->GetTypeName(), ps + ts->GetOffset());
422 else
423 this->
print(out, prefix +
"." + ts->GetName(), ts->GetTypeName(), ps + ts->GetOffset(), ts->GetArrayLength(), ts->GetSize() / ts->GetArrayLength());
424
425 } else if (ts->GetClass() != NULL) {
426
427 if (ts->IsaPointer()) {
428
429 char* po = NULL;
430
431 memcpy(&po, ps + ts->GetOffset(), sizeof(char*));
432
433 if (po != NULL) {
434
435 if (ts->GetClass()->InheritsFrom(TList::Class())) {
436
437 this->
print(out, prefix +
"." + ts->GetName(), JRootWritableClass(TList::Class(), po));
438
439 } else {
440
441 this->
print(out, prefix +
"." + ts->GetName(), ts->GetClass()->GetStreamerInfo(), po);
442 }
443
444 } else {
445
446 out << prefix << "." << ts->GetName() << " <" << ts->GetTypeName() << "> " << "NULL" << endl;
447 }
448
449 } else if (ts->GetClass()->InheritsFrom(TArray::Class())) {
450
451 print(out, prefix +
"." + ts->GetName(), JRootWritableClass(TArray::Class(), ps + ts->GetOffset()));
452
453 } else if (ts->GetClass()->InheritsFrom(TDirectory::Class())) {
454
455
456
457 } else if (ts->GetClass()->GetCollectionProxy() != NULL) {
458
459 print(out, prefix +
"." + ts->GetName(), JRootWritableClass(ts->GetClass(), ps + ts->GetOffset()));
460
461 } else {
462
464 this->
print(out, prefix +
"." + ts->GetName(), ts->GetClass()->GetStreamerInfo(), ps + ts->GetOffset());
465 }
466 }
467 }
468 }
469 }
470 }