code documentation; minor enhancement of BlockFilter
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 14 Jun 2008 10:12:37 +0000 (10:12 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 14 Jun 2008 10:12:37 +0000 (10:12 +0000)
15 files changed:
HLT/BASE/util/AliHLTBlockFilterComponent.cxx
HLT/BASE/util/AliHLTBlockFilterComponent.h
HLT/BASE/util/AliHLTEsdCollectorComponent.h
HLT/BASE/util/AliHLTFilePublisher.h
HLT/BASE/util/AliHLTFileWriter.h
HLT/BASE/util/AliHLTLoaderPublisherComponent.h
HLT/BASE/util/AliHLTOUTPublisherComponent.h
HLT/BASE/util/AliHLTRawReaderPublisherComponent.h
HLT/BASE/util/AliHLTRootFileStreamerComponent.h
HLT/BASE/util/AliHLTRootFileWriterComponent.h
HLT/BASE/util/docalihltutil.c [new file with mode: 0644]
HLT/comp/AliHLTCOMPHuffmanAltro.h
HLT/comp/AliHLTCOMPHuffmanAltroCalibComponent.h
HLT/comp/AliHLTCOMPHuffmanAltroComponent.h
HLT/comp/AliHLTCOMPHuffmanData.h

index 46f322b..2c7c131 100644 (file)
@@ -109,6 +109,34 @@ int AliHLTBlockFilterComponent::DoInit( int argc, const char** argv )
       SetDataType(rule.fDataType, argv[i+1], argv[i+2]);
       i+=2;
 
+      // -origin
+    } else if (argument.CompareTo("-origin")==0) {
+      if ((bMissingParam=(i+1>=argc))) break;
+
+      if (!MatchExactly(rule.fDataType,kAliHLTAnyDataType)) {
+       // the data type has already been set, add to list
+       // and reset
+       fFilterRules.push_back(rule);
+       FillBlockData(rule);
+      }
+
+      SetDataType(rule.fDataType, NULL, argv[i+1]);
+      i+=1;
+
+      // -typeid
+    } else if (argument.CompareTo("-typeid")==0) {
+      if ((bMissingParam=(i+1>=argc))) break;
+
+      if (!MatchExactly(rule.fDataType,kAliHLTAnyDataType)) {
+       // the data type has already been set, add to list
+       // and reset
+       fFilterRules.push_back(rule);
+       FillBlockData(rule);
+      }
+
+      SetDataType(rule.fDataType, argv[i+1], NULL);
+      i+=1;
+
       // -dataspec
     } else if (argument.CompareTo("-dataspec")==0) {
       if ((bMissingParam=(++i>=argc))) break;
index 9b21775..e23c857 100644 (file)
@@ -3,21 +3,16 @@
 
 #ifndef ALIHLTBLOCKFILTERCOMPONENT_H
 #define ALIHLTBLOCKFILTERCOMPONENT_H
-/* 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                               */
+//* 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   AliHLTBlockFilterComponent.h
     @author Matthias Richter
     @date   
     @brief  A simple data block filter and merger, merges block descriptors
+*/
 
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-                                                                          */
 #include "AliHLTProcessor.h"
 
 /**
  * A data block merger and filter.
  * It merges data block descriptors fulfilling the filtering rules and
  * forwards the descriptors to the output. The actual data is not touched.
+ *
+ * <h2>General properties:</h2>
+ *
+ * Component ID: \b BlockFilter                                         <br>
+ * Library: \b libAliHLTUtil.so                                                <br>
+ * Input Data Types: kAliHLTAnyDataType                                        <br>
+ * Output Data Types: according to parameter and input blocks          <br>
+ *
+ * <h2>Mandatory arguments:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ *      
+ * <h2>Optional arguments:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * \li -datatype     <i> id origin      </i>                            <br>
+ *      e.g. <tt> -datatype 'ESD_TREE' 'TPC ' </tt>                     <br>
+ *      \b Note: due to the 4-character data origin it might be necessary to
+ *      append a blank to the detectorname, e.g. <tt>TPC -> 'TPC '</tt>
+ *
+ * \li -origin  <i> origin  </i>                                        <br>
+ *      e.g. -origin 'TPC ', \b Note:  the filter rule has type id 'ANY'
+ *
+ * \li -typeid  <i> id      </i>                                        <br>
+ *      e.g. -typeid ESD_TREE, \b Note: the filter rule has origin 'ANY'
+ *
+ * \li -dataspec     <i> specification </i>                             <br>
+ *      data specification treated as decimal number or hex number if
+ *      prepended by '0x'
+ *
+ * \li -verbose                                                         <br>
+ *      print out some more info messages, mainly for the sake of tutorials
+ *
+ * <h2>Configuration:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Configuration by component arguments.
+ *
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Output size:</h2>
+ * No additional data is produced. Data blocks are just forwarded.
+ *
+ * By default, all blocks will be published. By means of the \em -datatype,
+ * \em -origin, and \em -typeid arguments, the blocks can be selected. A list
+ * of filter rules can be built up by multiple usage of the arguments. Each
+ * time a new filter rule is added.
+ *
+ * No filtering by the data specification is applied unless then \em
+ * -specification argument is used. The specification applies to to the
+ * current filter rule, regardless of the sequence of -datatype/-specification
+ * arguments.
+ *
+ * @ingroup alihlt_util_components
  */
 class AliHLTBlockFilterComponent : public AliHLTProcessor
 {
index 7a87f96..b668864 100644 (file)
@@ -25,17 +25,37 @@ class AliHLTEsdManager;
  * multiple events into one file. It does not implement merging of ESDs
  * from one event but several origins.
  *
- * Component ID: \b EsdCollector <br>
- * Library: \b libAliHLTUtil.so
+ * <h2>General properties:</h2>
  *
- * Mandatory arguments: <br>
+ * Component ID: \b EsdCollector                                      <br>
+ * Library: \b libAliHLTUtil.so                                              <br>
+ * Input Data Types: kAliHLTDataTypeESDObject, kAliHLTDataTypeESDTree <br>
+ * Output Data Types: none                                           <br>
+ *
+ * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
  *
- * Optional arguments: <br>
+ * <h2>Optional arguments:</h2>
+ * The only AliHLTFileWriter argument of relevance is the \em -directory
+ * argument. See AliHLTFileWriter for full list of arguments.
+ *
+ * <h2>Configuration:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * The only AliHLTFileWriter argument of relevance is the -directory argument.
+ * Configuration by component arguments.
+ *
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Output size:</h2>
+ * No data published (AliHLTDataSink).
  *
- * See AliHLTFileWriter for full list of arguments.
+ * @ingroup alihlt_util_components
  */
 class AliHLTEsdCollectorComponent : public AliHLTFileWriter
 {
index 257e568..8af37cf 100644 (file)
@@ -3,9 +3,9 @@
 
 #ifndef ALIHLTFILEPUBLISHER_H
 #define ALIHLTFILEPUBLISHER_H
-/* 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                               */
+//* 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   AliHLTFilePublisher.h
     @author Matthias Richter
     @note   The class is used in Offline (AliRoot) context
 */
 
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt   
-
 #include "AliHLTDataSource.h"
 #include <TList.h>
 class TFile;
@@ -29,10 +23,14 @@ class TFile;
  * An HLT data source component which publishes data from one or a sequence
  * of files.<br>
  *
+ * <h2>General properties:</h2>
+ *
  * Component ID: \b FilePublisher <br>
- * Library: \b libAliHLTUtil.
+ * Library: \b libAliHLTUtil.so     <br>
+ * Input Data Types: none <br>
+ * Output Data Types: according to arguments <br>
  *
- * Mandatory arguments: <br>
+ * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
  * \li -datafile     <i> filename      </i>
  * \li -datafilelist <i> file pattern  </i> <br>
@@ -45,19 +43,38 @@ class TFile;
  * \li -nextevent
  *      indicate files published by the next event
  *
- * Optional arguments:<br>
+ * <h2>Optional arguments:</h2>
  * \li -open_files_at_start
  *      Opens all files during component initialisation rather than as needed
  *      during event processing. Note: this feature may result in the system
  *      running out of file handles if a large number of files was specified.
  *
+ * <h2>Configuration:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Configuration by component arguments.
+ *
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Output size:</h2>
+ * According to the available data. The component is an AliHLTDataSource
+ * and inteded to be used in the AliHLTSystem framework only. The component
+ * implements the standard AliHLTSystem adaptive buffer allocation. 
+ *
  * The component needs at least one argument \em -datafile or \em -datafilelist.
  * Both can occur multiple times. The \em -datatype and \em -dataspec
  * parameters are valid for all files until the next occurrence of
  * \em -datatype/spec.
  * All files er published within one event, unless the \em -nexevent specifies
  * where to break into multiple events.
- * @ingroup alihlt_component
+ *
+ * @ingroup alihlt_util_components
  */
 class AliHLTFilePublisher : public AliHLTDataSource  {
  public:
index fdabbec..b6dfc11 100644 (file)
  *
  * Component ID: \b FileWriter      <br>
  * Library: \b libAliHLTUtil.so     <br>
- * Input Data Types: @ref kAliHLTAllDataTypes <br>
+ * Input Data Types: ::kAliHLTAllDataTypes <br>
  * Output Data Types: none <br>
  *
- * kAliHLTAllDataTypes contains both kAliHLTAnyDataType and kAliHLTVoidDataType
+ * \b Note: ::kAliHLTAllDataTypes contains both ::kAliHLTAnyDataType and 
+ * ::kAliHLTVoidDataType
  *
  * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
  *
  * <h2>Configuration:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * no configuration
+ * Configuration by component arguments.
  *
  * <h2>Default CDB entries:</h2>
  * The component loads no CDB entries.
  *
  * <h2>Performance:</h2>
- * The component does not any event data processing.
+ * The component does not process any event data.
  *
  * <h2>Memory consumption:</h2>
- * The component does not any event data processing.
+ * The component does not process any event data.
  *
  * <h2>Output size:</h2>
- * The component has no output data.
+ * No data published (AliHLTDataSink).
  *
  *
  * By default, file name is built from the basename, the event number, the
  * The class can be used as a base class for file writers. Additional
  * argument scan can be implemented in @ref ScanArgument which is called
  * for each unknown argument.
- * @ingroup alihlt_component
+ *
+ * @ingroup alihlt_util_components
  */
 class AliHLTFileWriter : public AliHLTDataSink  {
  public:
index d5390d0..5203dcf 100644 (file)
@@ -23,10 +23,13 @@ class AliLoader;
  * 
  * <h2>General properties:</h2>
  *
- * Component ID: \b AliLoaderPublisher <br>
- * Library: \b libAliHLTUtil.
- * Input Data Types: none <br>
- * Output Data Types: according to parameter <br>
+ * Component ID: \b AliLoaderPublisher                                  <br>
+ * Library: \b libAliHLTUtil.so                                                <br>
+ * Input Data Types: none                                              <br>
+ * Output Data Types: according to parameter, suggested types:         <br>
+ * \li ::kAliHLTDataTypeAliTreeD for the digit tree
+ * \li ::kAliHLTDataTypeAliTreeR for the cluster tree
+ * , see @ref alihlt_component_datatypes                                <br>
  *
  * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
@@ -52,15 +55,18 @@ class AliLoader;
  * The component loads no CDB entries.
  *
  * <h2>Performance:</h2>
- * The component does not any event data processing.
+ * The component does not process any event data.
  *
  * <h2>Memory consumption:</h2>
- * The component does not any event data processing.
+ * The component does not process any event data.
  *
  * <h2>Output size:</h2>
- * 
+ * According to the available data. The component is an AliHLTDataSource
+ * and inteded to be used in the AliHLTSystem framework only. The component
+ * implements the standard AliHLTSystem adaptive buffer allocation. 
+ *
  *
- * @ingroup alihlt_system
+ * @ingroup alihlt_util_components
  */
 class AliHLTLoaderPublisherComponent : public AliHLTOfflineDataSource {
  public:
index b37fed6..72e4c2e 100644 (file)
  * a transparent transport layer. Filter rules by data type and
  * specification can be applied.
  * 
- * Component ID: \b AliHLTOUTPublisher <br>
- * Library: \b libAliHLTUtil.
+ * <h2>General properties:</h2>
  *
- * Mandatory arguments: <br>
+ * Component ID: \b AliHLTOUTPublisher                                  <br>
+ * Library: \b libAliHLTUtil.so                                                <br>
+ * Input Data Types: none                                              <br>
+ * Output Data Types: according to parameters and content of the HLTOUT        <br>
+ *
+ * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
  *      
- * Optional arguments:<br>
+ * <h2>Optional arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * \li -datatype     <i> id origin      </i>
- *      e.g. <tt> -datatype 'ESD_TREE' 'TPC ' </tt> <br>
+ * \li -datatype     <i> id origin      </i>                            <br>
+ *      e.g. <tt> -datatype 'ESD_TREE' 'TPC ' </tt>                     <br>
  *      \b Note: due to the 4-character data origin it might be necessary to
- *      append a blank to the detectorname, e.g. TPC -> 'TPC '
- * \li -origin  <i> origin      </i>
+ *      append a blank to the detectorname, e.g. <tt>TPC -> 'TPC '</tt>
+ *
+ * \li -origin  <i> origin  </i>                                        <br>
  *      e.g. -origin 'TPC ', \b Note:  the filter rule has type id 'ANY'
- * \li -typeid  <i> id      </i>
+ *
+ * \li -typeid  <i> id      </i>                                        <br>
  *      e.g. -typeid ESD_TREE, \b Note: the filter rule has origin 'ANY'
- * \li -dataspec     <i> specification </i> <br>
+ *
+ * \li -dataspec     <i> specification </i>                             <br>
  *      data specification treated as decimal number or hex number if
  *      prepended by '0x'
- * \li -verbose<br>
+ *
+ * \li -verbose                                                         <br>
  *      print out some more info messages, mainly for the sake of tutorials
  *
- * By default, all blocks will be published. By means of the -datatype,
- * -origin, and -typeid arguments, the blocks can be selected. A list of filter
- * rules can be built up by multiple usage of the arguments. Each time a new
- * filter rule is added.
+ * <h2>Configuration:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Configuration by component arguments.
+ *
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Output size:</h2>
+ * According to the available and selected data. The component is an
+ * AliHLTDataSource and inteded to be used in the AliHLTSystem framework
+ * only. The component implements the standard AliHLTSystem adaptive
+ * buffer allocation. 
+ *
+ * By default, all blocks will be published. By means of the \em -datatype,
+ * \em -origin, and \em -typeid arguments, the blocks can be selected. A list
+ * of filter rules can be built up by multiple usage of the arguments. Each
+ * time a new filter rule is added.
  *
- * No filtering by the data specification is applied unless the -specification
- * argument is used. The specification applies to to the current filter rule,
- * regardless of the sequence of -datatype/-specification arguments.
+ * No filtering by the data specification is applied unless then \em
+ * -specification argument is used. The specification applies to to the
+ * current filter rule, regardless of the sequence of -datatype/-specification
+ * arguments.
  *
- * @ingroup alihlt_system
+ * @ingroup alihlt_util_components
  */
 class AliHLTOUTPublisherComponent : public AliHLTOfflineDataSource {
  public:
index 9741be7..ddfe007 100644 (file)
@@ -3,9 +3,9 @@
 
 #ifndef ALIHLTRAWREADERPUBLISHERCOMPONENT_H
 #define ALIHLTRAWREADERPUBLISHERCOMPONENT_H
-/* 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                               */
+//* 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   AliHLTRawReaderPublisherComponent.h
     @author Matthias Richter
     @brief  A general data publisher component for the AliRawReader.
 */
 
-// see header file for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
 #include "AliHLTOfflineDataSource.h"
 
 /**
  * give range. If the RawReader does not provide any data, an empty data
  * block consisting of the Common Data Header is produced. 
  * 
- * Component ID: \b AliRawReaderPublisher <br>
- * Library: \b libAliHLTUtil.
+ * <h2>General properties:</h2>
+ *
+ * Component ID: \b AliRawReaderPublisher                               <br>
+ * Library: \b libAliHLTUtil.so                                                <br>
+ * Input Data Types: none                                              <br>
+ * Output Data Types: according to parameters and available RAW data   <br>
  *
- * Mandatory arguments: <br>
+ * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * The equipment id(s) must be defined by argument(s) out of:
  * \li -detector     <i> detector name      </i>
  *      e.g. <tt> -detector TPC </tt>
  * \li -equipmentid  <i> id      </i>
@@ -49,6 +48,9 @@
  * \li -maxid  <i> id      </i>
  *      the maximum equipmentid including detector offset (default = minid)<br>
  *      if the -detector option is used, the id is without detector offset
+ *
+ * <h2>Optional arguments:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
  * \li -verbose<br>
  *      print out some more info messages, mainly for the sake of tutorials
  * \li -skipempty
  *      data specification treated as decimal number or hex number if
  *      prepended by '0x'
  *
- * Optional arguments:<br>
+ * <h2>Configuration:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Configuration by component arguments.
+ *
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
  *
+ * <h2>Output size:</h2>
+ * According to the available data. The component is an AliHLTDataSource
+ * and inteded to be used in the AliHLTSystem framework only. The component
+ * implements the standard AliHLTSystem adaptive buffer allocation. 
  *
- * @ingroup alihlt_system
+ * @ingroup alihlt_util_components
  */
 class AliHLTRawReaderPublisherComponent : public AliHLTOfflineDataSource {
  public:
index a6e486c..41b3af3 100644 (file)
@@ -1,40 +1,63 @@
 // -*- Mode: C++ -*-
-// @(#) $Id$
-
+// $Id$
 #ifndef ALIHLTROOTFILESTREAMERCOMPONENT_H
 #define ALIHLTROOTFILESTREAMERCOMPONENT_H
-/* 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                               */
+//* 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   AliHLTRootFileStreamerComponent.h
     @author Matthias Richter
     @date   
     @brief  Save objects in a ROOT memory file
+*/
 
-                                                                          */
 #include "AliHLTProcessor.h"
 
 /**
  * @class AliHLTRootFileStreamerComponent
  * The RootFileStreamer provides a stand alone component to write incoming
- * TObject like structures into a ROOT memory file. The memory file is
- * published via the output stream.
+ * TObject like structures into a ROOT memory file. A ROOT memory file is
+ * a ROOT file stored in memory instead on disk (AliHLTMemoryFile) The file
+ * is published via the output stream. On the receiver side the file can
+ * be directly written to disk and appears like a normal root file.
  *
- * Component ID: \b ROOTFileStreamer <br>
- * Library: \b libAliHLTUtil.
+ * <h2>General properties:</h2>
  *
- * Mandatory arguments: <br>
- * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Component ID: \b ROOTFileStreamer                                    <br>
+ * Library: \b libAliHLTUtil.so                                         <br>
+ * Input Data Types: ::kAliHLTAnyDataType                               <br>
+ * Output Data Types: according to component arguments,
+ *                    ::kAliHLTVoidDataType by default                  <br>
  *
- * Optional arguments:<br>
+ * <h2>Mandatory arguments:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ *      
+ * <h2>Optional arguments:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
  * \li -datatype     <i> datatype   dataorigin </i> <br>
  *      data type ID and origin, e.g. <tt>-datatype CLUSTERS TPC </tt>
  * \li -dataspec     <i> specification </i> <br>
  *      data specification treated as decimal number or hex number if
  *      prepended by '0x'
  *
- * @ingroup alihlt_component
+ * <h2>Configuration:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Configuration by component arguments.
+ *
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Output size:</h2>
+ * No data published (AliHLTDataSink).
+ *
+ * @ingroup alihlt_util_components
  */
 class AliHLTRootFileStreamerComponent : public AliHLTProcessor
 {
index 8954d15..47c42e5 100644 (file)
@@ -3,18 +3,17 @@
 
 #ifndef ALIHLTROOTFILEWRITERCOMPONENT_H
 #define ALIHLTROOTFILEWRITERCOMPONENT_H
-/* 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                               */
+//* 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   AliHLTRootFileWriterComponent.h
     @author Matthias Richter
     @date   
     @brief  Base class for writer components to store data in a ROOT file
+*/
 
-                                                                          */
 #include "AliHLTFileWriter.h"
-//#include "TObject.h" 
 
 class TFile;
 
@@ -24,16 +23,37 @@ class TFile;
  * TObject like structures into a Root file. Furthermore it functions as
  * base class for customized writers.
  *
- * Component ID: \b ROOTFileWriter <br>
- * Library: \b libAliHLTUtil.so
+ * <h2>General properties:</h2>
  *
- * Mandatory arguments: <br>
+ * Component ID: \b ROOTFileWriter                                      <br>
+ * Library: \b libAliHLTUtil.so                                                <br>
+ * Input Data Types: ::kAliHLTAnyDataType                              <br>
+ * Output Data Types: none                                             <br>
+ *
+ * <h2>Mandatory arguments:</h2>
+ * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ *      
+ * <h2>Optional arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * See AliHLTFileWriter for full list of arguments.
  *
- * Optional arguments: <br>
+ * <h2>Configuration:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
+ * Configuration by component arguments.
  *
- * See AliHLTFileWriter for full list of arguments.
+ * <h2>Default CDB entries:</h2>
+ * The component loads no CDB entries.
+ *
+ * <h2>Performance:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Memory consumption:</h2>
+ * The component does not process any event data.
+ *
+ * <h2>Output size:</h2>
+ * No data published (AliHLTDataSink).
+ *
+ * @ingroup alihlt_util_components
  */
 class AliHLTRootFileWriterComponent : public AliHLTFileWriter
 {
diff --git a/HLT/BASE/util/docalihltutil.c b/HLT/BASE/util/docalihltutil.c
new file mode 100644 (file)
index 0000000..3342a0f
--- /dev/null
@@ -0,0 +1,34 @@
+// $Id$
+
+//**************************************************************************
+//* This file is property of and copyright by the ALICE HLT Project        * 
+//* ALICE Experiment at CERN, All rights reserved.                         *
+//*                                                                        *
+//* Permission to use, copy, modify and distribute this software and its   *
+//* documentation strictly for non-commercial purposes is hereby granted   *
+//* without fee, provided that the above copyright notice appears in all   *
+//* copies and that both the copyright notice and this permission notice   *
+//* appear in the supporting documentation. The authors make no claims     *
+//* about the suitability of this software for any purpose. It is          *
+//* provided "as is" without express or implied warranty.                  *
+//**************************************************************************
+
+/** @file   docalihltutil.c
+    @brief  Library documentation for the libAliHLTUtil library.
+*/
+
+/** 
+@defgroup alihlt_util The libAliHLTUtil library
+@ingroup alihlt_modules
+*/
+
+/**
+@defgroup alihlt_util_components HLT Toolbox components
+@ingroup alihlt_util
+*/
+
+
+#error Not for compilation
+//
+// EOF
+//
index 0b81b6b..df048a2 100644 (file)
@@ -118,7 +118,7 @@ class AliHLTCOMPHuffmanAltro : public AliHLTLogging
   Int_t CalcEntropy();
 
   /** function for merge sorting the array data 
-   * @param unsorted array  unsorted array of data from occurrence table
+   * @param unsortedarray   unsorted array of data from occurrence table
    * @param n               number of entries in the unsorted array
    * @return pointer to first element of sorted list
    */
@@ -145,7 +145,7 @@ class AliHLTCOMPHuffmanAltro : public AliHLTLogging
  Int_t EntropyCompression();
 
   /** merge sorting function for translation table
-   * @param unsorted array  Huffman code table which is not sorted for decompression yet
+   * @param unsortedarray   Huffman code table which is not sorted for decompression yet
    * @param n               number of entries in the unsorted array
    * @return pointer to first element of sorted list
    */
index c9a1be8..0ae64ce 100644 (file)
@@ -3,8 +3,9 @@
 #ifndef ALIHLTCOMPHUFFMANALTROCALIBCOMPONENT_H
 #define ALIHLTCOMPHUFFMANALTROCALIBCOMPONENT_H
 
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice                               */
+//* 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   AliHLTCOMPHuffmanAltroCalibComponent.h
     @author Jochen Thaeder
@@ -20,31 +21,38 @@ class AliHLTCOMPHuffmanData;
 
 /**
  * @class AliHLTCOMPHuffmanAltroCalibComponent
- * Component ID: \b HuffmanAltroCalibComponent <br>
- * Library: \b libAliHLTComp
  * This class is the calibration component for the AliTPCCalibHuffmanAltro class 
  * used for calibration of the Huffman code table (which is created here). 
  *
- * Mandatory arguments: <br>
+ * <h2>General properties:</h2>
+ *
+ * Component ID: \b HuffmanAltroCalibComponent                          <br>
+ * Library: \b libAliHLTComp.so                                         <br>
+ * Input Data Types: ::kAliHLTDataTypeDDLRaw                            <br>
+ * Output Data Types: AliHLTCompDefinitions::fgkHuffmanAltroCalDataType <br>
+ *
+ * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * \li -origin <i> detector <\i> <br>
+ * \li -origin <i> detector </i> <br>
  *  set origin of data for code creation to specify output table (parameter transient)
- * \li -runnumber <i> decimal number <\i> <br>
+ * \li -runnumber <i> decimal number </i> <br>
  *  set runnumber to specify output table (parameter transient)
- * \li -dataspec <i> 0xYYXXaabb <\i> <br>
+ * \li -dataspec <i> 0xYYXXaabb </i> <br>
  *  set usual HLT dataspec (last slice, first slice, last patch, first patch)_Hexadezimal to specify output table
- * \li -trailerwords <i> decimal number <\i> <br>
+ * \li -trailerwords <i> decimal number </i> <br>
  *  set number of trailerwords of incoming data (ranging from 1 to 3)
  *
- * Optional arguments: <br>
+ * <h2>Optional arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * \li -tablepath <i> path to Huffman code table <\i> <br>
- *  set path to out put Huffman code table as root file, if no path is given, output path is set to current path (parameter transient)
+ * \li -tablepath <i> path to Huffman code table </i> <br>
+ *  set path to out put Huffman code table as root file, if no path is given,
+ *  output path is set to current path (parameter transient)
  *
  * It inherits from the @ref AliHLTCalibrationProcessor and uses the high-level 
- * interface. The output is the class @ref HuffmanData as a TObject which is written to the data base
+ * interface. The output is the class AliHLTCOMPHuffmanData as a TObject which
+ * is written to the data base
  *
- * @ingroup alihlt_comp
+ * @ingroup alihlt_comp_components
  */
 class AliHLTCOMPHuffmanAltroCalibComponent : public AliHLTCalibrationProcessor
     {
index 00b14e2..9a0968b 100644 (file)
@@ -1,10 +1,11 @@
-// @(#) $Id$
-
+//-*- Mode: C++ -*-
+// $Id$
 #ifndef ALIHLTCOMPHUFFMANALTROCOMPONENT_H
 #define ALIHLTCOMPHUFFMANALTROCOMPONENT_H
 
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice                               */
+//* 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   AliHLTCOMPHuffmanAltroComponent.h
     @author Jenny Wagner
@@ -21,29 +22,40 @@ class AliHLTCOMPHuffmanData;
  * @class AliHLTCOMPHuffmanAltroComponent
  * Implementation of the Huffman compressor component.
  * The component implements the interface methods of the @ref AliHLTProcessor.
- * The actual Huffman compression and decompression algorithms are implemented in @ref AliHLTCOMPHuffmanAltro.
+ * The actual Huffman compression and decompression algorithms are implemented
+ * in AliHLTCOMPHuffmanAltro.
  * The component can handle compressed and decompressed data of different formats.
  * Two components are registered, the HuffmanCompressor and the HuffmanDecompressor.
- * Component ID: \b COMPHuffmanCompressor, COMPHuffmanCompressor <br>
- * Library: \b libAliHLTComp
+ *
+ * <h2>General properties:</h2>
+ *
+ * Component ID: \b COMPHuffmanCompressor, \b COMPHuffmanDecompressor   <br>
+ * Library: \b libAliHLTComp.so                                         <br>
+ * Input Data Types:                                                    <br>
+ * \li  COMPHuffmanDecompressor: AliHLTCompDefinitions::fgkDDLEncodedHuffmanAltroDataType
+ * \li  COMPHuffmanCompressor: ::kAliHLTDataTypeDDLRaw                  <br>
+ *
+ * Output Data Types:                                                   <br>
+ * \li  COMPHuffmanCompressor: AliHLTCompDefinitions::fgkDDLEncodedHuffmanAltroDataType
+ * \li  COMPHuffmanDecompressor: ::kAliHLTDataTypeDDLRaw                <br>
  * 
- * Mandatory arguments: <br>
+ * <h2>Mandatory arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * \li -origin <i> detector <\i> <br>
+ * \li -origin <i> detector </i> <br>
  *  set origin of data to specify Huffman code table to be read in (parameter transient)
- * \li -runnumber <i> decimal number <\i> <br>
+ * \li -runnumber <i> decimal number </i> <br>
  *  set runnumber to specify Huffman code table to be read in (parameter transient)
- * \li -dataspec <i> 0xYYXXaabb <\i> <br>
+ * \li -dataspec <i> 0xYYXXaabb </i> <br>
  *  set usual HLT dataspec (last slice, first slice, last patch, first patch)_Hexadezimal to specify Huffman code table to be read in
- * \li -trailerwords <i> decimal number <\i> <br>
+ * \li -trailerwords <i> decimal number </i> <br>
  *  set number of trailerwords of incoming data (ranging from 1 to 3)
  *
- * Optional arguments: <br>
+ * <h2>Optional arguments:</h2>
  * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
- * \li -tablepath <i> path to Huffman code table <\i> <br>
+ * \li -tablepath <i> path to Huffman code table </i> <br>
  *  set path to read Huffman code table from root file, if no path is given, path is set to current path (parameter transient)
  *
- * @ingroup alihlt_comp
+ * @ingroup alihlt_comp_components
  */
 class AliHLTCOMPHuffmanAltroComponent : public AliHLTProcessor {
  public:
index ff1d7e0..1c40b5c 100644 (file)
@@ -73,7 +73,7 @@ public:
   void InitHuffmanData(AliHLTCOMPHuffmanOccurrenceData::AliHLTCOMPHuffmanDataStruct* occurrencetable, AliHLTCOMPHuffmanCodeData::AliHLTCOMPHuffmanCodeStruct* codetable);
 
   /** return occurrence table to be used/written somewhere else (intialisation of Huffman Compressor tables)
-   * @param occurrence table  pointer to occurrence table
+   * @param occurrencetable table  pointer to occurrence table
    */
   AliHLTCOMPHuffmanOccurrenceData::AliHLTCOMPHuffmanDataStruct* GetOccurrenceTable(AliHLTCOMPHuffmanOccurrenceData::AliHLTCOMPHuffmanDataStruct* occurrencetable);