]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/TRD/AliHLTTRDClusterizerComponent.h
minor update of HLT TRD macros (Theodor)
[u/mrichter/AliRoot.git] / HLT / TRD / AliHLTTRDClusterizerComponent.h
index 561b50f68ee4ebcf58f4bfb8e16ada35c00498d2..be09319e3a6b36c30f4233b1ef75c1418639163e 100644 (file)
@@ -1,22 +1,26 @@
+//-*- Mode: C++ -*-
 // $Id$
 
 #ifndef ALIHLTTRDCLUSTERIZERCOMPONENT_H
 #define ALIHLTTRDCLUSTERIZERCOMPONENT_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   AliHLTTRDClusterizerComponent.h
-    @author Timm Steinbeck, Matthias Richter
+    @author 
     @date   
-    @brief  Declaration of a TRDClusterizer component. */
+    @brief  Declaration of a TRDClusterizer component.
+*/
 
 
 #include "AliHLTProcessor.h"
 class AliCDBManager;
-class AliTRDclusterizerHLT;
+class AliHLTTRDClusterizer;
 class AliRawReaderMemory;
 class TFile;
-class TGeoManager;
+class AliTRDrecoParam;
+class AliTRDReconstructor;
 
 /**
  * @class AliHLTTRDClusterizerComponent
@@ -27,52 +31,70 @@ class TGeoManager;
  * @ingroup alihlt_tutorial
  */
 class AliHLTTRDClusterizerComponent : public AliHLTProcessor
-    {
-    public:
-       AliHLTTRDClusterizerComponent();
-       virtual ~AliHLTTRDClusterizerComponent();
-
-       // Public functions to implement AliHLTComponent's interface.
-       // These functions are required for the registration process
-
-       const char* GetComponentID();
-       void GetInputDataTypes( vector<AliHLTComponent_DataType>& list);
-       AliHLTComponent_DataType GetOutputDataType();
-       virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
-       AliHLTComponent* Spawn();
+{
+public:
+  AliHLTTRDClusterizerComponent();
+  virtual ~AliHLTTRDClusterizerComponent();
+
+  // Public functions to implement AliHLTComponent's interface.
+  // These functions are required for the registration process
+
+  const char* GetComponentID();
+  void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
+  AliHLTComponentDataType GetOutputDataType();
+  int GetOutputDataTypes(AliHLTComponentDataTypeList& tgtList);
+  virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
+  AliHLTComponent* Spawn();
        
-    protected:
+protected:
        
-       // Protected functions to implement AliHLTComponent's interface.
-       // These functions provide initialization as well as the actual processing
-       // capabilities of the component. 
+  // Protected functions to implement AliHLTComponent's interface.
+  // These functions provide initialization as well as the actual processing
+  // capabilities of the component. 
 
-       int DoInit( int argc, const char** argv );
-       int DoDeinit();
-       int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
-                    AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
-                    AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
+  int DoInit( int argc, const char** argv );
+  int DoDeinit();
+  int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
+              AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
+              AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
+  int Reconfigure(const char* cdbEntry, const char* chainId);
+  void PrintObject( TClonesArray* inClustersArray);
 
-       using AliHLTProcessor::DoEvent;
+  using AliHLTProcessor::DoEvent;
+
+  int Configure(const char* arguments);
+  int SetParams();
        
-    private:
+protected:
+  /** copy constructor prohibited */
+  AliHLTTRDClusterizerComponent(const AliHLTTRDClusterizerComponent&);
+  /** assignment operator prohibited */
+  AliHLTTRDClusterizerComponent& operator=(const AliHLTTRDClusterizerComponent&);
 
-       // The size of the output data produced, as a percentage of the input data's size.
-       // Can be greater than 100 (%)
+  // The size of the output data produced, as a percentage of the input data's size.
+  // Can be greater than 100 (%)
 
-       unsigned fOutputPercentage; // Output volume in percentage of the input
+  unsigned int fOutputPercentage; // Output volume in percentage of the input
+  unsigned int fOutputConst;
 
-       string fStrorageDBpath; // Default path for OCDB
+  AliHLTTRDClusterizer *fClusterizer; //! Offline derived HLT clusterizer
+  AliTRDrecoParam *fRecoParam; //! Offline reco params
+  AliRawReaderMemory *fMemReader; //! Input raw data reader
+  AliTRDReconstructor *fReconstructor;
 
-       AliTRDclusterizerHLT *fClusterizer; //! Offline derived HLT clusterizer
-       AliCDBManager *fCDB; //! Pointer to OCDB
-       AliRawReaderMemory *fMemReader; //! Input raw data reader
+  Int_t fRecoParamType;        // default will be the low flux
+  Int_t fRecoDataType;         // default will be simulation
+  Int_t fRawDataVersion;       // depreceated ?
+  Int_t fyPosMethod;           // 0=COG 1=LUT 2=Gauss 
+  TString fgeometryFileName;
+  Bool_t fProcessTracklets;    // write the L1 tracklets to output
+  Bool_t fHLTstreamer;         // use FastStreamer
+  Bool_t fTC;                  // using tail cancellation
+  Bool_t fHLTflag;             // use HLT flag in reconstructor
+  Bool_t fHighLevelOutput;     // do we what to have high level output (only for debuging)
+  Bool_t fEmulateHLTClusters;  // for debugging data containers
 
-       string fGeometryFileName; // Path to geometry file 
-       TFile *fGeometryFile; //! // Pointer to the geom root file
-       TGeoManager *fGeoManager; //! Pointer to geometry manager 
-       
-       ClassDef(AliHLTTRDClusterizerComponent, 0)
+  ClassDef(AliHLTTRDClusterizerComponent, 5)
 
-    };
+};
 #endif