From c070608d9f2024dc533f224d257e61a608d43b1d Mon Sep 17 00:00:00 2001 From: Rene Brun <Rene.Brun@cern.ch> Date: Fri, 26 Dec 2003 22:06:40 +0000 Subject: [PATCH] Changes to support -Long64 and ULong64_t -Double32_t git-svn-id: http://root.cern.ch/svn/root/trunk@7805 27541ba8-7e3a-0410-8455-c3a389f83636 --- tree/src/TBranchElement.cxx | 70 ++++++++++++++++++++++++------------- 1 file changed, 45 insertions(+), 25 deletions(-) diff --git a/tree/src/TBranchElement.cxx b/tree/src/TBranchElement.cxx index 7fddec99c97..e533928a910 100644 --- a/tree/src/TBranchElement.cxx +++ b/tree/src/TBranchElement.cxx @@ -1,4 +1,4 @@ -// @(#)root/tree:$Name: $:$Id: TBranchElement.cxx,v 1.123 2003/12/08 15:55:24 brun Exp $ +// @(#)root/tree:$Name: $:$Id: TBranchElement.cxx,v 1.124 2003/12/25 17:55:20 brun Exp $ // Author: Rene Brun 14/01/2001 /************************************************************************* @@ -830,18 +830,23 @@ void TBranchElement::FillLeaves(TBuffer &b) n *= leaf->GetLenStatic(); } switch (atype) { - case 1: {b.WriteFastArray((Char_t*) fAddress, n); break;} - case 2: {b.WriteFastArray((Short_t*) fAddress, n); break;} - case 3: {b.WriteFastArray((Int_t*) fAddress, n); break;} - case 4: {b.WriteFastArray((Long_t*) fAddress, n); break;} - case 5: {b.WriteFastArray((Float_t*) fAddress, n); break;} - case 6: {b.WriteFastArray((Int_t*) fAddress, n); break;} - case 8: {b.WriteFastArray((Double_t*)fAddress, n); break;} - case 11: {b.WriteFastArray((UChar_t*) fAddress, n); break;} - case 12: {b.WriteFastArray((UShort_t*)fAddress, n); break;} - case 13: {b.WriteFastArray((UInt_t*) fAddress, n); break;} - case 14: {b.WriteFastArray((ULong_t*) fAddress, n); break;} - case 15: {b.WriteFastArray((UInt_t*) fAddress, n); break;} + case 1: {b.WriteFastArray((Char_t*) fAddress, n); break;} + case 2: {b.WriteFastArray((Short_t*) fAddress, n); break;} + case 3: {b.WriteFastArray((Int_t*) fAddress, n); break;} + case 4: {b.WriteFastArray((Long_t*) fAddress, n); break;} + case 5: {b.WriteFastArray((Float_t*) fAddress, n); break;} + case 6: {b.WriteFastArray((Int_t*) fAddress, n); break;} + case 8: {b.WriteFastArray((Double_t*) fAddress, n); break;} + case 11: {b.WriteFastArray((UChar_t*) fAddress, n); break;} + case 12: {b.WriteFastArray((UShort_t*) fAddress, n); break;} + case 13: {b.WriteFastArray((UInt_t*) fAddress, n); break;} + case 14: {b.WriteFastArray((ULong_t*) fAddress, n); break;} + case 15: {b.WriteFastArray((UInt_t*) fAddress, n); break;} + case 16: {b.WriteFastArray((Long64_t*) fAddress, n); break;} + case 17: {b.WriteFastArray((ULong64_t*)fAddress, n); break;} + case 9: {Double_t *xx = (Double_t*)fAddress; + for (Int_t ii=0;ii<n;ii++) b << (Float_t)xx[ii]; + break;} } return; } @@ -1254,17 +1259,19 @@ void TBranchElement::ReadLeaves(TBuffer &b) delete [] *where; *where = 0; switch(len_atype) { - case 1: {length = ((Char_t*)len_where)[k]; break;} - case 2: {length = ((Short_t*) len_where)[k]; break;} - case 3: {length = ((Int_t*) len_where)[k]; break;} - case 4: {length = ((Long_t*) len_where)[k]; break;} + case 1: {length = ((Char_t*) len_where)[k]; break;} + case 2: {length = ((Short_t*) len_where)[k]; break;} + case 3: {length = ((Int_t*) len_where)[k]; break;} + case 4: {length = ((Long_t*) len_where)[k]; break;} //case 5: {length = ((Float_t*) len_where)[k]; break;} - case 6: {length = ((Int_t*) len_where)[k]; break;} + case 6: {length = ((Int_t*) len_where)[k]; break;} //case 8: {length = ((Double_t*)len_where)[k]; break;} - case 11: {length = ((UChar_t*) len_where)[k]; break;} - case 12: {length = ((UShort_t*)len_where)[k]; break;} - case 13: {length = ((UInt_t*) len_where)[k]; break;} - case 14: {length = ((ULong_t*) len_where)[k]; break;} + case 11: {length = ((UChar_t*) len_where)[k]; break;} + case 12: {length = ((UShort_t*) len_where)[k]; break;} + case 13: {length = ((UInt_t*) len_where)[k]; break;} + case 14: {length = ((ULong_t*) len_where)[k]; break;} + case 15: {length = ((Long64_t*) len_where)[k]; break;} + case 16: {length = ((ULong64_t*)len_where)[k]; break;} default: continue; } b >> isArray; @@ -1282,7 +1289,8 @@ void TBranchElement::ReadLeaves(TBuffer &b) case 12: {*where=new char[sizeof(UShort_t)*length]; b.ReadFastArray((UShort_t*)*where, length); break;} case 13: {*where=new char[sizeof(UInt_t)*length]; b.ReadFastArray((UInt_t*) *where, length); break;} case 14: {*where=new char[sizeof(ULong_t)*length]; b.ReadFastArray((ULong_t*) *where, length); break;} - case 15: {*where=new char[sizeof(UInt_t)*length]; b.ReadFastArray((UInt_t*) *where, length); break;} + case 15: {*where=new char[sizeof(Long64_t)*length]; b.ReadFastArray((Long64_t*) *where, length); break;} + case 16: {*where=new char[sizeof(ULong64_t)*length]; b.ReadFastArray((ULong64_t*)*where, length); break;} } } return; @@ -1304,7 +1312,13 @@ void TBranchElement::ReadLeaves(TBuffer &b) case 12: {b.ReadFastArray((UShort_t*)fAddress, n); break;} case 13: {b.ReadFastArray((UInt_t*) fAddress, n); break;} case 14: {b.ReadFastArray((ULong_t*) fAddress, n); break;} - case 15: {b.ReadFastArray((UInt_t*) fAddress, n); break;} + case 15: {b.ReadFastArray((Long64_t*)fAddress, n); break;} + case 16: {b.ReadFastArray((ULong64_t*)fAddress, n); break;} + case 9: {Double_t *xx = (Double_t*)fAddress; + Float_t afloat; + for (Int_t ii=0;ii<n;ii++) { + b>> afloat; xx[ii] = Double_t(afloat); + } break;} } return; } else if (fType <= 2) { // branch in split mode @@ -1326,7 +1340,13 @@ void TBranchElement::ReadLeaves(TBuffer &b) case 12: {b.ReadFastArray((UShort_t*)fAddress, n); break;} case 13: {b.ReadFastArray((UInt_t*) fAddress, n); break;} case 14: {b.ReadFastArray((ULong_t*) fAddress, n); break;} - case 15: {b.ReadFastArray((UInt_t*) fAddress, n); break;} + case 15: {b.ReadFastArray((Long64_t*) fAddress, n); break;} + case 16: {b.ReadFastArray((ULong64_t*)fAddress, n); break;} + case 9: {Double_t *xx = (Double_t*)fAddress; + Float_t afloat; + for (Int_t ii=0;ii<n;ii++) { + b>> afloat; xx[ii] = Double_t(afloat); + } break;} } } else { fNdata = 1; -- GitLab