]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/EveBase/AliEveEventManager.h
Including time.h
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveEventManager.h
index 9a5a47a34a54c0ba35d0b8daee37fc1338bbdeb5..3eb9ca25c0591da47327e7a94318d84da563e18b 100644 (file)
@@ -15,6 +15,7 @@
 #include <TObjArray.h>
 
 class AliEveMacroExecutor;
+class AliEveEventSelector; 
 
 class AliRunLoader;
 class AliESDEvent;
@@ -22,11 +23,15 @@ class AliESDfriend;
 class AliAODEvent;
 class AliRawReader;
 
+class AliGRPObject;
 class AliMagF;
 
+class TEveElement;
 class TFile;
 class TTree;
 class TGeoManager;
+class TString;
+class TMap;
 
 //==============================================================================
 //
@@ -48,6 +53,7 @@ public:
   static void SetCdbUri     (const TString& cdb);
   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);
@@ -60,9 +66,6 @@ public:
   virtual void  NextEvent();
   virtual void  PrevEvent();
   virtual void  Close();
-  Bool_t        FindNextByTrigger(Int_t& i);
-  Bool_t        FindPrevByTrigger(Int_t& i);
-
 
   Int_t         GetEventId()         const { return fEventId; }
   AliRunLoader* GetRunLoader()       const { return fRunLoader; }
@@ -75,9 +78,12 @@ public:
   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;
 
+  static Int_t  CurrentEventId();
+
   static Bool_t HasRunLoader();
   static Bool_t HasESD();
   static Bool_t HasESDfriend();
@@ -90,6 +96,7 @@ public:
   static AliAODEvent*  AssertAOD();
   static AliRawReader* AssertRawReader();
 
+  static AliMagF*      AssertMagField();
   static TGeoManager*  AssertGeometry();
 
   static AliEveEventManager* AddDependentManager(const TString& name, const TString& path);
@@ -98,22 +105,28 @@ public:
   static AliEveEventManager* GetMaster();
   static AliEveEventManager* GetCurrent();
 
+  static void                RegisterTransient    (TEveElement* element);
+  static void                RegisterTransientList(TEveElement* element);
+
+
   Double_t      GetAutoLoadTime()        const { return fAutoLoadTime; }
   Bool_t        GetAutoLoad()            const { return fAutoLoad;     }
   void          SetAutoLoadTime(Float_t time);
   void          SetAutoLoad(Bool_t autoLoad);
+  void          SetTrigSel(Int_t trig);
   void          AutoLoadNextEvent();
 
-  Bool_t        GetSelectOnTriggerType()     const { return fSelectOnTriggerType; }
-  TString       GetTriggerType()             const { return fTriggerType; }
-  void          SetTriggerType(const TString& triggertype) { fTriggerType = triggertype; }
-  void          SetSelectOnTriggerType(Bool_t sel)         { fSelectOnTriggerType = sel; }
-
   Bool_t        AreEventFilesOpened()    const { return fIsOpen;       }
   Bool_t        IsEventAvailable()       const { return fHasEvent;     }
   Bool_t        IsUnderExternalControl() const { return fExternalCtrl; }
+  
+  Bool_t        InsertGlobal(const TString& tag, TEveElement* model);
+  Bool_t        InsertGlobal(const TString& tag, TEveElement* model,
+                             Bool_t replace, Bool_t update);
+  TEveElement*  FindGlobal(const TString& tag);
 
   virtual void  AfterNewEventLoaded();
+  void          NewEventDataLoaded();  // *SIGNAL*
   void          NewEventLoaded();      // *SIGNAL*
 
   AliEveMacroExecutor* GetExecutor() const { return fExecutor; }
@@ -143,11 +156,17 @@ protected:
   Bool_t        fHasEvent;              // Is an event available.
   Bool_t        fExternalCtrl;          // Are we under external event-loop.
 
-  Bool_t        fSelectOnTriggerType;   // Whether to select on trigger-type.
-  TString       fTriggerType;           // Trigger-type to select on.
+  TMap*         fGlobal;
+  Bool_t        fGlobalReplace;         // Are global replace
+  Bool_t        fGlobalUpdate;          // Are global updates
 
   AliEveMacroExecutor *fExecutor;       // Executor for std macros
 
+  TEveElementList     *fTransients;     // Container for additional transient (per event) elements.
+  TEveElementList     *fTransientLists; // Container for lists of transient (per event) elements.
+
+  AliEveEventSelector* fPEventSelector; // Event filter
+
   TList        *fSubManagers;           // Dependent event-managers, used for event embedding.
 
   static TString  fgESDFileName;        // Name by which to open ESD.
@@ -161,6 +180,12 @@ protected:
 
   static TList   *fgAODfriends;         // Global list of AOD friend names to be attached during opening of the event-data (empty by default).
 
+  static Bool_t   fgRawFromStandardLoc; // Global flag to enable looking for raw data in ../../../raw/, as it is stored for central reco.
+
+  static Bool_t        fgGRPLoaded;     // Global run parameters loaded?
+  static AliMagF      *fgMagField;      // Global pointer to magnetic field.
+  static Bool_t        fgUniformField;  // Track with uniform field.
+
 private:
   AliEveEventManager(const AliEveEventManager&);            // Not implemented
   AliEveEventManager& operator=(const AliEveEventManager&); // Not implemented
@@ -169,6 +194,8 @@ private:
   void StartAutoLoadTimer();
   void StopAutoLoadTimer();
 
+  static Bool_t InitGRP();
+
   Bool_t fAutoLoadTimerRunning; // State of auto-load timer.
 
   static AliEveEventManager* fgMaster;