Changeset 161 for MEMPHYS


Ignore:
Timestamp:
Jun 16, 2006, 10:03:40 AM (18 years ago)
Author:
barrand
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • MEMPHYS/HEAD/applications/MEMPHYS_analysis.cxx

    r160 r161  
    1 /*
    2  * AIDA analysis program over MEMPHYS.root file.
    3  */
     1// AIDA analysis program over MEMPHYS.root file.
    42
    53// AIDA :
     
    97#include <iostream>
    108
     9//////////////////////////////////////////////////////////////////////////////
     10bool direction(
     11 AIDA::ITuple& aParent
     12,double& aX
     13,double& aY
     14,double& aZ
     15)
     16//////////////////////////////////////////////////////////////////////////////
     17//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!//
     18{
     19  AIDA::ITupleEntry* entry = (AIDA::ITupleEntry*)aParent.getObject(3);
     20  if(!entry) return false;
     21
     22  AIDA::ITuple* tuple = dynamic_cast<AIDA::ITuple*>(entry);
     23  if(!tuple) return false;
     24
     25  tuple->start();
     26  if(!tuple->next()) return false;
     27
     28  aX = tuple->getDouble(0);
     29  aY = tuple->getDouble(1);
     30  aZ = tuple->getDouble(2);
     31
     32  return true;
     33}
     34//////////////////////////////////////////////////////////////////////////////
     35bool dump_tracks(
     36 AIDA::ITuple& aParent
     37)
     38//////////////////////////////////////////////////////////////////////////////
     39//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!//
     40{
     41  AIDA::ITupleEntry* entry = (AIDA::ITupleEntry*)aParent.getObject(8);
     42  if(!entry) return false;
     43
     44  AIDA::ITuple* tuple = dynamic_cast<AIDA::ITuple*>(entry);
     45  if(!tuple) return false;
     46
     47  //if(nPart!=tracks->rows()) {
     48  //  std::cout << "read: nPart / tracks mismatch "
     49  //              << nPart << " " << tracks->rows() << std::endl;
     50  //  return false;
     51  //}
     52
     53  tuple->start();
     54  while(tuple->next()) {
     55
     56    double dx,dy,dz;
     57    if(!direction(*tuple,dx,dy,dz)) return false;
     58
     59    double ETot = tuple->getDouble(6);
     60
     61    std::cout << " ETot " << ETot
     62              << " dx " << dx
     63              << " dy " << dy
     64              << " dz " << dz
     65              << std::endl;
     66  }
     67  return true;
     68}
    1169//////////////////////////////////////////////////////////////////////////////
    1270int main(
     
    75133
    76134    int eventId = tuple->getInt(0);
    77     int inputEvtId = tuple->getInt(1);
    78     int interMode = tuple->getInt(2);
    79     int vtxVol = tuple->getInt(3);
     135    //int inputEvtId = tuple->getInt(1);
     136    //int interMode = tuple->getInt(2);
     137    //int vtxVol = tuple->getInt(3);
    80138
    81139    int nPart = tuple->getInt(5);
    82     int leptonIndex = tuple->getInt(6);
    83     int protonIndex = tuple->getInt(7);
     140    //int leptonIndex = tuple->getInt(6);
     141    //int protonIndex = tuple->getInt(7);
    84142
    85143    int nHits = tuple->getInt(9);
     
    98156              << std::endl;
    99157
     158    if(!dump_tracks(*tuple)) return false;
     159
    100160    irow++;
    101161  }
Note: See TracChangeset for help on using the changeset viewer.