00001 #ifndef TPADRPCEVENT_H 00002 #define TPADRPCEVENT_H 00003 00004 #include "TGo4EventElement.h" 00005 00006 /* 00007 * Put all definitions here and use them in processor, 00008 * since they are necessary for data structure of event 00009 */ 00010 00011 class PadRpc_Hit: public TObject { 00012 public: 00013 Int_t iPadIndexX; 00014 Int_t iPadIndexY; 00015 Double_t dTime; // in ps 00016 Double_t dTot; // in ps 00017 00018 PadRpc_Hit() : TObject() { Clear(); }; 00019 00020 void Clear(void); 00021 00022 ClassDef(PadRpc_Hit, 1) 00023 }; 00024 00025 class PadRpc_Cluster: public TObject { 00026 public: 00027 std::vector<PadRpc_Hit> fHits; 00028 Double_t dX; 00029 Double_t dY; 00030 Double_t dMeanTime; 00031 Double_t dMeanPadX; 00032 Double_t dMeanPadY; 00033 00034 PadRpc_Cluster() : TObject() { Clear(); }; 00035 00036 void Clear(void); 00037 00038 void PositionCalculation( Double_t dMiddlePadX, Double_t dMiddlePadY, 00039 UInt_t uOrientation, 00040 Double_t dPadSizeX, Double_t dPadSizeY ); 00041 00042 ClassDef(PadRpc_Cluster, 1) 00043 }; 00044 00045 class TPadRpcEvent : public TGo4EventElement { 00046 public: 00047 00048 00049 TPadRpcEvent(); 00050 TPadRpcEvent(const char* name, Short_t id=0); 00051 virtual ~TPadRpcEvent(); 00052 00054 virtual void Clear(Option_t *t=""); 00055 00056 // Maybe to be transformed into a TObjArray or TCloneArray 00057 std::vector<PadRpc_Cluster> fClusters; 00058 00059 ClassDef(TPadRpcEvent,1) 00060 }; 00061 #endif //TPADRPCEVENT_H 00062 00063 00064