00001 /*************************************************************************** 00002 * 00003 * $Id: StMcSsdHit.hh,v 2.6 2011/10/17 00:24:01 fisyak Exp $ 00004 * $Log: StMcSsdHit.hh,v $ 00005 * Revision 2.6 2011/10/17 00:24:01 fisyak 00006 * Add time of flight for hits 00007 * 00008 * Revision 2.5 2005/11/22 21:44:52 fisyak 00009 * Add compress Print for McEvent, add Ssd collections 00010 * 00011 * Revision 2.4 2005/09/28 21:30:15 fisyak 00012 * Persistent StMcEvent 00013 * 00014 * Revision 2.3 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.2 2005/01/27 23:40:47 calderon 00020 * Adding persistency to StMcEvent as a step for Virtual MonteCarlo. 00021 * 00022 * Revision 2.1 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 SSd 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 StMcSsdHit_hh 00033 #define StMcSsdHit_hh 00034 00035 #include "StMcHit.hh" 00036 #include "tables/St_g2t_ssd_hit_Table.h" 00037 00038 00039 class StMcSsdHit : public StMcHit { 00040 public: 00041 StMcSsdHit() {} 00042 StMcSsdHit(const StThreeVectorF& x,const StThreeVectorF& p, 00043 Float_t de = 0, Float_t ds = 0, Float_t tof = 0, Long_t k = 0, Long_t volId = 0, StMcTrack* parent=0) : 00044 StMcHit(x,p,de,ds,tof,k,volId,parent) {} 00045 StMcSsdHit(g2t_ssd_hit_st* pt) : 00046 StMcHit(StThreeVectorF(pt->x[0], pt->x[1], pt->x[2]), 00047 StThreeVectorF(pt->p[0], pt->p[1], pt->p[2]), 00048 pt->de, pt->ds, pt->tof, pt->id, pt->volume_id, 0) {} 00049 ~StMcSsdHit() {} 00050 ULong_t ladder() const {return mVolumeId%100; } 00051 ULong_t wafer() const {return ((mVolumeId%10000-7000)/100)%100;} 00052 virtual void Print(Option_t *option="") const; // *MENU* 00053 00054 private: 00055 ClassDef(StMcSsdHit,2) 00056 }; 00057 00058 ostream& operator<<(ostream& os, const StMcSsdHit&); 00059 00060 00061 #endif
1.5.9