From be736e6d17059553507da0239fb9a9fcbfa266c0 Mon Sep 17 00:00:00 2001 From: quark Date: Fri, 5 Jul 2013 14:53:47 +0000 Subject: [PATCH] Added ESDfriend Entry in Filedialog. Fix paths to filenames --- EVE/EveBase/AliEveApplication.cxx | 1 - EVE/EveBase/AliEveEventManager.cxx | 179 +++++++++++++++-------------- EVE/EveBase/AliEveEventManager.h | 16 ++- EVE/EveBase/AliEveFileDialog.cxx | 118 ++++++++++++++----- EVE/EveBase/AliEveFileDialog.h | 7 +- EVE/EveBase/AliEveMainWindow.cxx | 94 ++++++++------- EVE/EveBase/AliEveMainWindow.h | 2 +- EVE/macros/alieve_init.C | 4 +- EVE/macros/visscan_init.C | 162 +++++++++++++------------- 9 files changed, 327 insertions(+), 256 deletions(-) diff --git a/EVE/EveBase/AliEveApplication.cxx b/EVE/EveBase/AliEveApplication.cxx index bca0379820f..26a8cf54f3f 100644 --- a/EVE/EveBase/AliEveApplication.cxx +++ b/EVE/EveBase/AliEveApplication.cxx @@ -46,5 +46,4 @@ void AliEveApplication::Init() // make sure logger is instantiated AliLog::GetRootLogger(); - } diff --git a/EVE/EveBase/AliEveEventManager.cxx b/EVE/EveBase/AliEveEventManager.cxx index 8fe30e5abe1..68f9e75faf1 100644 --- a/EVE/EveBase/AliEveEventManager.cxx +++ b/EVE/EveBase/AliEveEventManager.cxx @@ -98,7 +98,7 @@ Bool_t AliEveEventManager::fgAssertRaw = kFALSE; TString AliEveEventManager::fgESDFileName("AliESDs.root"); TString AliEveEventManager::fgESDfriendsFileName("AliESDfriends.root"); TString AliEveEventManager::fgAODFileName("AliAOD.root"); -TString AliEveEventManager::fgGAlice("galice.root"); +TString AliEveEventManager::fgGAliceFileName("galice.root"); TString AliEveEventManager::fgRawFileName("raw.root"); TString AliEveEventManager::fgCdbUri; @@ -151,32 +151,10 @@ void AliEveEventManager::InitInternals() fGlobal = new TMap; fGlobal->SetOwnerKeyValue(); } -AliEveEventManager::AliEveEventManager(const TString& name) : - TEveEventManager(name), +AliEveEventManager::AliEveEventManager(const TString& name, Int_t ev) : + TEveEventManager(name, ""), - fPath ( ), fEventId (-1), - fRunLoader (0), - fESDFile (0), fESDTree (0), fESD (0), - fESDfriend (0), fESDfriendExists(kFALSE), - fAODFile (0), fAODTree (0), fAOD (0), - fRawReader (0), fEventInfo(), - fAutoLoad (kFALSE), fAutoLoadTime (5.), fAutoLoadTimer(0), - fIsOpen (kFALSE), fHasEvent (kFALSE), fExternalCtrl (kFALSE), - fGlobal (0), fGlobalReplace (kTRUE), fGlobalUpdate (kTRUE), - fExecutor (0), fTransients(0), fTransientLists(0), - fPEventSelector(0), - fSubManagers (0), - fAutoLoadTimerRunning(kFALSE) -{ - // Default constructor. - - InitInternals(); -} - -AliEveEventManager::AliEveEventManager(const TString& name, const TString& path, Int_t ev) : - TEveEventManager(name, path), - - fPath (path), fEventId(-1), + fEventId(-1), fRunLoader (0), fESDFile (0), fESDTree (0), fESD (0), fESDfriend (0), fESDfriendExists(kFALSE), @@ -190,7 +168,7 @@ AliEveEventManager::AliEveEventManager(const TString& name, const TString& path, fSubManagers (0), fAutoLoadTimerRunning(kFALSE) { - // Constructor with event-directory URL and event-id. + // Constructor with event-id. InitInternals(); @@ -228,15 +206,33 @@ AliEveEventManager::~AliEveEventManager() void AliEveEventManager::SetESDFileName(const TString& esd) { // Set file-name for opening ESD, default "AliESDs.root". + if (esd.IsNull()) return; + + fgESDFileName = esd; + if (esd.EndsWith(".zip")) fgESDFileName.Form("%s#AliESDs.root",esd.Data()); + +} - if ( ! esd.IsNull()) fgESDFileName = esd; +void AliEveEventManager::SetESDfriendFileName(const TString& esdf) +{ + // Set file-name for opening ESD friend, default "AliESDfriends.root". + + if (esdf.IsNull()) return; + fgESDfriendsFileName = esdf; + + if (esdf.EndsWith(".zip")) fgESDfriendsFileName.Form("%s#AliESDfriends.root",esdf.Data()); } void AliEveEventManager::SetAODFileName(const TString& aod) { // Set file-name for opening AOD, default "AliAOD.root". - if ( ! aod.IsNull()) fgAODFileName = aod; + if (aod.IsNull()) return; + fgAODFileName = aod; + + if (aod.EndsWith(".zip")) fgAODFileName.Form("%s#AliAOD.root",aod.Data()); + + } void AliEveEventManager::AddAODfriend(const TString& friendFileName) @@ -258,7 +254,9 @@ void AliEveEventManager::AddAODfriend(const TString& friendFileName) void AliEveEventManager::SetRawFileName(const TString& raw) { // Set file-name for opening of raw-data, default "raw.root" - if ( ! raw.IsNull()) fgRawFileName = raw; + if (raw.IsNull()) return; + + fgRawFileName = raw; } void AliEveEventManager::SetCdbUri(const TString& cdb) @@ -268,6 +266,39 @@ void AliEveEventManager::SetCdbUri(const TString& cdb) if ( ! cdb.IsNull()) fgCdbUri = cdb; } +void AliEveEventManager::SetGAliceFileName(const TString& galice) +{ + // Set file-name for opening gAlice, default "galice.root". + + if ( galice.IsNull()) return; + fgGAliceFileName = galice; + + if (galice.EndsWith(".zip")) fgGAliceFileName.Form("%s#galice.root",galice.Data()); +} + +void AliEveEventManager::SetFilesPath(const TString& urlPath) +{ + TString path = urlPath; + gSystem->ExpandPathName(path); + if (path.IsNull() || path == ".") + { + path = gSystem->WorkingDirectory(); + } + + TString sep; + if(path.EndsWith(".zip")) // if given a path to root_archive.zip + sep= "#"; + else if(!path.EndsWith("/")) + sep = "/"; + + SetESDFileName( TString(Form("%s%sAliESDs.root", path.Data(), sep.Data())) ); + SetESDfriendFileName( TString(Form("%s%sAliESDfriends.root", path.Data(), sep.Data())) ); + SetAODFileName( TString(Form("%s%sAliAOD.root", path.Data(), sep.Data())) ); + AddAODfriend( TString(Form("%s%sAliAOD.VertexingHF.root", path.Data(), sep.Data())) ); + SetGAliceFileName( TString(Form("%s%sgalice.root", path.Data(), sep.Data())) ); + SetRawFileName(TString(Form("%s%sraw.root", path.Data(), sep.Data()))); +} + void AliEveEventManager::SetAssertElements(Bool_t assertRunloader, Bool_t assertEsd, Bool_t assertAod, Bool_t assertRaw) { @@ -293,7 +324,7 @@ void AliEveEventManager::SearchRawForCentralReconstruction() void AliEveEventManager::Open() { - // Open event-data from URL specified in fPath. + // Open event-data from URL specified in path. // Attempts to create AliRunLoader() and to open ESD with ESDfriends. // Warning is reported if run-loader or ESD is not found. // Global data-members fgAssertRunLoader and fgAssertESD can be set @@ -310,28 +341,11 @@ void AliEveEventManager::Open() throw (kEH + "Event-files already opened."); } - gSystem->ExpandPathName(fPath); - // The following magick is required for ESDfriends to be loaded properly - // from non-current directory. - if (fPath.IsNull() || fPath == ".") - { - fPath = gSystem->WorkingDirectory(); - } - else if ( ! fPath.BeginsWith("file:/")) - { - TUrl url(fPath, kTRUE); - TString protocol(url.GetProtocol()); - if (protocol == "file" && fPath[0] != '/') - fPath = Form("%s/%s", gSystem->WorkingDirectory(), fPath.Data()); - } - Int_t runNo = -1; // Open ESD and ESDfriends - - TString esdPath(Form("%s", fgESDFileName.Data())); - if (fgESDFileName.EndsWith(".zip")) esdPath.Form("%s#AliESDs.root",fgESDFileName.Data()); - if ((fESDFile = TFile::Open(esdPath))) + + if ((fESDFile = TFile::Open(fgESDFileName))) { fESD = new AliESDEvent(); fESDTree = (TTree*) fESDFile->Get("esdTree"); @@ -341,9 +355,7 @@ void AliEveEventManager::Open() // We use TFile::Open() instead of gSystem->AccessPathName // as it seems to work better when attachine alieve to a // running reconstruction process with auto-save on. - TString p(fgESDfriendsFileName); - if (fgESDfriendsFileName.EndsWith(".zip")) p.Form("%s#AliESDfriends.root",fgESDfriendsFileName.Data()); - TFile *esdFriendFile = TFile::Open(p); + TFile *esdFriendFile = TFile::Open(fgESDfriendsFileName); if (esdFriendFile) { if (!esdFriendFile->IsZombie()) @@ -387,7 +399,7 @@ void AliEveEventManager::Open() } else // esd not readable { - Warning(kEH, "can not read ESD file '%s'.", esdPath.Data()); + Warning(kEH, "can not read ESD file '%s'.", fgESDFileName.Data()); } if (fESDTree == 0) { @@ -400,10 +412,7 @@ void AliEveEventManager::Open() } // Open AOD and registered friends - - TString aodPath(Form("%s", fgAODFileName.Data())); - if (fgAODFileName.EndsWith(".zip")) aodPath.Form("%s#AliAOD.root",fgAODFileName.Data()); - if ((fAODFile = TFile::Open(aodPath))) + if ( (fAODFile = TFile::Open(fgAODFileName)) ) { fAOD = new AliAODEvent(); fAODTree = (TTree*) fAODFile->Get("aodTree"); @@ -445,7 +454,7 @@ void AliEveEventManager::Open() } else // aod not readable { - Warning(kEH, "can not read AOD file '%s'.", aodPath.Data()); + Warning(kEH, "can not read AOD file '%s'.", fgAODFileName.Data()); } if (fAODTree == 0) { @@ -458,25 +467,16 @@ void AliEveEventManager::Open() } // Open RunLoader from galice.root - - TString gaPath(Form("%s", fgGAlice.Data())); - if (fgGAlice.EndsWith(".zip")) gaPath.Form("%s#galice.root",fgGAlice.Data()); - // If i use open directly, we get fatal. - // Is AccessPathName check ok for xrootd / alien? Yes, not for http. - // Seems not to work for alien anymore. - // Fixed in ROOT on 27.10.2009, rev 30888. - // To revert after we move to root-5.26. - TFile *gafile = TFile::Open(gaPath); + TFile *gafile = TFile::Open(fgGAliceFileName); if (gafile) { gafile->Close(); delete gafile; - // if (gSystem->AccessPathName(gaPath, kReadPermission) == kFALSE) - // { - fRunLoader = AliRunLoader::Open(gaPath, GetName()); + fRunLoader = AliRunLoader::Open(fgGAliceFileName, GetName()); if (fRunLoader) { - TString alicePath = fPath + "/"; + TString alicePath(gSystem->DirName(fgGAliceFileName)); + alicePath.Append("/"); fRunLoader->SetDirName(alicePath); if (fRunLoader->LoadgAlice() != 0) @@ -496,12 +496,13 @@ void AliEveEventManager::Open() } else // run-loader open failed { - Warning(kEH, "failed opening ALICE run-loader from '%s'.", gaPath.Data()); + Warning(kEH, "failed opening ALICE run-loader from '%s'.", fgGAliceFileName.Data()); } + } else // galice not readable { - Warning(kEH, "can not read '%s'.", gaPath.Data()); + Warning(kEH, "can not read '%s'.", fgGAliceFileName.Data()); } if (fRunLoader == 0) { @@ -516,18 +517,18 @@ void AliEveEventManager::Open() TString rawPath; if (fgRawFromStandardLoc) { - if (!fPath.BeginsWith("alien:")) + if (!fgRawFileName.BeginsWith("alien:")) throw kEH + "Standard raw search requested, but the directory is not in AliEn."; - if (!fPath.Contains("/ESDs/")) + if (!fgRawFileName.Contains("/ESDs/")) throw kEH + "Standard raw search requested, but does not contain 'ESDs' directory."; TPMERegexp chunk("/([\\d\\.])+/?$"); - Int_t nm = chunk.Match(fPath); + Int_t nm = chunk.Match(fgRawFileName); if (nm != 2) throw kEH + "Standard raw search requested, but the path does not end with chunk-id directory."; TPMERegexp esdstrip("/ESDs/.*"); - rawPath = fPath; + rawPath = fgRawFileName; esdstrip.Substitute(rawPath, "/raw/"); rawPath += chunk[0]; rawPath += ".root"; @@ -536,7 +537,7 @@ void AliEveEventManager::Open() } else { - rawPath.Form("%s", fgRawFileName.Data()); + rawPath = fgRawFileName; } // If i use open directly, raw-reader reports an error but i have // no way to detect it. @@ -615,7 +616,7 @@ void AliEveEventManager::Open() else if (fgCdbUri == "mcfull://") cdb->SetDefaultStorage("MC", "Full"); else if (fgCdbUri == "local://") { - fgCdbUri = "local://$ALICE_ROOT/OCDB"; + fgCdbUri = Form("local://%s/OCDB", gSystem->Getenv("ALICE_ROOT")); cdb->SetDefaultStorage(fgCdbUri); } else cdb->SetDefaultStorage(fgCdbUri); @@ -628,8 +629,9 @@ void AliEveEventManager::Open() if (fgCdbUri.BeginsWith("local://")) { + TString curPath = gSystem->WorkingDirectory(); TString grp = "GRP/GRP/Data"; - TString grppath = fPath + "/" + grp; + TString grppath = curPath + "/" + grp; if (gSystem->AccessPathName(grppath, kReadPermission) == kFALSE) { if (cdb->GetSpecificStorage(grp)) @@ -640,7 +642,7 @@ void AliEveEventManager::Open() { Info(kEH, "Setting CDB specific-storage for GRP from event directory."); TString lpath("local://"); - lpath += fPath; + lpath += curPath; cdb->SetSpecificStorage(grp, lpath); } } @@ -1264,16 +1266,16 @@ Bool_t AliEveEventManager::InitRecoParam() for (Int_t iDet = 0; iDet < kNDetectors; iDet++) { if (fgRecoParam->GetDetRecoParamArray(iDet)) { - ::Info(kEH, Form("Using custom reconstruction parameters for detector %s",fgkDetectorName[iDet])); + ::Info(kEH, "Using custom reconstruction parameters for detector %s",fgkDetectorName[iDet]); continue; } - ::Info(kEH, Form("Loading reconstruction parameter objects for detector %s",fgkDetectorName[iDet])); + ::Info(kEH, "Loading reconstruction parameter objects for detector %s",fgkDetectorName[iDet]); AliCDBPath path(fgkDetectorName[iDet],"Calib","RecoParam"); AliCDBEntry *entry=AliCDBManager::Instance()->Get(path.GetPath()); if(!entry){ - ::Warning(kEH, Form("Couldn't find RecoParam entry in OCDB for detector %s",fgkDetectorName[iDet])); + ::Warning(kEH, "Couldn't find RecoParam entry in OCDB for detector %s",fgkDetectorName[iDet]); isOK = kFALSE; } else { @@ -1286,12 +1288,12 @@ Bool_t AliEveEventManager::InitRecoParam() else if (dynamic_cast(recoParamObj)) { // The detector has only onse set of reco parameters // Registering it in AliRecoParam - ::Info(kEH, Form("Single set of reconstruction parameters found for detector %s",fgkDetectorName[iDet])); + ::Info(kEH, "Single set of reconstruction parameters found for detector %s",fgkDetectorName[iDet]); dynamic_cast(recoParamObj)->SetAsDefault(); fgRecoParam->AddDetRecoParam(iDet,dynamic_cast(recoParamObj)); } else { - ::Error(kEH, Form("No valid RecoParam object found in the OCDB for detector %s",fgkDetectorName[iDet])); + ::Error(kEH, "No valid RecoParam object found in the OCDB for detector %s",fgkDetectorName[iDet]); isOK = kFALSE; } entry->SetOwner(0); @@ -1330,7 +1332,8 @@ AliEveEventManager* AliEveEventManager::AddDependentManager(const TString& name, fgCurrent = 0; try { - new_mgr = new AliEveEventManager(name, path, fgMaster->fEventId); + new_mgr = new AliEveEventManager(name, fgMaster->fEventId); + new_mgr->SetFilesPath(path); fgMaster->fSubManagers->Add(new_mgr); } catch (TEveException& exc) diff --git a/EVE/EveBase/AliEveEventManager.h b/EVE/EveBase/AliEveEventManager.h index 50e1288373f..df5b2f559a9 100644 --- a/EVE/EveBase/AliEveEventManager.h +++ b/EVE/EveBase/AliEveEventManager.h @@ -50,16 +50,24 @@ class AliEveEventManager : public TEveEventManager, { public: static void SetESDFileName(const TString& esd); + static void SetESDfriendFileName(const TString& esdf); static void SetAODFileName(const TString& aod); static void AddAODfriend (const TString& friendFileName); static void SetRawFileName(const TString& raw); static void SetCdbUri (const TString& cdb); + static void SetGAliceFileName(const TString& galice); + + // set Local Directory or URL where the files are located + // it can also be a path to root_archive.zip + // assumes the filenames of ESD, AOD, etc are standard ALICE names + // (AliESDs.root, AliESDfriends.root, AliAOD.root, AliAODfriend.root, galice.root,raw.root) + static void SetFilesPath(const TString& path); + static void SetAssertElements(Bool_t assertRunloader, Bool_t assertEsd, Bool_t assertAod, Bool_t assertRaw); static void SearchRawForCentralReconstruction(); - AliEveEventManager(const TString& name="Event"); - AliEveEventManager(const TString& name, const TString& path, Int_t ev=0); + AliEveEventManager(const TString& name="Event", Int_t ev=0); virtual ~AliEveEventManager(); virtual void Open(); @@ -81,7 +89,6 @@ public: TFile* GetAODFile() const { return fAODFile; } TTree* GetAODTree() const { return fAODTree; } AliAODEvent* GetAOD() const { return fAOD; } - virtual const Text_t* GetTitle() const { return fPath.Data(); } AliEveEventSelector* GetEventSelector() const { return fPEventSelector; } TString GetEventInfoHorizontal() const; TString GetEventInfoVertical() const; @@ -138,7 +145,6 @@ public: AliEveMacroExecutor* GetExecutor() const { return fExecutor; } protected: - TString fPath; // URL to event-data. Int_t fEventId; // Id of current event. AliRunLoader* fRunLoader; // Run loader. @@ -176,7 +182,7 @@ protected: TList *fSubManagers; // Dependent event-managers, used for event embedding. - static TString fgGAlice; // galice.root file + static TString fgGAliceFileName; // galice.root file static TString fgESDFileName; // Name by which to open ESD. static TString fgESDfriendsFileName; static TString fgAODFileName; // Name by which to open AOD. diff --git a/EVE/EveBase/AliEveFileDialog.cxx b/EVE/EveBase/AliEveFileDialog.cxx index 233d7b12f61..9e6db137d46 100644 --- a/EVE/EveBase/AliEveFileDialog.cxx +++ b/EVE/EveBase/AliEveFileDialog.cxx @@ -4,6 +4,7 @@ #include #include #include +#include #include @@ -13,8 +14,26 @@ ClassImp(AliEveFileDialog) AliEveFileDialog::AliEveFileDialog(const TGWindow* p,const TGWindow* main, EAliEveFileDialogMode mode) - : TGTransientFrame(p, main, 100,50, kVerticalFrame) - + : TGTransientFrame(p, main, 100,50, kVerticalFrame), + fESDFilesFrame(0), + fAdvancedOptsButton(0), + fAdvancedOptsFrame(0), + fESDfriendFilesFrame(0), + fAODFilesFrame(0), + fAODfriendFilesFrame(0), + fRawFilesFrame(0), + fUrlFrame(0), + fCDBFrame(0), + fDialogButtonsFrame(0), + fPathEntryESD(0), + fPathEntryESDfriend(0), + fPathEntryAOD(0), + fPathEntryAODfriend(0), + fPathEntryRawFile(0), + fPathEntryUrl(0), + fCDBPathCB(0), + fIsAccepted(kFALSE), + fMode(mode) { SetCleanup(kDeepCleanup); @@ -38,18 +57,36 @@ AliEveFileDialog::AliEveFileDialog(const TGWindow* p,const TGWindow* main, EAliE fESDFilesFrame->AddFrame(browseButtonESD, new TGLayoutHints(kLHintsNormal, 3, 3, 3, 3)); AddFrame(fESDFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); - - //Advanced Options Frame - fAdvancedOptsFrame = new TGHorizontalFrame(this, 100, 100); - fAdvancedOptsButton = new TGCheckButton(fAdvancedOptsFrame, "Advanced Options"); + + //Advanced Options Button + fAdvancedOptsButton = new TGCheckButton(this, "Advanced Options"); fAdvancedOptsButton->Connect("Toggled(Bool_t)", "AliEveFileDialog", this, "showAdvancedOpts(Bool_t)"); - fAdvancedOptsFrame->AddFrame(fAdvancedOptsButton, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + AddFrame(fAdvancedOptsButton,new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + +//Advanced Options Frame + //ESDfriend Frame + fAdvancedOptsFrame = new TGGroupFrame(this, "Advanced Options"); + + fESDfriendFilesFrame = new TGHorizontalFrame(fAdvancedOptsFrame, 100, 100); + TGLabel* esdFriendLabel = new TGLabel(fESDfriendFilesFrame, "ESDfriend File:"); + esdFriendLabel->Resize(110, esdFriendLabel->GetDefaultHeight()); + esdFriendLabel->SetMargins(0,0,0,0); + + fPathEntryESDfriend= new TGTextEntry(fESDfriendFilesFrame); + fPathEntryESDfriend->Resize(250, fPathEntryESDfriend->GetDefaultHeight()); - AddFrame(fAdvancedOptsFrame,new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + TGTextButton* browseButtonESDfriend = new TGTextButton(fESDfriendFilesFrame, "Browse..."); + browseButtonESDfriend->Connect("Clicked()", "AliEveFileDialog", this, "onBrowseESDfriendFile()"); + fESDfriendFilesFrame->AddFrame(esdFriendLabel, new TGLayoutHints(kLHintsLeft | kLHintsCenterY, 3, 3, 3, 3)); + fESDfriendFilesFrame->AddFrame(fPathEntryESDfriend, new TGLayoutHints(kLHintsExpandX, 3, 3, 3, 3)); + fESDfriendFilesFrame->AddFrame(browseButtonESDfriend, new TGLayoutHints(kLHintsNormal, 3, 3, 3, 3)); + + fAdvancedOptsFrame->AddFrame(fESDfriendFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + // AOD Frame - fAODFilesFrame = new TGHorizontalFrame(this, 100, 100); + fAODFilesFrame = new TGHorizontalFrame(fAdvancedOptsFrame, 100, 100); TGLabel* aodLabel = new TGLabel(fAODFilesFrame, "AOD File:"); aodLabel->Resize(110, aodLabel->GetDefaultHeight()); @@ -63,10 +100,10 @@ AliEveFileDialog::AliEveFileDialog(const TGWindow* p,const TGWindow* main, EAliE fAODFilesFrame->AddFrame(fPathEntryAOD, new TGLayoutHints(kLHintsExpandX, 3, 3, 3, 3)); fAODFilesFrame->AddFrame(browseButtonAOD, new TGLayoutHints(kLHintsNormal, 3, 3, 3, 3)); - AddFrame(fAODFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + fAdvancedOptsFrame->AddFrame(fAODFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); // AODfriend Frame - fAODfriendFilesFrame = new TGHorizontalFrame(this, 100, 100); + fAODfriendFilesFrame = new TGHorizontalFrame(fAdvancedOptsFrame, 100, 100); TGLabel* aodFriendLabel = new TGLabel(fAODfriendFilesFrame, "AODfriend File:"); aodFriendLabel->Resize(110, aodFriendLabel->GetDefaultHeight()); @@ -80,10 +117,10 @@ AliEveFileDialog::AliEveFileDialog(const TGWindow* p,const TGWindow* main, EAliE fAODfriendFilesFrame->AddFrame(fPathEntryAODfriend, new TGLayoutHints(kLHintsExpandX, 3, 3, 3, 3)); fAODfriendFilesFrame->AddFrame(browseButtonAODfriend, new TGLayoutHints(kLHintsNormal, 3, 3, 3, 3)); - AddFrame(fAODfriendFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + fAdvancedOptsFrame->AddFrame(fAODfriendFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); // Raw Frame - fRawFilesFrame = new TGHorizontalFrame(this, 100, 100); + fRawFilesFrame = new TGHorizontalFrame(fAdvancedOptsFrame, 100, 100); TGLabel* rawLabel = new TGLabel(fRawFilesFrame, "Raw File:"); rawLabel->Resize(110, rawLabel->GetDefaultHeight()); @@ -97,10 +134,11 @@ AliEveFileDialog::AliEveFileDialog(const TGWindow* p,const TGWindow* main, EAliE fRawFilesFrame->AddFrame(fPathEntryRawFile, new TGLayoutHints(kLHintsExpandX, 3, 3, 3, 3)); fRawFilesFrame->AddFrame(browseButtonRawFile, new TGLayoutHints(kLHintsNormal, 3, 3, 3, 3)); - AddFrame(fRawFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + fAdvancedOptsFrame->AddFrame(fRawFilesFrame, new TGLayoutHints(kLHintsNormal | kLHintsExpandX, 3, 3, 3, 3)); + AddFrame(fAdvancedOptsFrame, new TGLayoutHints(kLHintsExpandX | kLHintsExpandY, 3, 3, 3, 3) ); - /**************** + /**************** *** Url Frame *** *****************/ fUrlFrame = new TGHorizontalFrame(this, 100, 100); @@ -180,6 +218,11 @@ const TString AliEveFileDialog::GetPathESD() const return TString(fPathEntryESD->GetText()); } +const TString AliEveFileDialog::GetPathESDfriend() const +{ + return TString(fPathEntryESDfriend->GetText()); +} + const TString AliEveFileDialog::GetPathAOD() const { return TString(fPathEntryAOD->GetText()); @@ -241,6 +284,28 @@ void AliEveFileDialog::onBrowseESDFile() new TGFileDialog(GetParent(), GetMain(), kFDOpen, fileInfo); fPathEntryESD->SetText(fileInfo->fFilename); + + // look for the other files in the current directory + + + + delete fileInfo; + +} + +void AliEveFileDialog::onBrowseESDfriendFile() +{ + TGFileInfo* fileInfo = new TGFileInfo; + + const char* types[] = { "ALICE ESDfriends file", "*.root", + "ROOT Archive", "*.zip", + 0, 0}; + + fileInfo->fFileTypes = types; + + new TGFileDialog(GetParent(), GetMain(), kFDOpen, fileInfo); + + fPathEntryESDfriend->SetText(fileInfo->fFilename); delete fileInfo; @@ -341,16 +406,15 @@ void AliEveFileDialog::MapSubwindows() // Show/Hide Widgets according to the current Mode if(fMode==kAliEveFDLocal){ ShowFrame(fESDFilesFrame); + ShowFrame(fAdvancedOptsButton); showAdvancedOpts(fAdvancedOptsButton->IsDown()); HideFrame(fUrlFrame); } else{ // remote file HideFrame(fESDFilesFrame); + HideFrame(fAdvancedOptsButton); HideFrame(fAdvancedOptsFrame); - HideFrame(fAODFilesFrame); - HideFrame(fAODfriendFilesFrame); - HideFrame(fRawFilesFrame); ShowFrame(fUrlFrame); } @@ -361,27 +425,23 @@ void AliEveFileDialog::showAdvancedOpts(Bool_t shown) { UInt_t w, h; if(shown){ - ShowFrame(fAODFilesFrame); - ShowFrame(fAODfriendFilesFrame); - ShowFrame(fRawFilesFrame); + ShowFrame(fAdvancedOptsFrame); + fAdvancedOptsFrame->MapWindow(); Layout(); - h = fESDFilesFrame->GetSize().fHeight+fAdvancedOptsFrame->GetSize().fHeight+fAODFilesFrame->GetSize().fHeight; - h+= fAODfriendFilesFrame->GetSize().fHeight+fRawFilesFrame->GetSize().fHeight+fCDBFrame->GetSize().fHeight+fDialogButtonsFrame->GetSize().fHeight; + h = fESDFilesFrame->GetSize().fHeight+fAdvancedOptsFrame->GetSize().fHeight+fAdvancedOptsButton->GetSize().fHeight+fCDBFrame->GetSize().fHeight+fDialogButtonsFrame->GetSize().fHeight; }else{ - HideFrame(fAODFilesFrame); - HideFrame(fAODfriendFilesFrame); - HideFrame(fRawFilesFrame); + HideFrame(fAdvancedOptsFrame); + fAdvancedOptsFrame->UnmapWindow(); Layout(); - h = fESDFilesFrame->GetSize().fHeight+fAdvancedOptsFrame->GetSize().fHeight+fCDBFrame->GetSize().fHeight+fDialogButtonsFrame->GetSize().fHeight; + h = fESDFilesFrame->GetSize().fHeight+fAdvancedOptsButton->GetSize().fHeight+fCDBFrame->GetSize().fHeight+fDialogButtonsFrame->GetSize().fHeight; } TGDimension size = GetSize(); w = size.fWidth; - - Resize(w,h+40); + Resize(w,h+30); } diff --git a/EVE/EveBase/AliEveFileDialog.h b/EVE/EveBase/AliEveFileDialog.h index fa27f9d161a..a4433557a3f 100644 --- a/EVE/EveBase/AliEveFileDialog.h +++ b/EVE/EveBase/AliEveFileDialog.h @@ -35,6 +35,7 @@ public: //const TString GetDirectory(); // directory where the ESD resides const TString GetPathESD() const; + const TString GetPathESDfriend() const; const TString GetPathAOD() const; const TString GetPathAODfriend() const; const TString GetPathRaw() const; @@ -44,6 +45,7 @@ public: const TString GetCDBStoragePath() const; void onBrowseESDFile(); + void onBrowseESDfriendFile(); void onBrowseAODFile(); void onBrowseAODfriendFile(); void onBrowseRawFile(); @@ -65,8 +67,10 @@ private: AliEveFileDialog& operator=(const AliEveFileDialog&); // not implemented TGHorizontalFrame* fESDFilesFrame; - TGHorizontalFrame* fAdvancedOptsFrame; TGCheckButton* fAdvancedOptsButton; + + TGGroupFrame* fAdvancedOptsFrame; + TGHorizontalFrame* fESDfriendFilesFrame; TGHorizontalFrame* fAODFilesFrame; TGHorizontalFrame* fAODfriendFilesFrame; TGHorizontalFrame* fRawFilesFrame; @@ -74,6 +78,7 @@ private: TGHorizontalFrame* fCDBFrame; TGHorizontalFrame* fDialogButtonsFrame; TGTextEntry* fPathEntryESD; + TGTextEntry* fPathEntryESDfriend; TGTextEntry* fPathEntryAOD; TGTextEntry* fPathEntryAODfriend; TGTextEntry* fPathEntryRawFile; diff --git a/EVE/EveBase/AliEveMainWindow.cxx b/EVE/EveBase/AliEveMainWindow.cxx index 264a1c48bf7..610910bf292 100644 --- a/EVE/EveBase/AliEveMainWindow.cxx +++ b/EVE/EveBase/AliEveMainWindow.cxx @@ -89,7 +89,16 @@ void AliEveMainWindow::onMenuFileItem(UInt_t id) fFileDialog->setMode(kAliEveFDLocal); fFileDialog->MapWindow(); - if(fFileDialog->accepted()) openFile(fFileDialog->GetPathESD()); + + if(fFileDialog->accepted()) { + AliEveEventManager::SetESDFileName(fFileDialog->GetPathESD()); + AliEveEventManager::SetESDfriendFileName(fFileDialog->GetPathESDfriend()); + AliEveEventManager::SetAODFileName(fFileDialog->GetPathAOD()); + AliEveEventManager::AddAODfriend(fFileDialog->GetPathAODfriend()); + AliEveEventManager::SetRawFileName(fFileDialog->GetPathRaw()); + AliEveEventManager::SetCdbUri(fFileDialog->GetCDBStoragePath()); + loadFiles(); + } break; } case MENU_FILE_OPEN_URL: @@ -98,7 +107,39 @@ void AliEveMainWindow::onMenuFileItem(UInt_t id) fFileDialog->setMode(kAliEveFDRemote); fFileDialog->MapWindow(); - if(fFileDialog->accepted()) openFile(fFileDialog->GetUrl()); + if(fFileDialog->accepted()) { + AliEveEventManager::SetFilesPath(fFileDialog->GetUrl()); + AliEveEventManager::SetCdbUri(fFileDialog->GetCDBStoragePath()); + + + + // Open event + if (fFileDialog->GetUrl().BeginsWith("alien:")) + { + if (gGrid != 0) + { + Info("AliEveMainWindow::openFile", "TGrid already initializied. Skiping checks and initialization."); + } + else + { + Info("AliEveMainWindow::openFile", "AliEn requested - connecting."); + if (gSystem->Getenv("GSHELL_ROOT") == 0) + { + Error("AliEveMainWindow::openFile", "AliEn environment not initialized. Aborting."); + new TGMsgBox(gClient->GetRoot(), this, "AliEve", "AliEn environment not initialized. Aborting.", kMBIconStop); + return; + } + if (TGrid::Connect("alien") == 0) + { + Error("AliEveMainWindow::openFile", "TGrid::Connect() failed. Aborting."); + new TGMsgBox(gClient->GetRoot(), this, "AliEve", "TGrid::Connect() failed. Aborting.", kMBIconStop); + return; + } + } + } + + loadFiles(); + } break; } @@ -142,9 +183,7 @@ void AliEveMainWindow::onMenuGoItem(UInt_t id) AliEveMultiView *mv = AliEveMultiView::Instance(); - //mv->DestroyEventRPhi(); mv->ImportEventRPhi(top); - //mv->DestroyEventRhoZ(); mv->ImportEventRhoZ(top); gEve->Redraw3D(kTRUE); @@ -279,53 +318,10 @@ void AliEveMainWindow::setupToolbars() //fToolBar->Connect("Clicked(Int_t)", "RCMainWindow", this, "openFile()"); } -void AliEveMainWindow::openFile(const TString& path) +void AliEveMainWindow::loadFiles() { - Info("AliEveMainWindow::openFile", "Trying to open the file [%s]", path.Data()); - - TString esdFile = fFileDialog->GetPathESD(); - TString aodFile = fFileDialog->GetPathAOD(); - TString aodFriendFile = fFileDialog->GetPathAODfriend(); - TString rawFile = fFileDialog->GetPathRaw(); - TString cdbUri = fFileDialog->GetCDBStoragePath(); - - Info("AliEveMainWindow::openFile", "ESD:%s AOD:%s AODfriend:%s RAW:%s CDB:%s", esdFile.Data(), aodFile.Data(), aodFriendFile.Data(), rawFile.Data(), cdbUri.Data()); - - TEveUtil::AssertMacro("VizDB_scan.C"); - - AliEveEventManager::SetESDFileName(esdFile); - AliEveEventManager::SetAODFileName(aodFile); - AliEveEventManager::AddAODfriend(aodFriendFile); - AliEveEventManager::SetRawFileName(rawFile); - AliEveEventManager::SetCdbUri(cdbUri); - - // Open event - if (path.BeginsWith("alien:")) - { - if (gGrid != 0) - { - Info("AliEveMainWindow::openFile", "TGrid already initializied. Skiping checks and initialization."); - } - else - { - Info("AliEveMainWindow::openFile", "AliEn requested - connecting."); - if (gSystem->Getenv("GSHELL_ROOT") == 0) - { - Error("AliEveMainWindow::openFile", "AliEn environment not initialized. Aborting."); - new TGMsgBox(gClient->GetRoot(), this, "AliEve", "AliEn environment not initialized. Aborting.", kMBIconStop); - return; - } - if (TGrid::Connect("alien") == 0) - { - Error("AliEveMainWindow::openFile", "TGrid::Connect() failed. Aborting."); - new TGMsgBox(gClient->GetRoot(), this, "AliEve", "TGrid::Connect() failed. Aborting.", kMBIconStop); - return; - } - } - } - TString name("Event"); // CINT has trouble with direct "Event". - new AliEveEventManager(name, path, 0); + new AliEveEventManager(name, 0); gEve->AddEvent(AliEveEventManager::GetMaster()); TEveUtil::AssertMacro("VizDB_scan.C"); diff --git a/EVE/EveBase/AliEveMainWindow.h b/EVE/EveBase/AliEveMainWindow.h index 90acf9ad3f1..186faf6c334 100644 --- a/EVE/EveBase/AliEveMainWindow.h +++ b/EVE/EveBase/AliEveMainWindow.h @@ -99,7 +99,7 @@ protected: void setupMenus(); void setupToolbars(); - void openFile(const TString &path); + void loadFiles(); private: AliEveMainWindow(const AliEveMainWindow& other);// Not implemented diff --git a/EVE/macros/alieve_init.C b/EVE/macros/alieve_init.C index 1380f65c960..3a1ef7d963a 100644 --- a/EVE/macros/alieve_init.C +++ b/EVE/macros/alieve_init.C @@ -35,6 +35,8 @@ void alieve_init(const TString& cdburi = "", gSystem->ProcessEvents(); + AliEveEventManager::SetFilesPath(path); + AliEveEventManager::SetESDFileName(esdfile); AliEveEventManager::SetRawFileName(rawfile); AliEveEventManager::SetCdbUri(cdburi); @@ -66,7 +68,7 @@ void alieve_init(const TString& cdburi = "", Info("alieve_init", "Opening event %d from '%s' ...", event, path.Data()); TString name("Event"); // CINT has trouble with direct "Event". - new AliEveEventManager(name, path, event); + new AliEveEventManager(name, event); gEve->AddEvent(AliEveEventManager::GetMaster()); } diff --git a/EVE/macros/visscan_init.C b/EVE/macros/visscan_init.C index c6ecd64a016..b7c1177b450 100644 --- a/EVE/macros/visscan_init.C +++ b/EVE/macros/visscan_init.C @@ -72,16 +72,16 @@ void visscan_init(const TString& cdburi = "", mv->SetDepth(-10); - TEveUtil::LoadMacro("geom_gentle.C+"); + TEveUtil::LoadMacro("geom_gentle.C"); mv->InitGeomGentle(geom_gentle(), geom_gentle_rphi(), geom_gentle_rhoz(), 0); if (showTrd) { - TEveUtil::LoadMacro("geom_gentle_trd.C+"); + TEveUtil::LoadMacro("geom_gentle_trd.C"); mv->InitGeomGentleTrd(geom_gentle_trd()); } if (gShowMuonRPhi || gShowMuonRhoZ) { - TEveUtil::LoadMacro("geom_gentle_muon.C+"); + TEveUtil::LoadMacro("geom_gentle_muon.C"); mv->InitGeomGentleMuon(geom_gentle_muon(kFALSE), gShowMuonRPhi, gShowMuonRhoZ, kFALSE); } @@ -91,87 +91,87 @@ void visscan_init(const TString& cdburi = "", // Registration of per-event macros //============================================================================== - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Track", "kine_tracks.C+", "kine_tracks", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits ITS", "its_hits.C+", "its_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits TPC", "tpc_hits.C+", "tpc_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits T0", "t0_hits.C+", "t0_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits FMD", "fmd_hits.C+", "fmd_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits ACORDE", "acorde_hits.C+", "acorde_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits EMCAL", "emcal_hits.C+", "emcal_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits TOF", "tof_hits.C+", "tof_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits TRD", "trd_hits.C+", "trd_hits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits VZERO", "vzero_hits.C+", "vzero_hits", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG ITS", "its_digits.C+", "its_digits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG TPC", "tpc_digits.C+", "tpc_digits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG TOF", "tof_digits.C+", "tof_digits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG HMPID", "hmpid_digits.C+","hmpid_digits","", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG FMD", "fmd_digits.C+", "fmd_digits", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW ITS", "its_raw.C+", "its_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW TPC", "tpc_raw.C+", "tpc_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW TOF", "tof_raw.C+", "tof_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW HMPID", "hmpid_raw.C+", "hmpid_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW T0", "t0_raw.C+", "t0_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW FMD", "fmd_raw.C+", "fmd_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW VZERO", "vzero_raw.C+", "vzero_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW ACORDE", "acorde_raw.C+", "acorde_raw", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX", "primary_vertex.C+", "primary_vertex", "", kTRUE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Ellipse", "primary_vertex.C+", "primary_vertex_ellipse", "", kTRUE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Box", "primary_vertex.C+", "primary_vertex_box", "kFALSE, 3, 3, 3", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX SPD", "primary_vertex.C+", "primary_vertex_spd", "", kTRUE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Ellipse SPD", "primary_vertex.C+", "primary_vertex_ellipse_spd", "", kTRUE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Box SPD", "primary_vertex.C+", "primary_vertex_box_spd", "kFALSE, 3, 3, 3", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX TPC", "primary_vertex.C+", "primary_vertex_tpc", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Ellipse TPC", "primary_vertex.C+", "primary_vertex_ellipse_tpc", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Box TPC", "primary_vertex.C+", "primary_vertex_box_tpc", "kFALSE, 3, 3, 3", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC V0", "esd_V0_points.C+", "esd_V0_points_onfly")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC V0", "esd_V0_points.C+", "esd_V0_points_offline")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC V0", "esd_V0.C+", "esd_V0")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC CSCD", "esd_cascade_points.C+", "esd_cascade_points")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC CSCD", "esd_cascade.C+", "esd_cascade")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC KINK", "esd_kink_points.C+", "esd_kink_points")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC KINK", "esd_kink.C+", "esd_kink")); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks", "esd_tracks.C+", "esd_tracks", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks ITS standalone", "esd_tracks.C+", "esd_tracks_ITS_standalone", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks ITS", "esd_tracks.C+", "esd_tracks_ITS", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks TPC", "esd_tracks.C+", "esd_tracks_TPC", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks MI", "esd_tracks.C+", "esd_tracks_MI", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks by category", "esd_tracks.C+", "esd_tracks_by_category", "", kTRUE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks by anal cuts", "esd_tracks.C+", "esd_tracks_by_anal_cuts", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks Lego", "lego.C+", "lego", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks Beams Info", "beams_info.C+", "beams_info", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracklets SPD", "esd_spd_tracklets.C+", "esd_spd_tracklets", "", kTRUE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC ZDC", "esd_zdc.C+", "esd_zdc", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters", "clusters.C+", "clusters", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters ITS", "its_clusters.C+", "its_clusters")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TPC", "tpc_clusters.C+", "tpc_clusters")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TRD", "trd_clusters.C+", "trd_clusters")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TOF", "tof_clusters.C+", "tof_clusters")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters HMPID", "hmpid_clusters.C+", "hmpid_clusters")); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters PHOS", "phos_clusters.C+", "phos_clusters")); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TPC", "vplot_tpc.C+", "vplot_tpc", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kAOD, "ANA HF", "aod_HF.C+", "aod_HF", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kAOD, "ANA Jets", "jetplane.C+", "jetplane", "", kFALSE)); - - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "DUMP VZERO", "vzero_dump.C+", "vzero_dump", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Track", "kine_tracks.C", "kine_tracks", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits ITS", "its_hits.C", "its_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits TPC", "tpc_hits.C", "tpc_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits T0", "t0_hits.C", "t0_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits FMD", "fmd_hits.C", "fmd_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits ACORDE", "acorde_hits.C", "acorde_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits EMCAL", "emcal_hits.C", "emcal_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits TOF", "tof_hits.C", "tof_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits TRD", "trd_hits.C", "trd_hits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM Hits VZERO", "vzero_hits.C", "vzero_hits", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG ITS", "its_digits.C", "its_digits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG TPC", "tpc_digits.C", "tpc_digits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG TOF", "tof_digits.C", "tof_digits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG HMPID", "hmpid_digits.C","hmpid_digits","", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG FMD", "fmd_digits.C", "fmd_digits", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW ITS", "its_raw.C", "its_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW TPC", "tpc_raw.C", "tpc_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW TOF", "tof_raw.C", "tof_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW HMPID", "hmpid_raw.C", "hmpid_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW T0", "t0_raw.C", "t0_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW FMD", "fmd_raw.C", "fmd_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW VZERO", "vzero_raw.C", "vzero_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW ACORDE", "acorde_raw.C", "acorde_raw", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX", "primary_vertex.C", "primary_vertex", "", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Ellipse", "primary_vertex.C", "primary_vertex_ellipse", "", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Box", "primary_vertex.C", "primary_vertex_box", "kFALSE, 3, 3, 3", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX SPD", "primary_vertex.C", "primary_vertex_spd", "", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Ellipse SPD", "primary_vertex.C", "primary_vertex_ellipse_spd", "", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Box SPD", "primary_vertex.C", "primary_vertex_box_spd", "kFALSE, 3, 3, 3", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX TPC", "primary_vertex.C", "primary_vertex_tpc", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Ellipse TPC", "primary_vertex.C", "primary_vertex_ellipse_tpc", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC PVTX Box TPC", "primary_vertex.C", "primary_vertex_box_tpc", "kFALSE, 3, 3, 3", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC V0", "esd_V0_points.C", "esd_V0_points_onfly")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC V0", "esd_V0_points.C", "esd_V0_points_offline")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC V0", "esd_V0.C", "esd_V0")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC CSCD", "esd_cascade_points.C", "esd_cascade_points")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC CSCD", "esd_cascade.C", "esd_cascade")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC KINK", "esd_kink_points.C", "esd_kink_points")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC KINK", "esd_kink.C", "esd_kink")); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks", "esd_tracks.C", "esd_tracks", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks ITS standalone", "esd_tracks.C", "esd_tracks_ITS_standalone", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks ITS", "esd_tracks.C", "esd_tracks_ITS", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks TPC", "esd_tracks.C", "esd_tracks_TPC", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks MI", "esd_tracks.C", "esd_tracks_MI", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks by category", "esd_tracks.C", "esd_tracks_by_category", "", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks by anal cuts", "esd_tracks.C", "esd_tracks_by_anal_cuts", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks Lego", "lego.C", "lego", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks Beams Info", "beams_info.C", "beams_info", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracklets SPD", "esd_spd_tracklets.C", "esd_spd_tracklets", "", kTRUE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC ZDC", "esd_zdc.C", "esd_zdc", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters", "clusters.C", "clusters", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters ITS", "its_clusters.C", "its_clusters")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TPC", "tpc_clusters.C", "tpc_clusters")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TRD", "trd_clusters.C", "trd_clusters")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TOF", "tof_clusters.C", "tof_clusters")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters HMPID", "hmpid_clusters.C", "hmpid_clusters")); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters PHOS", "phos_clusters.C", "phos_clusters")); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters TPC", "vplot_tpc.C", "vplot_tpc", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kAOD, "ANA HF", "aod_HF.C", "aod_HF", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kAOD, "ANA Jets", "jetplane.C", "jetplane", "", kFALSE)); + + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "DUMP VZERO", "vzero_dump.C", "vzero_dump", "", kFALSE)); if (showMuon) { - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM TrackRef MUON", "muon_trackRefs.C+", "muon_trackRefs", "kTRUE", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW MUON", "muon_raw.C+", "muon_raw", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG MUON", "muon_digits.C+", "muon_digits", "", kFALSE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters MUON", "muon_clusters.C+", "muon_clusters", "", kTRUE)); - exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks MUON", "esd_muon_tracks.C+", "esd_muon_tracks", "kTRUE,kFALSE", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "SIM TrackRef MUON", "muon_trackRefs.C", "muon_trackRefs", "kTRUE", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRawReader, "RAW MUON", "muon_raw.C", "muon_raw", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "DIG MUON", "muon_digits.C", "muon_digits", "", kFALSE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kRunLoader, "REC Clusters MUON", "muon_clusters.C", "muon_clusters", "", kTRUE)); + exec->AddMacro(new AliEveMacro(AliEveMacro::kESD, "REC Tracks MUON", "esd_muon_tracks.C", "esd_muon_tracks", "kTRUE,kFALSE", kTRUE)); } //============================================================================== -- 2.43.0