Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

SimPmtTimeBucket.cxx

Go to the documentation of this file.
00001 #include "SimPmtTimeBucket.h"
00002 
00003 #include "Digitization/DigiPE.h"
00004 
00005 #include "MessageService/MsgService.h"
00006 
00007 CVSID("$Id: SimPmtTimeBucket.cxx,v 1.7 2005/02/02 16:00:33 tagg Exp $");
00008 ClassImp(SimPmtTimeBucket)
00009 
00010 
00011 SimPmtTimeBucket::SimPmtTimeBucket() :
00012   fNPixels(0),
00013   fPixels(SimPixelTimeBucket::Class(),0),
00014   fTotalCharge(0),
00015   fDynodeTime(kPmtTime_Never)
00016 {  
00017   // Do not use. I/O only.
00018 
00019   MSG("DetSim",Msg::kError) << "SimPmtTimeBucket default constructor called.. this should never happen!" << endl;
00020 }
00021 
00022 SimPmtTimeBucket::SimPmtTimeBucket( int nPixels, int nSpots ) :
00023   fNPixels(nPixels),
00024   fPixels(SimPixelTimeBucket::Class(),nPixels),
00025   fTotalCharge(0),
00026   fDynodeTime(kPmtTime_Never)
00027 {
00028   // Creator.
00029 
00030   // Fill the pixel array with new pixel objects
00031 
00032   for(int i=0;i<fNPixels;i++) {
00033     new(fPixels[i]) SimPixelTimeBucket(nSpots);
00034   }
00035   
00036 
00037 }
00038 
00039 SimPmtTimeBucket::~SimPmtTimeBucket()
00040 {
00041   // Delete all the objects from the pixel array
00042 
00043   fPixels.Delete();
00044 
00045 }
00046 
00047 
00048 void SimPmtTimeBucket::AddDigiPE( const DigiPE* digipe, Int_t pix, Int_t spot )
00049 {
00050   // Add the digipe to the pixel given 
00051   // (not to the pixel in the DigiPE, which has the wrong numbering
00052   // because, as I've said before, the database is STUPID).
00053   //
00054   
00055   //int pix = digipe->GetPixelSpotId().GetPixel();
00056 
00057   if((pix >0) && (pix <= fNPixels)) {
00058     ((SimPixelTimeBucket*)(fPixels[pix-1]))->AddDigiPE(digipe,spot);
00059   } else {
00060     MSG("DetSim",Msg::kWarning) << "AddDigiPE() Invalid pixel number " << pix << " psid:" << digipe->GetPixelSpotId().AsString() << endl;
00061   }
00062 }

Generated on Fri Mar 28 15:39:54 2008 for loon by  doxygen 1.3.9.1