00001 /* 00002 * TSTSGeometry.cxx 00003 * 00004 * Created on: Jan 20, 2012 00005 * Author: isorokin 00006 */ 00007 00008 #include "TSTSGeometry.h" 00009 00010 TSTSGeometry::TSTSGeometry() 00011 { 00012 } 00013 00014 00015 00016 TSTSGeometry::~TSTSGeometry() 00017 { 00018 } 00019 00020 00021 00022 void TSTSGeometry::MakeSpacepoint( TSTSHit const & hit, Int_t det, TSpacepoint & point ) const 00023 { 00024 switch ( det ) 00025 { 00026 case 0: { 00027 point.SetY( - 6.4 + 0.05 * ( hit.GetCluster(TSTSTopology::kPSide)->GetMainStrip() ) ); 00028 point.SetX( - 6.4 + 0.05 * ( hit.GetCluster(TSTSTopology::kNSide)->GetMainStrip() ) ); 00029 point.SetZ( 100 ); 00030 point.SetT( 0 ); 00031 break; 00032 } 00033 case 1: { 00034 point.SetY( - 6.4 + 0.05 * ( hit.GetCluster(TSTSTopology::kPSide)->GetMainStrip() ) ); 00035 point.SetX( - 6.4 + 0.05 * ( hit.GetCluster(TSTSTopology::kNSide)->GetMainStrip() ) ); 00036 point.SetZ( 200 ); 00037 point.SetT( 0 ); 00038 break; 00039 } 00040 case 2: { 00041 point.SetY( - 6.4 + 0.05 * ( hit.GetCluster(TSTSTopology::kPSide)->GetMainStrip() ) ); 00042 point.SetX( 6.4 - 0.05 * ( hit.GetCluster(TSTSTopology::kNSide)->GetMainStrip() ) ); 00043 point.SetZ( 300 ); 00044 point.SetT( 0 ); 00045 break; 00046 } 00047 default: 00048 { 00049 break; 00050 } 00051 } 00052 point.SetXErr( 0 ); 00053 point.SetYErr( 0 ); 00054 point.SetZErr( 0 ); 00055 point.SetTErr( 0 ); 00056 00057 point.SetTS(hit.GetTime()); 00058 }