#include "TManuEvent.hh" ClassImp(TManuHeader); ClassImp(TManuVertex); ClassImp(TManuTrack); ClassImp(TManuEvent); TClonesArray *TManuEvent::fgVertices = NULL; TClonesArray *TManuEvent::fgTracks = NULL; void TManuHeader::PrintHeader() { printf("Run = %10d, Event = %10d, InstLumi = %8.6e, Triggered = %2d (%3d, %3d)\n", GetRunNumber(), GetEventNumber(), GetInstLumi(), GetTriggered(), GetNClcEastHitsOver250(), GetNClcWestHitsOver250()); printf(" Beam = (%8.6e, %8.6e) +- (%8.6e, %8.6e)\n", GetBeamPosition()->X(), GetBeamPosition()->Y(), GetBeamPositionSigma()->X(), GetBeamPositionSigma()->Y()); } void TManuTrack::PrintTrack() { printf("Pt = %6.3f, Eta = %5.2f, Charge = %1.0f\n", GetPt(), GetEta(), GetCharge()); } void TManuVertex::PrintVertex() { printf("Class = %5d\n", GetClass()); } void TManuEvent::PrintHeader() { printf("// Header\n"); fHeader->PrintHeader(); } // void TManuEvent::PrintTrack(Int_t i) // { // printf("Track %5d\n", i); // fTracks[i]->TManuTrack::PrintTrack(); // } // void TManuEvent::PrintVertex(Int_t i) // { // printf("Vertex %4d\n", i); // fVertices[i]->TManuVertex::PrintVertex(); // } TManuEvent::TManuEvent() { if (!fgVertices) { fgVertices = new TClonesArray("TManuVertex", 20); } if (!fgTracks) { fgTracks = new TClonesArray("TManuTrack", 2000); } fVertices = fgVertices; fNVertices = 0; fTracks = fgTracks; fNTracks = 0; // Int_t i0,i1; // for (i0 = 0; i0 < 4; i0++) { // for (i1 = 0; i1 < 4; i1++) { // fMatrix[i0][i1] = 0.0; // } // } } TManuEvent::~TManuEvent() { delete fgVertices; delete fgTracks; if (fHeader) delete fHeader; } TManuHeader *TManuEvent::AddHeader() { fHeader = new TManuHeader(); return fHeader; } TManuVertex *TManuEvent::AddVertex() { TClonesArray &vertices = *fVertices; TManuVertex *vertex = new(vertices[fNVertices++]) TManuVertex(); return vertex; } TManuTrack *TManuEvent::AddTrack() { TClonesArray &tracks = *fTracks; TManuTrack *track = new(tracks[fNTracks++]) TManuTrack(); return track; }