fDetectorDirName = GetName() ;
}
+//____________________________________________________________________________
+AliQADataMakerSim::~AliQADataMakerSim()
+{
+ //dtor: delete the TObjArray and thei content
+ if ( fDigitsQAList ) {
+ if ( fDigitsQAList->IsOwner() )
+ fDigitsQAList->Delete() ;
+ delete fDigitsQAList ;
+ }
+ if ( fHitsQAList ) {
+ if ( fHitsQAList->IsOwner() )
+ fHitsQAList->Delete() ;
+ delete fHitsQAList ;
+ }
+ if ( fSDigitsQAList ) {
+ if ( fSDigitsQAList->IsOwner() )
+ fSDigitsQAList->Delete() ;
+ delete fSDigitsQAList ;
+ }
+}
+
//__________________________________________________________________
AliQADataMakerSim& AliQADataMakerSim::operator = (const AliQADataMakerSim& qadm )
{
SetCycle(cycles) ;
TObjArray * rv = NULL ;
if ( task == AliQA::kHITS ) {
- fHitsQAList = new TObjArray(100) ;
- InitHits() ;
+ if ( ! fHitsQAList ) {
+ fHitsQAList = new TObjArray(100) ;
+ InitHits() ;
+ }
rv = fHitsQAList ;
} else if ( task == AliQA::kSDIGITS ) {
- fSDigitsQAList = new TObjArray(100) ;
- InitSDigits() ;
+ if ( ! fSDigitsQAList ) {
+ fSDigitsQAList = new TObjArray(100) ;
+ InitSDigits() ;
+ }
rv = fSDigitsQAList ;
} else if ( task == AliQA::kDIGITS ) {
- fDigitsQAList = new TObjArray(100);
- InitDigits() ;
+ if ( ! fDigitsQAList ) {
+ fDigitsQAList = new TObjArray(100) ;
+ InitDigits() ;
+ }
rv = fDigitsQAList ;
}