]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/TPCLib/tracking-ca/AliHLTTPCCATrackerComponent.h
bug fix: reconstruction crash when the output buffer size exceed
[u/mrichter/AliRoot.git] / HLT / TPCLib / tracking-ca / AliHLTTPCCATrackerComponent.h
index 6aebe0bb0923c77c885fee494c871fa7f783d10b..1b05fe08419bf3007d4edf769a77c50d0e96756a 100644 (file)
@@ -12,7 +12,8 @@
 
 #include "AliHLTProcessor.h"
 
-class AliHLTTPCCATracker;
+class AliHLTTPCCATrackerFramework;
+class AliHLTTPCCASliceOutput;
 class AliHLTTPCSpacePointData;
 
 /**
@@ -37,7 +38,7 @@ class AliHLTTPCCATrackerComponent : public AliHLTProcessor
     // Public functions to implement AliHLTComponent's interface.
     // These functions are required for the registration process
 
-    /** @see component interface @ref AliHLTComponent::GetComponentID */ 
+    /** @see component interface @ref AliHLTComponent::GetComponentID */
     const char* GetComponentID() ;
 
     /** @see component interface @ref AliHLTComponent::GetInputDataTypes */
@@ -69,29 +70,37 @@ class AliHLTTPCCATrackerComponent : public AliHLTProcessor
 
     /** @see component interface @ref AliHLTProcessor::DoEvent */
     int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
-                   AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
-                   AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
+                 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
+                 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
 
   private:
 
     /** the tracker object */
-    AliHLTTPCCATracker* fTracker;                                //! transient
+    AliHLTTPCCATrackerFramework* fTracker;                                //! transient
 
     /** magnetic field */
     double fSolenoidBz;                                            // see above
     int fMinNTrackClusters; //* required min number of clusters on the track
     double fClusterZCut;  //* cut on cluster Z position (for noise rejection at the age of TPC)
+       double fNeighboursSearchArea; //* area in cm for the neighbour search algorithm
+    double fClusterErrorCorrectionY; // correction for the cluster errors
+    double fClusterErrorCorrectionZ; // correction for the cluster errors
+
     double fFullTime; //* total time for DoEvent() [s]
     double fRecoTime; //* total reconstruction time [s]
     Long_t    fNEvents;  //* number of reconstructed events
-    bool fNewOutputType; //* use new type of output (temporary flag)
+    bool fOutputTRAKSEGS; //* use old type of output
+    bool fAllowGPU;    //* Allow this tracker to run on GPU
 
     static bool CompareClusters( AliHLTTPCSpacePointData *a, AliHLTTPCSpacePointData *b );
 
     /** set configuration parameters **/
-    int Configure( const char* arguments );
+    void SetDefaultConfiguration();
+    int ReadConfigurationString(  const char* arguments );
+    int ReadCDBEntry( const char* cdbEntry, const char* chainId );
+    int Configure( const char* cdbEntry, const char* chainId, const char *commandLine  );
 
     ClassDef( AliHLTTPCCATrackerComponent, 0 );
 
 };
-#endif
+#endif //ALIHLTTPCCATRACKERCOMPONENT_H