00001 #include "SimPmtM16UTTimed.h" 00002 #include "SimPmtMaker.h" 00003 #include "SimPmtM16CrosstalkTable.h" 00004 #include "SimPmtM16Crosstalk.h" 00005 #include "MessageService/MsgService.h" 00006 #include "MessageService/MsgFormat.h" 00007 #include "Conventions/Munits.h" 00008 00009 CVSID("$Id: SimPmtM16UTTimed.cxx,v 1.3 2007/03/01 17:22:11 rhatcher Exp $"); 00010 00011 ClassImp(SimPmtM16UTTimed) 00012 00013 // Register this class with the factory. 00014 SimPmtMakerProxy<SimPmtM16UTTimed> gSimPmtM16UTTimedProxy("SimPmtM16UTTimed"); 00015 00016 Double_t SimPmtM16UTTimed::fsVaBucketLength = 100.0*Munits::ns; 00017 00018 00019 SimPmtM16UTTimed::SimPmtM16UTTimed(PlexPixelSpotId tube, 00020 VldContext context, 00021 TRandom* random) : 00022 SimPmtUTM16(tube,context,random) 00023 { 00024 MSG("DetSim",Msg::kDebug) << "SimPmtM16UTTimed Constructor, Tube :" << fTube.AsString() << endl; 00025 } 00026 00027 void SimPmtM16UTTimed::Config( Registry& config ) 00028 { 00029 double dtmp; 00030 if(config.Get("vaBucketLength",dtmp)) fsVaBucketLength = dtmp; 00031 SimPmtUTM16::Config(config); // call parent configuration. 00032 } 00033 00034 Int_t SimPmtM16UTTimed::TimeToBucket(Double_t time) 00035 { 00036 return (Int_t)(time/fsVaBucketLength); 00037 } 00038 00039 Double_t SimPmtM16UTTimed::BucketToStartTime(Int_t bucket) 00040 { 00041 return ((Double_t)bucket)*fsVaBucketLength; 00042 } 00043 00044 Double_t SimPmtM16UTTimed::BucketToStopTime(Int_t bucket) 00045 { 00046 return ((Double_t)(bucket+1))*fsVaBucketLength; 00047 } 00048 00049 Float_t SimPmtM16UTTimed::GetBucketDuration( Int_t /*bucket*/ ) 00050 { 00051 return fsVaBucketLength; 00052 } 00053 00054 00055 00056 00057 00058 00059 00060 00061 00062 00063
1.3.9.1