> > Yes, you can set individual branch addresses and read only one or a few > branches. The problem in your case is that you seem to have a branch > with an int*. You cannot read this branch alone. You also need the > accompanying branch holding the length of the array. > Currently, I assume that both the counter and the array are in the same class. > Hmm, the sub-branch I'm trying to read isn't an int*, it's just a plain int. (However the class for the super-branch does have a couple of arrays). Here's the full class for the split branch: class EventNtuple: public TObject { public: int Eventno; int Run; int RunType; int Time[2]; int RawWords; float RadS; float ThetaS; float PhiS; float Yaw; float Pitch; float Roll; float VelocityS; float VelTheta; float VelPhi; float ThetaM; float PhiM; int Particles; int Tracks; int Betas; int Charges; int TrRecHits; int TrClusters; int TrRawClusters; int TrMCClusters; int TOFClusters; int TOFMCClusters; int CTCClusters; int CTCMCClusters; int AntiMCClusters; int AntiClusters; int EventStatus; }; I'm trying to set the branch address using int* evptr = 0; amstree->SetBranchAddress("Eventno",&evptr) The 2nd argument of SetBranchAddress should be the address of a pointer, right? I tried all sorts of other things, too... I tried putting in the address of an int instead , I tried first instantiating the int that evptr is pointing to, etc.) But GetEvent reads in nothing for the sub-branch, although it works fine for setting the top branch level address. Kate.
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:51 MET