00001 /*************************************************************************** 00002 * 00003 * $Id: StMcPixelHit.hh,v 2.7 2011/10/17 00:24:00 fisyak Exp $ 00004 * $Log: StMcPixelHit.hh,v $ 00005 * Revision 2.7 2011/10/17 00:24:00 fisyak 00006 * Add time of flight for hits 00007 * 00008 * Revision 2.6 2005/11/22 21:44:52 fisyak 00009 * Add compress Print for McEvent, add Ssd collections 00010 * 00011 * Revision 2.5 2005/09/28 21:30:15 fisyak 00012 * Persistent StMcEvent 00013 * 00014 * Revision 2.4 2005/07/06 20:05:28 calderon 00015 * Remove forward declaration of StThreeVectorF, use #include, and only in 00016 * StMcHit base class. StThreeVectorF is not a class anymore, it is now 00017 * only a typedef, only template version of StThreeVector exists now. 00018 * 00019 * Revision 2.3 2005/01/27 23:40:47 calderon 00020 * Adding persistency to StMcEvent as a step for Virtual MonteCarlo. 00021 * 00022 * Revision 2.2 2004/09/14 05:00:30 calderon 00023 * Added support for Ist, Ssd and changes to Pixel, from "El Kai". 00024 * 00025 * Revision 2.1 2003/08/20 18:50:21 calderon 00026 * Addition of Tof classes and Pixel classes. Modified track, event, and 00027 * container code to reflect this. 00028 * Fix bug in StMcVertex and in clearing of some hit collections. 00029 * 00030 * 00031 **************************************************************************/ 00032 #ifndef StMcPixelHit_hh 00033 #define StMcPixelHit_hh 00034 #include "StMcHit.hh" 00035 #include "tables/St_g2t_pix_hit_Table.h" 00036 00037 class StMcPixelHit : public StMcHit { 00038 public: 00039 StMcPixelHit() {} 00040 StMcPixelHit(const StThreeVectorF& x,const StThreeVectorF& p, 00041 Float_t de = 0, Float_t ds = 0, Float_t tof = 0, Long_t k = 0, Long_t volId = 0, StMcTrack* parent=0) : 00042 StMcHit(x,p,de,ds,tof,k,volId,parent) {} 00043 StMcPixelHit(g2t_pix_hit_st* pt) : 00044 StMcHit(StThreeVectorF(pt->x[0], pt->x[1], pt->x[2]), 00045 StThreeVectorF(pt->p[0], pt->p[1], pt->p[2]), 00046 pt->de, pt->ds, pt->tof, pt->id, pt->volume_id, 0) {} 00047 ~StMcPixelHit() {} 00048 ULong_t layer() const {return mVolumeId/1000000;} 00049 ULong_t ladder() const { return (mVolumeId%1000000)/10000;} // 1-6, 1-18 00050 virtual void Print(Option_t *option="") const; // *MENU* 00051 00052 private: 00053 ClassDef(StMcPixelHit,2) 00054 }; 00055 00056 ostream& operator<<(ostream& os, const StMcPixelHit&); 00057 00058 00059 #endif
1.5.9