]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/BASE/AliHLTConfigurationHandler.h
further work on HLTOUT treatment
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTConfigurationHandler.h
index 3a6f8e2a03031ce5f770fc27f5d4532c480930e8..b3090ef42fd9c482aa46ca92d5ca1de6e848eeb0 100644 (file)
+//-*- Mode: C++ -*-
 // $Id$
 
 #ifndef ALIHLTCONFIGURATIONHANDLER_H
 #define ALIHLTCONFIGURATIONHANDLER_H
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+/* This file is property of and copyright by the ALICE HLT Project        * 
+ * ALICE Experiment at CERN, All rights reserved.                         *
  * See cxx source for full Copyright notice                               */
 
 /** @file   AliHLTConfigurationHandler.h
     @author Matthias Richter
     @date   
-    @brief  global handling of HLT configurations.
+    @brief  Global handling of HLT configurations.
 */
 
-/* #include <cerrno> */
-#include <TObject.h>
+// see below for class documentation
+// or
+// refer to README to build package
+// or
+// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt   
+
 #include <TList.h>
-/* #include "AliHLTDataTypes.h" */
-/* #include "AliHLTLogging.h" */
-/* #include "AliHLTDataBuffer.h" */
 
+#include "AliHLTLogging.h"
+class AliHLTConfiguration;
+
+/**
+ * @class AliHLTConfigurationHandler
+ * @brief Global Handling of HLT configurations.
+ *
+ * This class implements the global handling of @ref AliHLTConfiguration objects.
+ * It is a list of all configuartion descriptor currently available in the system.
+ * Each @ref AliHLTConfiguration object is registerd automatically with the
+ * handler and put into the list.
+ *
+ * @note This class is only used for the @ref alihlt_system.
+ *
+ * @ingroup alihlt_system
+ */
 class AliHLTConfigurationHandler : public AliHLTLogging {
  public:
+  /** standard constructor */
   AliHLTConfigurationHandler();
+  
   //AliHLTConfigurationHandler(AliHLTConfiguration* pConf);
+
+  /** destructor */
   virtual ~AliHLTConfigurationHandler();
 
   /*****************************************************************************
    * registration
    */
 
-  // register a configuration to the global list of configurations
+  /**
+   * Register a configuration to the global list of configurations.
+   * @param pConf     The configuration to register
+   */
   int RegisterConfiguration(AliHLTConfiguration* pConf);
 
-  // create a configuration and register it
+  /**
+   * Create a configuration and register it.
+   * @param id
+   * @param component
+   * @param sources
+   * @param arguments
+   */
   int CreateConfiguration(const char* id, const char* component, const char* sources, const char* arguments);
 
-  // remove a configuration from the global list
+  /**
+   * Remove a configuration from the global list.
+   * @param pConf     The configuration to remove
+   */
   int RemoveConfiguration(AliHLTConfiguration* pConf);
+
+  /**
+   * Remove a configuration from the global list.
+   * @param id     The configuration to remove
+   */
   int RemoveConfiguration(const char* id);
 
-  // find a configuration from the global list
+  /**
+   * Find a configuration from the global list.
+   * @param id     Id of the configuration to find
+   */
   AliHLTConfiguration* FindConfiguration(const char* id);
 
-  // print the registered configurations to the logging function
+  /**
+   * Print the registered configurations to the logging function.
+   */
   void PrintConfigurations();
 
 
  private:
-  static TList fListConfigurations; // the list of registered configurations
-  static TList fListDynamicConfigurations; // the list of dynamic configurations (for proper cleanup)
+  /** the list of registered configurations */
+  TList fgListConfigurations;                              // see above
 
-  ClassDef(AliHLTConfigurationHandler, 0);
+  ClassDef(AliHLTConfigurationHandler, 1);
 };
 
 #endif