]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/TPCLib/AliHLTTPCFileHandler.h
Dphi as pseudo pt for tracklets + matching cut on muons
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCFileHandler.h
index 3745207e3f5a267056698eea2e29e8b395bdef86..5553314fc4763210600d73c025df5029988db2bc 100644 (file)
@@ -1,25 +1,20 @@
-// @(#) $Id$
+// $Id$
 // Original: AliHLTFileHandler.h,v 1.19 2004/06/11 16:06:33 loizides 
 
 #ifndef ALIHLTTPCFILEHANDLER_H
 #define ALIHLTTPCFILEHANDLER_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                               */
-
-/** @file   AliHLTTPCFileHandler.h
-    @author U. Frankenfeld, A. Vestbo, C. Loizides, maintained by
-            Matthias Richter
-    @date   
-    @brief  file input for the TPC tracking code before migration to the
-            HLT component framework
-
-// see below for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-                                                                          */
+//* 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   AliHLTTPCFileHandler.h
+/// @author U. Frankenfeld, A. Vestbo, C. Loizides, maintained by
+///         Matthias Richter
+/// @date   
+/// @brief  file input for the TPC tracking code before migration to the
+///         HLT component framework
+///
+
 #include "AliHLTTPCMemHandler.h"
 
 class TClonesArray;
@@ -32,16 +27,17 @@ class TObject;
 class TFile;
 class TTree;
 
-class AliHLTTPCSpacePointData;
-class AliHLTTPCDigitRowData;
-class AliHLTTPCTrackSegmentData;
+struct AliHLTTPCSpacePointData;
+struct AliHLTTPCDigitRowData;
+struct AliHLTTPCTrackSegmentData;
 class AliHLTTPCTrackArray;
 
 /**
- * class AliHLTTPCFileHandler
+ * @class AliHLTTPCFileHandler
  * This is the input interface class for the TPC tracking code before conversion to
  * the HLT component framework.
  * 
+ * @ingroup alihlt_tpc
  */
 class AliHLTTPCFileHandler:public AliHLTTPCMemHandler {
 
@@ -75,6 +71,7 @@ class AliHLTTPCFileHandler:public AliHLTTPCMemHandler {
    *
    * Calls the @ref AliHLTTPCMemHandler::Memory2BinaryFile to write the file.
    */
+
   Bool_t AliDigits2BinaryFile(Int_t event=0,Bool_t altro=kFALSE);
 
   /**
@@ -92,21 +89,32 @@ class AliHLTTPCFileHandler:public AliHLTTPCMemHandler {
    * @return pointer to array, size in nrow <br>
    *         NULL in case of failure, required size in pTgtSize
    */
-  AliHLTTPCDigitRowData *AliDigits2Memory(UInt_t & nrow,Int_t event=0, Byte_t* tgtBuffer=NULL, UInt_t* pTgtSize=NULL);
+  //TODO: Check that the following change works. It should, but just double check.
+  AliHLTTPCDigitRowData *AliDigits2Memory(UInt_t & nrow,Int_t event, Byte_t* tgtBuffer, UInt_t* pTgtSize=NULL);
+
+  AliHLTTPCDigitRowData *AliDigits2Memory(UInt_t & nrow,Int_t event=0)
+  {
+    return AliDigits2Memory(nrow, event, NULL, NULL);
+  }
 
   /**
-   * Convert and filetr AliDigits from AliRoot file to HLT Digit data in memory.
+   * Convert and filter AliDigits from AliRoot file to HLT Digit data in memory.
    * This functions is the same as @ref AliDigits2Memory but in addition it
    * filters out single timebins, which is noise. The timebins which
    * are removed are timebins which have the 4 zero neighbours; 
    * (pad-1,time),(pad+1,time),(pad,time-1),(pad,time+1).
    *
-   * This is legacy code, the two function contain big portions of identical code
+   * This is legacy code, the two functions contain big portions of identical code
    * will be merged.
    * See @ref AliDigits2Memory for detailed description.
    */
   AliHLTTPCDigitRowData *AliAltroDigits2Memory(UInt_t & nrow,Int_t event=0,Bool_t eventmerge=kFALSE); 
 
+  /**
+   * Convert AliDigits from AliRoot file to Altro data format in memory.
+   */
+  int AliDigits2Altro(Int_t event, Byte_t* tgtBuffer, UInt_t size);
+
   /**
    * Write AliDigits from AliRoot file to binary file.
    * @param event      event no
@@ -118,20 +126,11 @@ class AliHLTTPCFileHandler:public AliHLTTPCMemHandler {
    */
   Bool_t AliDigits2CompBinary(Int_t event=0,Bool_t altro=kFALSE);  
 
-  /**
-   * Write the data stored in rowPt, into a new AliROOT file.
-   * The data is stored in the AliROOT format 
-   * This is specially a nice thing if you have modified data, and wants to run it  
-   * through the offline reconstruction chain.
-   * The arguments is a pointer to the data, and the name of the new AliROOT file.
-   * Remember to pass the original AliROOT file (the one that contains the original
-   * simulated data) to this object, in order to retrieve the MC id's of the digits.
-  */
-  void AliDigits2RootFile(AliHLTTPCDigitRowData *rowPt,Char_t *newDigitsfile);
-
   //Point IO
+
   Bool_t AliPoints2Binary(Int_t eventn=0);
-  AliHLTTPCSpacePointData *AliPoints2Memory(UInt_t & npoint,Int_t eventn=0);//Allocates Memory
+  // Is this really still used : JMT 2013-03-03 - corresponding IO removed in TPC  
+  //  AliHLTTPCSpacePointData *AliPoints2Memory(UInt_t & npoint,Int_t eventn=0);//Allocates Memory
 
  protected:
   AliRunLoader *fInAli;//!
@@ -142,13 +141,13 @@ class AliHLTTPCFileHandler:public AliHLTTPCMemHandler {
 
   TTree *fDigitsTree;//!
   FILE *fMC;//!
-  
+
   Bool_t fIndexCreated;   //is index created
-  Int_t  fIndex[36][159]; //stores index over digitstree 
+  Int_t  fIndex[fgkNSlice][fgkNRow]; //stores index over digitstree 
                           //for faster access w/o ASVVERSION
   Bool_t fUseStaticIndex; //take static index
   static Bool_t fgStaticIndexCreated;   //global index created
-  static Int_t  fgStaticIndex[36][159]; //global index
+  static Int_t  fgStaticIndex[fgkNSlice][fgkNRow]; //global index
 
   virtual Bool_t SetAliInput();
   Bool_t GetDigitsTree(Int_t event);
@@ -160,7 +159,7 @@ class AliHLTTPCFileHandler:public AliHLTTPCMemHandler {
   /** assignment operator prohibited */
   AliHLTTPCFileHandler& operator=(const AliHLTTPCFileHandler&);
 
-  ClassDef(AliHLTTPCFileHandler,1)   //Filehandler class
+  ClassDef(AliHLTTPCFileHandler,0)   //HLT TPC Filehandler IO class
 };
 
 #endif