activating individual HLT simulations from digits and raw data
[u/mrichter/AliRoot.git] / HLT / rec / AliHLTEsdManagerImplementation.h
index a66d733..77d57b8 100644 (file)
@@ -7,11 +7,11 @@
 //* ALICE Experiment at CERN, All rights reserved.                         *
 //* See cxx source for full Copyright notice                               *
 
-/** @file   AliHLTEsdManagerImplementation.h
-    @author Matthias Richter
-    @date   
-    @brief  Implementation of the AliHLTEsdManager
-*/
+/// @file   AliHLTEsdManagerImplementation.h
+/// @author Matthias Richter
+/// @date   
+/// @brief  Implementation of the AliHLTEsdManager
+///         This is an implementation of the abstract interface AliHLTEsdManager
 
 #include "AliHLTEsdManager.h"
 #include "AliESDEvent.h"
@@ -103,6 +103,14 @@ class AliHLTEsdManagerImplementation : public AliHLTEsdManager {
     static bool IsStdContent(const char* key);
   };
 
+  int CheckClassConditions() const;
+
+  AliESDEvent* CreateEsdEvent(bool bCreateStdContent=false) const;
+
+  int AddObject(AliESDEvent* pESD, const TObject* pObject, const char* branchname) const;
+
+  int ResetEsdEvent(AliESDEvent* pESD) const;
+
  protected:
 
  private:
@@ -135,9 +143,9 @@ class AliHLTEsdManagerImplementation : public AliHLTEsdManager {
     void SetDirectory(const char* directory);
 
     /**
-     * Delete the ESD file.
+     * Set the tree name
      */
-    void Delete();
+    void SetTreeName(const char* treename) {fTreeName=treename;}
 
     /**
      * Get name of the ESD file.
@@ -159,15 +167,6 @@ class AliHLTEsdManagerImplementation : public AliHLTEsdManager {
     /** assignment operator prohibited */
     AliHLTEsdListEntry& operator=(const AliHLTEsdListEntry& src);
 
-    /**
-     * Write ESD to temporary file.
-     * The ESD is embedded into a tree and saved to a temporary file.
-     * The file name is retrieved by TSystem::GetTempFileName and returned
-     * on success.
-     * @return file name, empty on failure
-     */
-    TString WriteTempFile(AliESDEvent* pESD) const;
-
     /** root file name */
     TString fName; //!transient
     /** target directory */
@@ -182,6 +181,8 @@ class AliHLTEsdManagerImplementation : public AliHLTEsdManager {
     AliESDEvent* fpEsd; //!transient
     /** Prefix for generated ESD objects in the master ESD */
     TString fPrefix; //!transient
+    /** name of the tree to be created */
+    TString fTreeName; //!transient
   };
 
   typedef vector<AliHLTEsdListEntry*> AliHLTEsdPList;
@@ -196,10 +197,12 @@ class AliHLTEsdManagerImplementation : public AliHLTEsdManager {
 
   /** target directory */
   TString fDirectory; //!transient
+  /** target directory */
+  TString fTreeName; //!transient
   /** write local files */
   bool fWriteLocal; //!transient
 
-  ClassDef(AliHLTEsdManagerImplementation, 2)
+  ClassDef(AliHLTEsdManagerImplementation, 3)
 };
 
 #endif