]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/ITS/AliHLTITSAgent.h
including a setter to turn on pile-up rejection with one of the SPD methods (not...
[u/mrichter/AliRoot.git] / HLT / ITS / AliHLTITSAgent.h
index 39fba1917982e8ffbacc14f5ee2f91a17fb89411..634f10df1e5819a39921d1d925850bce37d9af92 100644 (file)
@@ -1,3 +1,4 @@
+//-*- Mode: C++ -*-
 // $Id$
 
 #ifndef ALIHLTITSAGENT_H
@@ -6,11 +7,11 @@
 //* ALICE Experiment at CERN, All rights reserved.                         *
 //* See cxx source for full Copyright notice                               *
 
-/** @file   AliHLTITSAgent.h
-    @author Matthias Richter
-    @date   25.08.2008
-    @brief  Agent of the libAliHLTITS library
-*/
+/ @file   AliHLTITSAgent.h
+//  @author Matthias Richter
+//  @date   25.08.2008
+//  @brief  Agent of the libAliHLTITS library
+//  @note
 
 #include "AliHLTModuleAgent.h"
 
@@ -42,13 +43,14 @@ class AliHLTITSAgent : public AliHLTModuleAgent {
   virtual ~AliHLTITSAgent();
 
   /**
-   * Register all configurations belonging to the sample library with the
+   * Inherited from AliHLTModuleAgent
+   * Register all configurations belonging to this module with the
    * AliHLTConfigurationHandler. The agent can adapt the configurations
    * to be registered to the current AliRoot setup by checking the
    * runloader.
-   * @param handler   [in] the configuration handler
-   * @param rawReader [in] AliRoot RawReader instance 
-   * @param runloader [in] AliRoot runloader
+   * @param handler      the configuration handler
+   * @param rawReader    AliRawReader instance
+   * @param runloader    AliRoot runloader
    * @return neg. error code if failed
    */
   int CreateConfigurations(AliHLTConfigurationHandler* handler,
@@ -56,35 +58,59 @@ class AliHLTITSAgent : public AliHLTModuleAgent {
                           AliRunLoader* runloader=NULL) const;
 
   /**
-   * Get the top configurations for local event reconstruction.
+   * Inherited from AliHLTModuleAgent
+   * Get the top configurations belonging to this module.
    * A top configuration describes a processing chain. It can simply be
    * described by the last configuration(s) in the chain. 
    * The agent can adapt the configurations to be registered to the current
    * AliRoot setup by checking the runloader.
-   * @param rawReader [in] AliRoot RawReader instance 
-   * @param runloader [in] AliRoot runloader
-   * @return string containing the top configurations separated by blanks
+   * @param rawReader    AliRawReader instance
+   * @param runloader    AliRoot runloader
+   * @return number of configurations, neg. error code if failed
    */
   const char* GetReconstructionChains(AliRawReader* rawReader=NULL,
                                      AliRunLoader* runloader=NULL) const;
 
   /**
+   * Inherited from AliHLTModuleAgent
    * Component libraries which the configurations of this agent depend on.
    * @return list of component libraries as a blank-separated string.
    */
   const char* GetRequiredComponentLibraries() const;
 
   /**
+   * Inherited from AliHLTModuleAgent
    * Register components for the AliHLTSample library.
    * @param pHandler  [in] instance of the component handler          
    */
   int RegisterComponents(AliHLTComponentHandler* pHandler) const;
 
+  /**
+   * Inherited from AliHLTModuleAgent
+   * Return HLTOUT handler description for a certain data block in the
+   * HLTOUT payload.
+   * @return 1 if module provides a handler
+   */
   int GetHandlerDescription(AliHLTComponentDataType dt,
                            AliHLTUInt32_t spec,
                            AliHLTOUTHandlerDesc& desc) const;
+
+  /**
+   * Inherited from AliHLTModuleAgent
+   * Create HLTOUT handler for a certain data block in the
+   * HLTOUT payload. The same handler can be returned multiple
+   * times, even for different data types. The framework will
+   * handle this.
+   * @return pointer to handler
+   */
   AliHLTOUTHandler* GetOutputHandler(AliHLTComponentDataType dt,
                                     AliHLTUInt32_t spec);
+
+  /**
+   * Inherited from AliHLTModuleAgent
+   * Delete the instance of the handler. This is only called once
+   * even if the same handler has been issued multiple times
+   */
   int DeleteOutputHandler(AliHLTOUTHandler* pInstance);
 
   AliHLTModulePreprocessor* GetPreprocessor();
@@ -97,9 +123,20 @@ class AliHLTITSAgent : public AliHLTModuleAgent {
   private:
   };
 
+  /**
+   * Create configurations for all CFs for the ITS subdetectors
+   * Get the necessary information from AliDAQ using the detector id.
+   * @param pHandler       Instance of the configuration handler 
+   * @param detectorId     Id of the detector as specified in AliDAQ
+   * @param output         Target string to receive the configurations
+   * @return neg. error code f failed
+   */
+  int CreateCFConfigurations(AliHLTConfigurationHandler* pHandler, int detectorId, TString& output) const;
+
  protected:
 
  private:
+
   /** copy constructor prohibited */
   AliHLTITSAgent(const AliHLTITSAgent&);
   /** assignment operator prohibited */