X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSsimulation.cxx;h=50570570431bebb5e57b92981e60b86611445a98;hb=3600eb302b9f3c4930c17157b7c34d90ce84d053;hp=2a40f90e5e51c872b1da6ecdcb65054578618b96;hpb=d4a640990ffbc2b2056a1be0dad94a86465f089c;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSsimulation.cxx b/ITS/AliITSsimulation.cxx index 2a40f90e5e5..50570570431 100644 --- a/ITS/AliITSsimulation.cxx +++ b/ITS/AliITSsimulation.cxx @@ -12,7 +12,12 @@ * about the suitability of this software for any purpose. It is * * provided "as is" without express or implied warranty. * **************************************************************************/ - +////////////////////////////////////////////////////////////////////////////// +// This is the base class for ITS detector signal simulations. Data members // +// include are a pointer to the AliITSDetTypeSim clas in order to access // +// segmentation and response objects // +// classes. See the detector specific implementations for the propper code. // +////////////////////////////////////////////////////////////////////////////// #include "TClonesArray.h" #include "AliITSsimulation.h" @@ -20,47 +25,94 @@ ClassImp(AliITSsimulation) -AliITSsimulation::AliITSsimulation(){ - // constructor - fSegmentation = 0; - fResponse = 0; - fpList = 0; +//______________________________________________________________________ +AliITSsimulation::AliITSsimulation(): TObject(), +fpList(0), +fModule(0), +fEvent(0), +fDebug(0){ + // Default constructor + // Inputs: + // none. + // Outputs: + // none. + // Return: + // a default constructed AliITSsimulation class + fDetType = 0; +} +//______________________________________________________________________ +AliITSsimulation::AliITSsimulation(AliITSDetTypeSim *dettyp): TObject(), +fpList(0), +fModule(0), +fEvent(0), +fDebug(0){ + // Default constructor + // Inputs: + // AliITSDetTypeSim * : object used to access segmentation and response + // Outputs: + // none. + // Return: + // a default constructed AliITSsimulation class + fDetType = dettyp; } //__________________________________________________________________________ AliITSsimulation::~AliITSsimulation(){ // destructor - fSegmentation = 0; // local copies of pointer, do not delete - fResponse = 0; // local copies of pointer, do not delete - delete fpList; + // Inputs: + // none. + // Outputs: + // none. + // Return: + // none. + + if(fpList){ + delete fpList; + fpList = 0; + } } //__________________________________________________________________________ -AliITSsimulation::AliITSsimulation(const AliITSsimulation &source){ - // Copy Constructor +AliITSsimulation::AliITSsimulation(const AliITSsimulation &s) : TObject(s){ + // Copy Constructor + // Inputs: + // const AliITSsimulation &s simulation class to copy from + // Outputs: + // none. + // Return: + // a standard constructed AliITSsimulation class with values the same + // as that of s. - if(&source == this) return; - this->fResponse = source.fResponse; - this->fSegmentation = source.fSegmentation; - this->fModule = source.fModule; - this->fEvent = source.fEvent; - this->fpList = source.fpList; + *this = s; return; } //_________________________________________________________________________ -AliITSsimulation& AliITSsimulation::operator=(const AliITSsimulation &source){ +AliITSsimulation& AliITSsimulation::operator=(const AliITSsimulation &s){ // Assignment operator + // Inputs: + // const AliITSsimulation &s simulation class to copy from + // Outputs: + // none. + // Return: + // a standard constructed AliITSsimulation class with values the same + // as that of s. - if(&source == this) return *this; - this->fResponse = source.fResponse; - this->fSegmentation = source.fSegmentation; - this->fModule = source.fModule; - this->fEvent = source.fEvent; - this->fpList = source.fpList; + if(&s == this) return *this; + this->fModule = s.fModule; + this->fEvent = s.fEvent; + this->fpList = s.fpList; return *this; } //______________________________________________________________________ Bool_t AliITSsimulation::AddSDigitsToModule(TClonesArray *pItemA,Int_t mask ){ // Add Summable digits to module maps. + // Inputs: + // TClonesArray *pItemA Array of AliITSpListItems (SDigits). + // Int_t mask Track number off set value (see + // AliITSpList::AddItemTo). + // Outputs: + // none. + // Return: + // kTRUE if there is a signal >0 else kFALSE Int_t nItems = pItemA->GetEntries(); Bool_t sig = kFALSE; @@ -69,11 +121,11 @@ Bool_t AliITSsimulation::AddSDigitsToModule(TClonesArray *pItemA,Int_t mask ){ AliITSpListItem * pItem = (AliITSpListItem *)(pItemA->At( i )); if( pItem->GetModule() != fModule ) { Error( "AddSDigitsToModule","Error reading, SDigits module %d " - "!= current module %d: exit", - pItem->GetModule(), fModule ); + "!= current module %d: exit", + pItem->GetModule(), fModule ); return sig; } // end if - if(pItem->GetSignal()>0.0 ) sig = kTRUE; + if(pItem->GetSignal()>0.0 ) sig = kTRUE; fpList->AddItemTo( mask, pItem ); } // end for i return sig;