#include <TTree.h>
#include <TSystem.h>
#include <TDirectory.h>
+#include <TVirtualMC.h>
#include "AliConfig.h"
#include "AliLoader.h"
#include "AliModule.h"
#include "AliRun.h"
#include "AliTrackReference.h"
+#include "AliMC.h"
ClassImp(AliModule)
fEnable(1),
fTrackReferences(0),
fMaxIterTrackRef(0),
- fCurrentIterTrackRef(0)
+ fCurrentIterTrackRef(0),
+ fRunLoader(0)
{
//
// Default constructor for the AliModule class
fEnable(1),
fTrackReferences(new TClonesArray("AliTrackReference", 100)),
fMaxIterTrackRef(0),
- fCurrentIterTrackRef(0)
+ fCurrentIterTrackRef(0),
+ fRunLoader(0)
{
//
// Normal constructor invoked by all Modules.
fEnable(0),
fTrackReferences(0),
fMaxIterTrackRef(0),
- fCurrentIterTrackRef(0)
+ fCurrentIterTrackRef(0),
+ fRunLoader(0)
{
//
// Copy constructor
}
//_______________________________________________________________________
-void AliModule::Copy(AliModule & /* mod */) const
+void AliModule::Copy(TObject & /* mod */) const
{
//
// Copy *this onto mod, not implemented for AliModule
}
}
-//_______________________________________________________________________
-Int_t AliModule::DistancetoPrimitive(Int_t, Int_t) const
-{
- //
- // Return distance from mouse pointer to object
- // Dummy routine for the moment
- //
- return 9999;
-}
-
//_______________________________________________________________________
void AliModule::Enable()
{
if (ref) {
Int_t newID = map[ref->GetTrack()];
if (newID>=0) ref->SetTrack(newID);
- else ref->SetTrack(-1);
-
+ else {
+ //ref->SetTrack(-1);
+ ref->SetBit(kNotDeleted,kFALSE);
+ fTrackReferences->RemoveAt(i);
+ }
}
}
+ fTrackReferences->Compress();
+
}
//
if(track>=0)
{
- AliRunLoader* rl = AliRunLoader::GetRunLoader();
-
- rl->GetAliRun()->ResetTrackReferences();
- rl->TreeTR()->GetEvent(track);
- if (rl == 0x0)
+ if (fRunLoader == 0x0)
Fatal("FirstTrackReference","AliRunLoader not initialized. Can not proceed");
+ fRunLoader->GetAliRun()->GetMCApp()->ResetTrackReferences();
+ fRunLoader->TreeTR()->GetEvent(track);
}
//
fMaxIterTrackRef = fTrackReferences->GetEntriesFast();
//_____________________________________________________________________________
TTree* AliModule::TreeTR()
{
- AliRunLoader* rl = AliRunLoader::GetRunLoader();
-
- if ( rl == 0x0)
+ if ( fRunLoader == 0x0)
{
Error("TreeTR","Can not get the run loader");
return 0x0;
}
- TTree* tree = rl->TreeTR();
+ TTree* tree = fRunLoader->TreeTR();
return tree;
}