00001 /*************************************************************************** 00002 * 00003 * $Id: StMcRichHit.hh,v 2.9 2011/10/17 00:24:00 fisyak Exp $ 00004 * $Log: StMcRichHit.hh,v $ 00005 * Revision 2.9 2011/10/17 00:24:00 fisyak 00006 * Add time of flight for hits 00007 * 00008 * Revision 2.8 2005/09/28 21:30:15 fisyak 00009 * Persistent StMcEvent 00010 * 00011 * Revision 2.7 2005/07/06 20:05:28 calderon 00012 * Remove forward declaration of StThreeVectorF, use #include, and only in 00013 * StMcHit base class. StThreeVectorF is not a class anymore, it is now 00014 * only a typedef, only template version of StThreeVector exists now. 00015 * 00016 * Revision 2.6 2005/01/27 23:40:47 calderon 00017 * Adding persistency to StMcEvent as a step for Virtual MonteCarlo. 00018 * 00019 * Revision 2.5 2000/06/06 02:58:41 calderon 00020 * Introduction of Calorimeter classes. Modified several classes 00021 * accordingly. 00022 * 00023 * Revision 2.4 2000/05/26 21:42:11 calderon 00024 * Added volumeId() method. 00025 * 00026 * Revision 2.3 2000/05/05 15:25:44 calderon 00027 * Reduced dependencies and made constructors more efficient 00028 * 00029 * Revision 2.2 2000/04/17 23:01:15 calderon 00030 * Added local momentum to hits as per Lee's request 00031 * 00032 * Revision 2.1 2000/03/06 18:05:21 calderon 00033 * 1) Modified SVT Hits storage scheme from layer-ladder-wafer to 00034 * barrel-ladder-wafer. 00035 * 2) Added Rich Hit class and collection, and links to them in other 00036 * classes. 00037 * 00038 * 00039 **************************************************************************/ 00040 #ifndef StMcRichHit_hh 00041 #define StMcRichHit_hh 00042 00043 #include "StMcHit.hh" 00044 #include "tables/St_g2t_rch_hit_Table.h" 00045 00046 class StMcRichHit : public StMcHit { 00047 public: 00048 StMcRichHit() {} 00049 StMcRichHit(const StThreeVectorF& x,const StThreeVectorF& p, 00050 Float_t de = 0, Float_t ds = 0, Float_t tof = 0, Long_t k = 0, Long_t volId = 0, StMcTrack* parent=0) : 00051 StMcHit(x,p,de,ds,tof,k,volId,parent) {} 00052 StMcRichHit(g2t_rch_hit_st* pt) : 00053 StMcHit(StThreeVectorF(pt->x[0], pt->x[1], pt->x[2]), 00054 StThreeVectorF(pt->p[0], pt->p[1], pt->p[2]), 00055 pt->de, pt->ds, pt->tof, pt->id, pt->volume_id, 0) {} 00056 ~StMcRichHit() {} 00057 00058 UShort_t pad() const {return (mVolumeId & 0xff);} // first 8 bits 00059 UShort_t row() const {return ( (mVolumeId>>8) & 0xff);} // second 8 bits 00060 private: 00061 ClassDef(StMcRichHit,1) 00062 }; 00063 00064 ostream& operator<<(ostream& os, const StMcRichHit&); 00065 00066 #endif
1.5.9