/[PAMELA software]/eventviewer/flight/src/FEVdetector.cpp
ViewVC logotype

Diff of /eventviewer/flight/src/FEVdetector.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9 by mocchiut, Mon Feb 12 08:10:34 2007 UTC revision 1.11 by mocchiut, Mon Feb 26 17:30:32 2007 UTC
# Line 86  void FEVdetector::checkctrlword(){ Line 86  void FEVdetector::checkctrlword(){
86    var.SHOWDEC = 0;    var.SHOWDEC = 0;
87    var.TOF = 0;    var.TOF = 0;
88    var.AC = 0;    var.AC = 0;
89      var.RUN = 1;
90    var.TRK = 0;    var.TRK = 0;
91      var.ORB = 0;
92      var.TRG = 0;
93    var.CALO = 0;    var.CALO = 0;
94    var.S4 = 0;    var.S4 = 0;
95    var.ND = 0;    var.ND = 0;
# Line 122  void FEVdetector::checkctrlword(){ Line 125  void FEVdetector::checkctrlword(){
125    };    };
126  }  }
127    
128    void FEVdetector::SetDDEC(TString de){
129      ddec=de;
130    };
131    
132  void FEVdetector::GetWindow(){  void FEVdetector::GetWindow(){
133    otr->GetEntry(maxevent);    otr->GetEntry(maxevent);
134      //
135    if ( level.file < 2 ){    if ( level.file < 2 ){
136      ph = eh->GetPscuHeader();      ph = eh->GetPscuHeader();
137      lastevno = (int)ph->Counter;      lastevno = (int)ph->Counter;
138    } else {    } else {
139      lastevno = L2->GetOrbitalInfo()->pkt_num; // to be changed as soon as we will have pkt_counter in the level2 file!      if ( var.ORB ){
140          lastevno = L2->GetOrbitalInfo()->pkt_num;
141        } else {
142          lastevno = 0;
143        };
144    };    };
145    otr->GetEntry(minevent);    otr->GetEntry(minevent);
146    if ( level.file < 2 ){    if ( level.file < 2 ){
147      ph = eh->GetPscuHeader();      ph = eh->GetPscuHeader();
148      firstevno = (int)ph->Counter;      firstevno = (int)ph->Counter;
149    } else {    } else {
150      firstevno = L2->GetOrbitalInfo()->pkt_num; // to be changed as soon as we will have pkt_counter in the level2 file!      if ( var.ORB ){
151          firstevno = L2->GetOrbitalInfo()->pkt_num;
152        } else {
153          firstevno = 0;
154        };
155    };    };
156  }  }
157    
# Line 161  void FEVdetector::ClearVariables(){ Line 177  void FEVdetector::ClearVariables(){
177  void FEVdetector::GetEntry(Int_t i){  void FEVdetector::GetEntry(Int_t i){
178    thisentry = i;    thisentry = i;
179    otr->GetEntry(i);    otr->GetEntry(i);
180      //  PrintData(otr,-1LL,44);
181  }  }
182    
183  void FEVdetector::SetEntry(Int_t i){  void FEVdetector::SetEntry(Int_t i){
# Line 281  void FEVdetector::ColorTRKMIP(Float_t mi Line 298  void FEVdetector::ColorTRKMIP(Float_t mi
298    };    };
299  }  }
300    
301    void FEVdetector::PrintLeaves(TTree *otr, Int_t i, TBranchElement *tb, Int_t lenmax){
302      // -- Prints values of leaves.
303    
304      //  tb->ValidateAddress();
305      printf("son qua \n");
306    
307      //  if (otr->GetMakeClass()) {
308        if (!tb->GetAddress()) {
309          printf("esco \n");
310          return;
311        }
312        if (tb->GetType() == 3 || tb->GetType() == 4) {
313          // TClonesArray or STL container top-level branch.
314          printf("3 o 4 %-15s = %d\n", tb->GetName(), tb->GetNdata());
315          return;
316        } else if (tb->GetType() == 31 || tb->GetType() == 41) {
317          printf(" 31 o 41 \n");
318          // TClonesArray or STL container sub-branch.
319          Int_t n = TMath::Min(10, tb->GetNdata());
320          Int_t atype = tb->GetStreamerType() + 20;
321          if (tb->GetStreamerType() == 1) {
322            // TVirtualStreamerInfo::kOffsetL + TVirtualStreamerInfo::kChar is
323            // printed as a string and could print weird characters.
324            // So we print an unsigned char instead (not perfect, but better).
325            atype = 20 + 11 ;
326          }
327          if (atype > 54) {
328            // FIXME: More logic required here (like in ReadLeaves)
329            printf(">54 %-15s = %d\n", tb->GetName(), tb->GetNdata());
330            return;
331          }
332          if (tb->GetStreamerType() > 20) {
333            atype -= 20;
334            TObjArray *prova= otr->GetListOfLeaves();
335            //      TObjArray* leaf2 = (TObjArray*) prova->UncheckedAt(i);
336            //TLeaf* leaf = (TLeaf*)(otr->GetLeaf(tb->GetName()));
337            //      TLeafElement* leaf = (TLeafElement*)((TLeaf*)(otr->GetListOfLeaves()->UncheckedAt(i))->GetBranch()->UncheckedAt(0));
338            TLeafElement* leaf = (TLeafElement*)(prova->UncheckedAt(0));
339            n = n * leaf->GetLenStatic();
340          }
341          if (tb->GetInfo()) {
342            //      n = 16;
343            tb->GetInfo()->PrintValue(tb->GetName(), tb->GetAddress(), atype, n, lenmax);
344            //tb->GetObject()->GetInfo()->PrintValue(tb->GetName(), tb->GetObject(), atype, n, lenmax);
345          }
346          return;
347        } else if (tb->GetType() <= 2) {
348          printf(" <=2 \n");
349          // Branch in split mode.
350          // FIXME: This should probably be < 60 instead.
351          if ((tb->GetStreamerType() > 40) && (tb->GetStreamerType() < 55)) {
352            Int_t atype = tb->GetStreamerType() - 20;
353            TBranchElement* counterElement = (TBranchElement*) tb->GetBranchCount();
354            Int_t n = (Int_t) counterElement->GetValue(0, 0);
355            if (tb->GetInfo()) {
356              tb->GetInfo()->PrintValue(tb->GetName(), tb->GetAddress(), atype, n, lenmax);
357            }
358          } else {
359            //      if (tb->GetInfo()) {
360            //        tb->GetInfo()->PrintValue(tb->GetName(), tb->GetObject(), tb->GetID(), -1, lenmax);
361            //             }
362            //          }
363            return;
364          }
365        } else if (tb->GetType() == 3) {
366          printf("3 %-15s = %d\n", tb->GetName(), tb->GetNdata());
367        } else if (tb->GetType() == 31) {
368          printf("31 %-15s = %d\n", tb->GetName(), tb->GetNdata());
369          //     TClonesArray* clones = (TClonesArray*) tb->GetObject();
370          //     if (tb->GetInfo()) {
371          //       tb->GetInfo()->PrintValueClones(tb->GetName(), clones, tb->GetID(), tb->GetOffset(), lenmax);
372          //       }
373        } else if (tb->GetType() == 41) {
374          printf("41 %-15s = %d\n", tb->GetName(), tb->GetNdata());
375          //       TVirtualCollectionProxy::TPushPop helper(((TBranchElement*) this)->GetCollectionProxy(), fObject);
376          //       if (GetInfo()) {
377          //          GetInfo()->PrintValueSTL(GetName(), ((TBranchElement*) this)->GetCollectionProxy(), fID, fOffset, lenmax);
378          //       }
379        } else {
380          printf("else %-15s = %d\n", tb->GetName(), tb->GetNdata());
381          //       if (GetInfo()) {
382          //          GetInfo()->PrintValue(GetName(), fObject, fID, -1, lenmax);
383          //       }
384        }
385    
386        //  };
387      printf("esco qui\n");
388    };
389    
390    void FEVdetector::PrintData(TTree *tree, Long64_t entry=-1LL,Int_t lenmax=44){
391      // -- Print values of all active leaves for entry.
392      //
393      // if entry==-1, print current entry (default)
394      // if a leaf is an array, a maximum of lenmax elements is printed.
395      //
396      if (entry != -1) {
397        tree->GetEntry(entry);
398      }
399      //  printf("======> EVENT:%lld\n", thisentry);
400      printf("======> EVENT:%i\n", thisentry);
401      TObjArray* leaves  = tree->GetListOfLeaves(); //
402      Int_t nleaves = leaves->GetEntriesFast();
403      Int_t ltype;
404      for (Int_t i = 0; i < nleaves; i++) {
405        TLeaf* leaf = (TLeaf*) leaves->UncheckedAt(i);
406        TBranch* branch = leaf->GetBranch();
407        //    if (branch->TestBit(kDoNotProcess)) {
408        //      continue;
409        //    }
410        Int_t len = leaf->GetLen();
411        if (len <= 0) {
412          continue;
413        }
414        len = TMath::Min(len, lenmax);
415        if (leaf->IsA() == TLeafElement::Class()) {
416          //      Double_t value = leaf->GetValue(lenmax);
417          //printf(" ioqui %f \n",value);
418          //      ((TBranchElement*)leaf->GetBranch())->PrintValue(i);
419          this->PrintLeaves(otr,i,((TBranchElement*)leaf->GetBranch()), lenmax);
420          //leaf->PrintValue(lenmax);
421          continue;
422        }
423        if (branch->GetListOfBranches()->GetEntriesFast() > 0) {
424          continue;
425        }
426        ltype = 10;
427        if (leaf->IsA() == TLeafF::Class()) {
428          ltype = 5;
429        }
430        if (leaf->IsA() == TLeafD::Class()) {
431          ltype = 5;
432        }
433        if (leaf->IsA() == TLeafC::Class()) {
434          len = 1;
435          ltype = 5;
436        };
437        printf(" %-15s = ", leaf->GetName());
438        for (Int_t l = 0; l < len; l++) {
439          Double_t value = leaf->GetValue(l);
440          printf(" ioqui %f \n",value);
441          //      leaf->PrintValue(l);
442          if (l == (len - 1)) {
443            printf("\n");
444            continue;
445          }
446          printf(", ");
447          if ((l % ltype) == 0) {
448            printf("\n                  ");
449          }
450        }
451      }
452    };
453    
454  void FEVdetector::GetGeneralInfo(){  void FEVdetector::GetGeneralInfo(){
455    //    //
456    // Get Orbital Time information and header event number    // Get Orbital Time information and header event number
# Line 326  void FEVdetector::GetGeneralInfo(){ Line 496  void FEVdetector::GetGeneralInfo(){
496      trcs = (TString)trc.str().c_str();      trcs = (TString)trc.str().c_str();
497    } else {    } else {
498      headcold = headc;      headcold = headc;
499      headc = L2->GetOrbitalInfo()->pkt_num; // to be changed as soon as we will have obt in the level2 file!      if ( var.ORB ){
500      OBT = L2->GetOrbitalInfo()->OBT; // to be changed as soon as we will have obt in the level2 file!        headc = L2->GetOrbitalInfo()->pkt_num;
501      DOBT = OBT - OOBT;        OBT = L2->GetOrbitalInfo()->OBT;
502      OOBT = OBT;        DOBT = OBT - OOBT;
503      if ( thisentry == minevent || DOBT < 0 || (headc-headcold-1)!=0 ) DOBT = 0;        OOBT = OBT;
504      var.etime = OBT;        if ( thisentry == minevent || DOBT < 0 || (headc-headcold-1)!=0 ) DOBT = 0;
505          var.etime = OBT;
506        } else {
507          var.etime = 0;
508        };
509      //            //      
510      // who gave the trigger?      // who gave the trigger?
511      //      //
512      calotrig = 0;      Int_t trigconf = 0;
513      if ( L2->GetTrigLevel2()->patterntrig[0] ) calotrig = 1;      if ( var.TRG ){
514      toftrig = 0;        calotrig = 0;
515      if ( L2->GetTrigLevel2()->patterntrig[2] || L2->GetTrigLevel2()->patterntrig[3] || L2->GetTrigLevel2()->patterntrig[4] || L2->GetTrigLevel2()->patterntrig[5] ) toftrig = 1;        if ( L2->GetTrigLevel2()->patterntrig[0] ) calotrig = 1;
516      s4pulser = 0;        toftrig = 0;
517      if ( L2->GetTrigLevel2()->patterntrig[1] & (1<<0) ) s4pulser = 1;        if ( L2->GetTrigLevel2()->patterntrig[2] || L2->GetTrigLevel2()->patterntrig[3] || L2->GetTrigLevel2()->patterntrig[4] || L2->GetTrigLevel2()->patterntrig[5] ) toftrig = 1;
518      //        s4pulser = 0;
519      // TOF and calorimeter when giving a trigger will always set this flag since the time window of the signal is greater than 100 ns.        if ( L2->GetTrigLevel2()->patterntrig[1] & (1<<0) ) s4pulser = 1;
520      // S4 sometimes could not set the flag even if the trigger is given. This is a workaround to fix this "bug":        //
521      //        // TOF and calorimeter when giving a trigger will always set this flag since the time window of the signal is greater than 100 ns.
522      if ( !calotrig && !toftrig ) s4pulser = 1;        // S4 sometimes could not set the flag even if the trigger is given. This is a workaround to fix this "bug":
523      //        //
524      Int_t trigconf = L2->GetTrigLevel2()->trigconf;        if ( !calotrig && !toftrig ) s4pulser = 1;
525          //
526          trigconf = L2->GetTrigLevel2()->trigconf;
527        } else {
528          trigconf = 0;
529        }
530      stringstream trc;      stringstream trc;
531      trc.str("");      trc.str("");
532      if ( trigconf & (1<<0) ) trc << "TOF1";      if ( trigconf & (1<<0) ) trc << "TOF1";
# Line 456  int FEVdetector::SelectEvent(){ Line 635  int FEVdetector::SelectEvent(){
635        //        //
636        if ( level.file == -1 ) isOK = gApplication->ProcessLine("filter((TTree *)otr,-1,(Variables &)var);");        if ( level.file == -1 ) isOK = gApplication->ProcessLine("filter((TTree *)otr,-1,(Variables &)var);");
637        //        //
638        if ( level.file ==  2 ) isOK = gApplication->ProcessLine("filter((PamLevel2 *)L2,2);");        //      if ( level.file ==  2 ) isOK = gApplication->ProcessLine("filter((PamLevel2 *)L2,2);");
639          if ( level.file ==  2 ) isOK = gApplication->ProcessLine("filter();");
640        //        //
641        // progress bar in text window        // progress bar in text window
642        //        //
# Line 469  int FEVdetector::SelectEvent(){ Line 649  int FEVdetector::SelectEvent(){
649    //    //
650  }  }
651    
652  void FEVdetector::Load(TTree &mainotr, TFile &mainfile){  Int_t FEVdetector::Load(TTree &mainotr, TFile &mainfile){
653      //Int_t FEVdetector::Load(TChain &mainotr, TFile &mainfile){
654    file = &mainfile;    file = &mainfile;
655    otr = &mainotr;    otr = &mainotr;
656    L2 = new PamLevel2();    L2 = new PamLevel2();
657    //    //
658    if ( level.file == 2 ){    if ( level.file == 2 ){
659      //    otr = L2->LoadPamTrees(file);      //    otr = L2->LoadPamTrees(file);
660      otr = L2->GetPamTree(file,"+ALL +CAL1 -TRKh -TRK1");      printf(" %s \n",ddec.Data());
661        //    otr->Refresh();
662        //    otr->Clear();
663        //    otr = new TTree();
664        otr = L2->GetPamTree(file,ddec.Data());
665        //
666        if ( !otr ) return(0);
667      // ********************      // ********************
668      // load magnetic field      // load magnetic field
669      // ********************      // ********************
670      const char *pam_calib = pathtocalibration();      //    const char *pam_calib = pathtocalibration();
671      //      //
672      stringstream magfie;      //    stringstream magfie;
673      magfie.str("");      //    magfie.str("");
674      //    magfie << "/localdisk/mocchiut/test/calib/trk-param/field_param-0/";      //    magfie << "/localdisk/mocchiut/test/calib/trk-param/field_param-0/";
675      magfie << pam_calib;      // magfie << pam_calib;
676      magfie << "/trk-param/field_param-0/";      //magfie << "/trk-param/field_param-0/";
677      //      //
678      L2->GetTrkLevel2()->LoadField(magfie.str().c_str());      //L2->GetTrkLevel2()->LoadField(magfie.str().c_str());
679    } else {    } else {
680      //      //
681      // load calorimeter ADC2MIP conversion file      // load calorimeter ADC2MIP conversion file
# Line 528  void FEVdetector::Load(TTree &mainotr, T Line 715  void FEVdetector::Load(TTree &mainotr, T
715      //      //
716    };    };
717    //    //
   
718    //    //
719    trigger = new pamela::trigger::TriggerEvent();    trigger = new pamela::trigger::TriggerEvent();
720    eh = new pamela::EventHeader();    eh = new pamela::EventHeader();
# Line 547  void FEVdetector::Load(TTree &mainotr, T Line 733  void FEVdetector::Load(TTree &mainotr, T
733      otr->SetBranchAddress("Trigger", &trigger);      otr->SetBranchAddress("Trigger", &trigger);
734      otr->SetBranchAddress("Header", &eh);      otr->SetBranchAddress("Header", &eh);
735    };    };
736    if ( level.file == 2 ){    if ( level.file == 2 && var.RUN){
737      //    otr->AddFriend("OrbitalInfo", file);            //    otr->AddFriend("OrbitalInfo", file);      
738      //    otr->SetBranchAddress("OrbitalInfo", &oinfoL2);              //    otr->SetBranchAddress("OrbitalInfo", &oinfoL2);        
739      runinfo->Read(0ULL);      runinfo->Read(0ULL);
# Line 623  void FEVdetector::Load(TTree &mainotr, T Line 809  void FEVdetector::Load(TTree &mainotr, T
809        printf("Show the Time of Flight detector, LEVEL2 data \n");        printf("Show the Time of Flight detector, LEVEL2 data \n");
810      };      };
811    };    };
812      //
813      //  printf("qua\n");
814      return(1);
815    //        //    
816  }  }
817    
# Line 3683  void FEVdetector::ShowAC(){ Line 3872  void FEVdetector::ShowAC(){
3872      pcasp4b->Draw("f");      pcasp4b->Draw("f");
3873      pcasp4b->Draw();      pcasp4b->Draw();
3874    };    };
3875    Float_t alfa = 1.2020334;    //  Float_t alfax = 1.2020334;
3876      Float_t alfax = 1.22157778;
3877      Float_t alfay = 1.27393111;
3878    Float_t lcrd = 0.1815/2.;    Float_t lcrd = 0.1815/2.;
3879    Float_t wcrd = 0.008;    Float_t wcrd = 0.008;
3880    if ( true ){    if ( true ){
# Line 3894  void FEVdetector::ShowAC(){ Line 4085  void FEVdetector::ShowAC(){
4085      //      //
4086      //    Float_t cardcx = 0.143168*var.sfx;      //    Float_t cardcx = 0.143168*var.sfx;
4087      //Float_t cardcy = 0.1475*var.sfy;      //Float_t cardcy = 0.1475*var.sfy;
4088      Float_t cardcx = 0.153168*var.sfx;      //
4089      Float_t cardcy = 0.1575*var.sfy;      //    Float_t cardcx = 0.153168*var.sfx;
4090      Float_t acrdx[4] = {-lcrd*cos(alfa), lcrd*cos(alfa), -lcrd*cos(alfa)+wcrd*sin(alfa), -lcrd*cos(alfa)};      //
4091      Float_t acrdy[4] = {-lcrd*sin(alfa), lcrd*sin(alfa), -lcrd*sin(alfa)-wcrd*cos(alfa), -lcrd*sin(alfa)};      Float_t cardcx = (0.19123*(1.-lcrd*cos(alfax)))*var.sfx;
4092      Float_t bcrdx[4] = { lcrd*cos(alfa), lcrd*cos(alfa)+wcrd*sin(alfa), -lcrd*cos(alfa)+wcrd*sin(alfa), lcrd*cos(alfa)};      //    Float_t cardcy = 0.1575*var.sfy;
4093      Float_t bcrdy[4] = { lcrd*sin(alfa), lcrd*sin(alfa)-wcrd*cos(alfa), -lcrd*sin(alfa)-wcrd*cos(alfa), lcrd*sin(alfa)};      Float_t cardcy = (0.179212*(1.-lcrd*sin(alfax)))*var.sfy;
4094        Float_t acrdx[4] = {-lcrd*cos(alfax), lcrd*cos(alfax), -lcrd*cos(alfax)+wcrd*sin(alfax), -lcrd*cos(alfax)};
4095        Float_t acrdy[4] = {-lcrd*sin(alfax), lcrd*sin(alfax), -lcrd*sin(alfax)-wcrd*cos(alfax), -lcrd*sin(alfax)};
4096        Float_t bcrdx[4] = { lcrd*cos(alfax), lcrd*cos(alfax)+wcrd*sin(alfax), -lcrd*cos(alfax)+wcrd*sin(alfax), lcrd*cos(alfax)};
4097        Float_t bcrdy[4] = { lcrd*sin(alfax), lcrd*sin(alfax)-wcrd*cos(alfax), -lcrd*sin(alfax)-wcrd*cos(alfax), lcrd*sin(alfax)};
4098    
4099      //      //
4100      // CARD3  X/  Y      // CARD3  X/  Y
# Line 3959  void FEVdetector::ShowAC(){ Line 4154  void FEVdetector::ShowAC(){
4154    };    };
4155    
4156    if ( true ){    if ( true ){
4157      Float_t acrdx[4] = {-lcrd*cos(alfa), lcrd*cos(alfa), -lcrd*cos(alfa)+wcrd*sin(alfa), -lcrd*cos(alfa)};      Float_t acrdx[4] = {-lcrd*cos(alfay), lcrd*cos(alfay), -lcrd*cos(alfay)+wcrd*sin(alfay), -lcrd*cos(alfay)};
4158      Float_t acrdy[4] = {-lcrd*sin(alfa), lcrd*sin(alfa), -lcrd*sin(alfa)-wcrd*cos(alfa), -lcrd*sin(alfa)};      Float_t acrdy[4] = {-lcrd*sin(alfay), lcrd*sin(alfay), -lcrd*sin(alfay)-wcrd*cos(alfay), -lcrd*sin(alfay)};
4159      Float_t bcrdx[4] = { lcrd*cos(alfa), lcrd*cos(alfa)+wcrd*sin(alfa), -lcrd*cos(alfa)+wcrd*sin(alfa), lcrd*cos(alfa)};      Float_t bcrdx[4] = { lcrd*cos(alfay), lcrd*cos(alfay)+wcrd*sin(alfay), -lcrd*cos(alfay)+wcrd*sin(alfay), lcrd*cos(alfay)};
4160      Float_t bcrdy[4] = { lcrd*sin(alfa), lcrd*sin(alfa)-wcrd*cos(alfa), -lcrd*sin(alfa)-wcrd*cos(alfa), lcrd*sin(alfa)};      Float_t bcrdy[4] = { lcrd*sin(alfay), lcrd*sin(alfay)-wcrd*cos(alfay), -lcrd*sin(alfay)-wcrd*cos(alfay), lcrd*sin(alfay)};
4161      //      //
4162      // CARD - Y-view      // CARD - Y-view
4163      //      //
4164      Float_t cardcx = 0.12*var.sfx;      //    Float_t cardcx = 0.12*var.sfx;
4165      Float_t cardcy = 0.1475*var.sfy;      Float_t cardcx = (0.16014*(1.-lcrd*cos(alfay)))*var.sfx;
4166        //    Float_t cardcy = 0.178818*var.sfy;
4167        Float_t cardcy = (0.178818*(1.-lcrd*sin(alfay)))*var.sfy;
4168        //    Float_t cardcy = 0.1475*var.sfy;
4169      //      //
4170      // CARD4  X  Y/      // CARD4  X  Y/
4171      //      //
# Line 4533  void FEVdetector::ShowTRK(Bool_t upd){ Line 4731  void FEVdetector::ShowTRK(Bool_t upd){
4731        //        //
4732        if ( L2->GetTrkLevel2()->GetNTracks() > 0 ){        if ( L2->GetTrkLevel2()->GetNTracks() > 0 ){
4733          for (Int_t nt = 0; nt < L2->GetTrkLevel2()->GetNTracks(); nt++){          for (Int_t nt = 0; nt < L2->GetTrkLevel2()->GetNTracks(); nt++){
4734            TrkTrack *track = L2->GetTrkLevel2()->GetTrack(nt);              PamTrack *ptrack= L2->GetTrack(nt);
4735              TrkTrack *track = ptrack->GetTrkTrack();  
4736            if ( nt == 0 ){            if ( nt == 0 ){
4737              var.rig = 0.;              var.rig = 0.;
4738              if ( track->al[4] != 0. ) var.rig = 1./track->al[4];              if ( track->al[4] != 0. ) var.rig = 1./track->al[4];
# Line 5046  void FEVdetector::ShowTrack(){ Line 5245  void FEVdetector::ShowTrack(){
5245    //    //
5246    if ( L2->GetTrkLevel2()->GetNTracks() > 0 ){    if ( L2->GetTrkLevel2()->GetNTracks() > 0 ){
5247      for (Int_t nt = 0; nt < L2->GetTrkLevel2()->GetNTracks(); nt++){      for (Int_t nt = 0; nt < L2->GetTrkLevel2()->GetNTracks(); nt++){
5248        TrkTrack *track = L2->GetTrkLevel2()->GetTrack(nt);  
5249          //      TrkTrack *track = L2->GetTrkLevel2()->GetTrack(nt);
5250          PamTrack *ptrack = L2->GetTrack(nt);
5251          TrkTrack *track = ptrack->GetTrkTrack();
5252        Int_t npoint = 100;        Int_t npoint = 100;
5253        Float_t zin[100];        Float_t zin[100];
5254        Double_t xout[100];        Double_t xout[100];

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.11

  ViewVC Help
Powered by ViewVC 1.1.23