/////////////////////////////////////////////////////////////////////////////// // Apr 15 2001 P.Murat: data part of the muon stub (should fit everything - // CMU/CMP/CMX) /////////////////////////////////////////////////////////////////////////////// #include "TMath.h" #include ClassImp(TBaseMuonStub) //_____________________________________________________________________________ TBaseMuonStub::TBaseMuonStub() { memset(&fGeomCode,0,((char*)&fEOR)-((char*)&fGeomCode)); } //_____________________________________________________________________________ TBaseMuonStub::TBaseMuonStub(const TBaseMuonStub& stub) { // trying to make the copy constructor as efficient as possible memcpy(this,&stub,((char*)&fEOR)-((char*)this)); } //_____________________________________________________________________________ TBaseMuonStub::TBaseMuonStub(const TBaseMuonStub& stub, Int_t define_all) { // trying to make the copy constructor as efficient as possible memcpy(this,&stub,((char*)&fEOR)-((char*)this)); if (define_all) { // calculate missing parameters, such // as theta and phi angles of the stub // phi with respect to the wedge Double_t dphi = atan(fDyDx); // wedge phi0 refers to the angle of // X axis // fPhi = dphi+fChamber->Phi0()+TMath::Pi()/2; } } //_____________________________________________________________________________ TBaseMuonStub::~TBaseMuonStub() { } //_____________________________________________________________________________ void TBaseMuonStub::Print(Option_t* option) const { printf(" *** dummy TBaseMuonStub::Print called\n"); } //_____________________________________________________________________________ void TBaseMuonStub::Clear(Option_t* option) { for (int i=0; i> fGeomCode; R__b >> fDigiCode; R__b >> fFitType; R__b >> fNHits; if(R__v>=2) { R__b >> fNcHits; } else { fNcHits = 0; } R__b >> fTrigTower; R__b >> fPhi; R__b >> fTheta; R__b >> fChi2XY; R__b >> fChi2XZ; R__b >> fY0; R__b >> fDyDx; R__b >> fZ0; R__b >> fDzDx; R__b.CheckByteCount(R__s, R__c, TBaseMuonStub::IsA()); } else { R__c = R__b.WriteVersion(TBaseMuonStub::IsA(), kTRUE); TObject::Streamer(R__b); R__b << fGeomCode; R__b << fDigiCode; R__b << fFitType; R__b << fNHits; R__b << fNcHits; R__b << fTrigTower; R__b << fPhi; R__b << fTheta; R__b << fChi2XY; R__b << fChi2XZ; R__b << fY0; R__b << fDyDx; R__b << fZ0; R__b << fDzDx; R__b.SetByteCount(R__c, kTRUE); } }