#include "AliHLTProcessor.h"
#include "AliRawReaderMemory.h"
-#include "AliITSClusterFinder.h"
#include "AliITSDetTypeRec.h"
#include "AliITSgeom.h"
#include "AliITSInitGeometry.h"
+#include "TClonesArray.h"
+#include "AliHLTDataTypes.h"
+#include "TTree.h"
+#include "AliHLTComponentBenchmark.h"
+
+class AliHLTITSClusterFinderSPD;
+class AliHLTITSClusterFinderSSD;
+
/**
* @class AliHLTITSClusterFinderComponent
* a configuration argument without parameters
*
* <h2>Default CDB entries:</h2>
- * TODO
+ * ITS/Calib/SPDNoisy
+ * ITS/Calib/SPDDead
+ * TRIGGER/SPD/PITConditions
+ * ITS/Calib/CalibSDD
+ * ITS/Calib/RespSDD
+ * ITS/Calib/DriftSpeedSDD
+ * ITS/Calib/DDLMapSDD
+ * ITS/Calib/MapsTimeSDD
+ * ITS/Calib/NoiseSSD
+ * ITS/Calib/GainSSD
+ * ITS/Calib/BadChannelsSSD
+ * GRP/CTP/Scalers
*
* <h2>Performance:</h2>
* TODO
enum {
kClusterFinderSPD,
kClusterFinderSDD,
- kClusterFinderSSD
+ kClusterFinderSSD,
+ kClusterFinderDigits
};
/*
* ---------------------------------------------------------------------------------
Int_t DoDeinit();
/** EventLoop */
- //Int_t DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
- // AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr
- // ,AliHLTUInt32_t& size, AliHLTComponentBlockList& outputBlocks);
+
+ Int_t DoEvent(
+ const AliHLTComponentEventData& evtData,
+ const AliHLTComponentBlockData* blocks,
+ AliHLTComponentTriggerData& /*trigData*/,
+ AliHLTUInt8_t* outputPtr,
+ AliHLTUInt32_t& size,
+ vector<AliHLTComponentBlockData>& outputBlocks );
- Int_t DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& /*trigData*/);
+ //Int_t DoEvent( const AliHLTComponentEventData& /*evtData*/, AliHLTComponentTriggerData& /*trigData*/);
int Reconfigure(const char* cdbEntry, const char* chainId);
* properties.
*/
int Configure(const char* arguments);
+
+ void RecPointToSpacePoint(AliHLTUInt8_t* outputPtr,AliHLTUInt32_t& size);
/*
* ---------------------------------------------------------------------------------
* Members - private
* use fModeSwitch = 0 for SPD
* use fModeSwitch = 1 for SDD
* use fModeSwitch = 2 for SSD
+ * use fModeSwitch = 3 for ClusterFinding on Digits (Full ITS)
*/
- Int_t fModeSwitch;
-
+ Int_t fModeSwitch; // !
+ AliHLTComponentDataType fInputDataType; // !
+ AliHLTComponentDataType fOutputDataType; // !
+
+ Bool_t fUseOfflineFinder; // flag to use the offline clusterfinder
Int_t fNModules; // total number of modules
Int_t fId; // ddl offset
Int_t fNddl; // number of ddl's
- /** the cluster finder object */
- AliITSClusterFinder* fClusterFinder; //!transient
-
+ TClonesArray** fClusters; //!transient
+
/** the reader object for data decoding */
- AliRawReaderMemory* fRawReader; //!transient
+ AliRawReaderMemory* fRawReader; //!transient
AliITSDetTypeRec* fDettype; //!transient
-
AliITSgeom* fgeom; //!transient
-
AliITSInitGeometry* fgeomInit; //!transient
+
+ AliHLTITSClusterFinderSPD *fSPD; //!transient
+ AliHLTITSClusterFinderSSD *fSSD; //!transient
+
+ TTree *tD; //!transient
+ TTree *tR; //!transient
+
+ std::vector<AliITSRecPoint> fclusters; //!transient
+
+ AliHLTComponentBenchmark fBenchmark;// benchmark
ClassDef(AliHLTITSClusterFinderComponent, 0)
- };
+};
#endif