00001 00003 // 00004 // CLASS AlMCtruth: 00005 // Concrete class for Monte Carlo Truth Tracks, inherits from QvecBase 00006 // 00007 // Author : R. Cavanaugh 00008 // 00010 00011 00012 #ifndef _ALMCTRUTH_H_ 00013 #define _ALMCTRUTH_H_ 00014 00015 #include "QvecLink.h" 00016 #include "AlephCollection.h" 00017 #include "BankClasses.h" 00018 00019 /*--------------------------------------------------------------------------*/ 00020 00022 class AlMCtruth : public QvecLink 00023 { 00024 public: 00025 00027 AlMCtruth(); 00029 AlMCtruth(const AlMCtruth&); 00031 ~AlMCtruth(); 00033 ALEPHTYPE TYPE() const {return MCTRUTH;} 00034 00036 void setMotherVector( AlephCollection<AlMCtruth*> ); 00038 void setDaughterVector( AlephCollection<AlMCtruth*> ); 00039 00041 AlephCollection<AlMCtruth*> getMotherVector()const; 00043 AlephCollection<AlMCtruth*> getDaughterVector()const; 00044 00046 int PA() const{ if (qvec) return qvec -> PA; else return -1; } 00048 int NO() const{ if (qvec) return qvec -> NO; else return -1; } 00050 int ND() const{ if (qvec) return qvec -> ND; else return -1; } 00051 char* name() const; 00052 00053 private: 00054 00055 AlephCollection<AlMCtruth*> Mother; // pointer to mother 00056 AlephCollection<AlMCtruth*> Daughter; // vector of pointers to daughters 00057 00058 }; 00059 00060 /*--------------------------------------------------------------------------*/ 00061 00062 #endif