]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
New flag to fill enable/disable filling of AOD on run level.
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 8 Mar 2010 12:59:44 +0000 (12:59 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 8 Mar 2010 12:59:44 +0000 (12:59 +0000)
STEER/AliAODHandler.cxx
STEER/AliAODHandler.h

index def0805b1f2f0562f13ef4729e1d681ab0407006..d65bfdd1f000002b7091fd28b220120465971d35 100644 (file)
@@ -52,6 +52,7 @@ AliAODHandler::AliAODHandler() :
     AliVEventHandler(),
     fIsStandard(kTRUE),
     fFillAOD(kTRUE),
+    fFillAODRun(kTRUE),
     fNeedsHeaderReplication(kFALSE),
     fNeedsTracksBranchReplication(kFALSE),
     fNeedsVerticesBranchReplication(kFALSE),
@@ -80,6 +81,7 @@ AliAODHandler::AliAODHandler(const char* name, const char* title):
     AliVEventHandler(name, title),
     fIsStandard(kTRUE),
     fFillAOD(kTRUE),
+    fFillAODRun(kTRUE),
     fNeedsHeaderReplication(kFALSE),
     fNeedsTracksBranchReplication(kFALSE),
     fNeedsVerticesBranchReplication(kFALSE),
@@ -125,7 +127,7 @@ Bool_t AliAODHandler::Init(Option_t* opt)
   // Initialize IO
   //
   // Create the AODevent object
-  Bool_t createStdAOD = fIsStandard || fFillAOD;
+  Bool_t createStdAOD = fIsStandard || fFillAODRun;
   if(!fAODEvent && createStdAOD){
     fAODEvent = new AliAODEvent();
     if (fIsStandard) fAODEvent->CreateStdContent();
@@ -390,7 +392,7 @@ void AliAODHandler::StoreMCParticles(){
 Bool_t AliAODHandler::FinishEvent()
 {
   // Fill data structures
-  if(fFillAOD){
+  if(fFillAOD && fFillAODRun){
       fAODEvent->MakeEntriesReferencable();
       // StoreMCParticles();
       FillTree();
index e209db20c860e9cd1df68e844d4acb16af8900a0..ac4d69dec6e0bcedbf286c1a0c7b33d98a9d61d2 100644 (file)
@@ -40,8 +40,9 @@ class AliAODHandler : public AliVEventHandler {
     virtual Bool_t       Terminate();
     virtual Bool_t       TerminateIO();
     //
-    virtual void         SetCreateNonStandardAOD()   {fIsStandard = kFALSE;}
-    virtual void         SetFillAOD(Bool_t b)      {fFillAOD = b;}
+    virtual void         SetCreateNonStandardAOD()               {fIsStandard = kFALSE;}
+    virtual void         SetFillAOD(Bool_t b)                    {fFillAOD = b;}
+    virtual void         SetFillAODforRun(Bool_t b)              {fFillAODRun = b;}
     virtual void         SetNeedsHeaderReplication()             {fNeedsHeaderReplication             = kTRUE;}
     virtual void         SetNeedsTracksBranchReplication()       {fNeedsTracksBranchReplication       = kTRUE;}
     virtual void         SetNeedsVerticesBranchReplication()     {fNeedsVerticesBranchReplication     = kTRUE;}
@@ -92,7 +93,8 @@ class AliAODHandler : public AliVEventHandler {
     AliAODHandler& operator=(const AliAODHandler&);  // Not implemented
  private:
     Bool_t                   fIsStandard;                         // Flag for standard aod creation
-    Bool_t                   fFillAOD;                            // Flag for filling of the AOD tree at the end (all or nothing)
+    Bool_t                   fFillAOD;                            // Flag for filling of the AOD tree at the end (all or nothing evt by evt)
+    Bool_t                   fFillAODRun;                         // Flag for filling of the AOD tree at the end (run)
     Bool_t                   fNeedsHeaderReplication;             // Flag for header replication
     Bool_t                   fNeedsTracksBranchReplication;       // Flag for tracks replication
     Bool_t                   fNeedsVerticesBranchReplication;     // Flag for vertices replication