#include "AliESDEvent.h"
#include "AliESDMuonTrack.h"
#include "AliMUONDigitStoreV2S.h"
-#include "AliMUONDigit.h"
+#include "AliMUONVDigit.h"
#include "AliMpVSegmentation.h"
#include "AliMpSegmentation.h"
#include "AliMpPad.h"
//_____________________________________________________________________________
Bool_t AliMUONRecoCheck::InitCircuit()
{
-
+
if ( fTriggerCircuit ) return kTRUE;
if ( ! InitGeometryTransformer() ) return kFALSE;
- fTriggerCircuit = new AliMUONTriggerCircuit(fGeometryTransformer);
-
// reset tracker for local trigger to trigger track conversion
- if ( ! AliMUONESDInterface::GetTracker() )
- AliMUONESDInterface::ResetTracker();
+ if ( ! AliMUONESDInterface::GetTracker() ) AliMUONESDInterface::ResetTracker();
+
+ fTriggerCircuit = new AliMUONTriggerCircuit(fGeometryTransformer);
return kTRUE;
}
}
//_____________________________________________________________________________
-void AliMUONRecoCheck::TriggerToTrack(const AliMUONLocalTrigger& locTrg, AliMUONTriggerTrack& triggerTrack)
+Bool_t AliMUONRecoCheck::TriggerToTrack(const AliMUONLocalTrigger& locTrg, AliMUONTriggerTrack& triggerTrack)
{
/// Make trigger track from local trigger info
- if ( ! InitCircuit() ) return;
+ if ( ! InitCircuit() ) return kFALSE;
AliMUONVTrackReconstructor* tracker = AliMUONESDInterface::GetTracker();
- tracker->TriggerToTrack(*fTriggerCircuit, locTrg, triggerTrack);
+ return tracker->TriggerToTrack(*fTriggerCircuit, locTrg, triggerTrack);
}
TParticle* particle;
TClonesArray* trackRefs;
Int_t nTrackRef = fMCEventHandler->MCEvent()->GetNumberOfTracks();
- AliMUONVClusterStore* cStore = AliMUONESDInterface::NewClusterStore();
- if (!cStore) return;
- AliMUONVCluster* hit = cStore->CreateCluster(0,0,0);
+ AliMUONVCluster* hit = AliMUONESDInterface::NewCluster();
// loop over simulated tracks
for (Int_t iTrackRef = 0; iTrackRef < nTrackRef; ++iTrackRef) {
CleanMuonTrackRef(tmpTrackRefStore);
delete hit;
- delete cStore;
delete tmpTrackRefStore;
}
if ( cath == AliMp::kCath0 ) nboard = pad.GetLocalBoardId(0);
- AliMUONDigit* digit = new AliMUONDigit(detElemId,nboard,
- pad.GetLocalBoardChannel(0),cath);
- digit->SetPadXY(ix,iy);
- digit->SetCharge(1.);
- digitStore.Add(*digit,AliMUONVDigitStore::kDeny);
+ AliMUONVDigit* digit = digitStore.Add(detElemId, nboard, pad.GetLocalBoardChannel(0),
+ cath, AliMUONVDigitStore::kDeny);
+ if (digit) {
+ digit->SetPadXY(ix,iy);
+ digit->SetCharge(1.);
+ }
}
}
Double_t maxGasGap = 1.; // cm
Double_t x, y, z, pX, pY, pZ, x1, y1, z1, pX1, pY1, pZ1, z2;
Double_t bendingSlope,nonBendingSlope,inverseBendingMomentum;
- AliMUONVClusterStore* cStore = AliMUONESDInterface::NewClusterStore();
- if (!cStore) return;
- AliMUONVCluster* hit = cStore->CreateCluster(0,0,0);
+ AliMUONVCluster* hit = AliMUONESDInterface::NewCluster();
// create iterator
TIter next(tmpTrackRefStore->CreateIterator());
}
delete hit;
- delete cStore;
}
//_____________________________________________________________________________
if ( ! InitGeometryTransformer() ) return kFALSE;
- if ( ! AliMpDDLStore::Instance(false) ) AliMpCDB::LoadDDLStore();
+ if ( ! AliMpDDLStore::Instance(false) && ! AliMpCDB::LoadDDLStore()) return kFALSE;
if ( ! InitCalibrationData() ) return kFALSE;