using namespace std;
#endif
#include "AliHLTTPCClusterFinderComponent.h"
-#include "AliHLTTPCDigitReaderPacked.h"
#include "AliHLTTPCDigitReaderUnpacked.h"
-#include "AliHLTTPCDigitReaderDecoder.h"
#include "AliHLTTPCDigitReader32Bit.h"
#include "AliHLTTPCClusterFinder.h"
#include "AliHLTTPCSpacePointData.h"
// see header file for class documentation
list.clear();
switch(fModeSwitch){
- case kClusterFinderPacked:
- list.push_back( kAliHLTDataTypeDDLRaw | kAliHLTDataOriginTPC );
- break;
case kClusterFinderUnpacked:
list.push_back( AliHLTTPCDefinitions::fgkUnpackedRawDataType );
break;
- case kClusterFinderDecoder:
- list.push_back( kAliHLTDataTypeDDLRaw | kAliHLTDataOriginTPC );
- break;
+ case kClusterFinderDecoder: // deprecated, falling back to 32bit reader
+ case kClusterFinderPacked: // deprecated, falling back to 32bit reader
case kClusterFinder32Bit:
list.push_back( kAliHLTDataTypeDDLRaw | kAliHLTDataOriginTPC );
break;
// XXX TODO: Find more realistic values.
constBase = 0;
switch(fModeSwitch){
- case kClusterFinderPacked:
- inputMultiplier = (6 * 0.4);
- break;
case kClusterFinderUnpacked:
inputMultiplier = 0.4;
break;
- case kClusterFinderDecoder:
- inputMultiplier = (6 * 0.4);
- break;
+ case kClusterFinderDecoder: // deprecated, falling back to 32bit reader
+ case kClusterFinderPacked: // deprecated, falling back to 32bit reader
case kClusterFinder32Bit:
inputMultiplier = (6 * 0.4);
break;
// Choose reader
if (fModeSwitch==kClusterFinderPacked) {
- HLTDebug("using AliHLTTPCDigitReaderPacked");
- fReader = new AliHLTTPCDigitReaderPacked();
- if(fUnsorted==1){ fReader->SetUnsorted(kTRUE); }
- fClusterFinder->SetReader(fReader);
+ HLTWarning("AliHLTTPCDigitReaderPacked is deprecated, falling back to AliHLTTPCDigitReader32Bit");
+ }
+ else if(fModeSwitch==kClusterFinderDecoder){
+ HLTWarning("AliHLTTPCDigitReaderPacked is deprecated, falling back to AliHLTTPCDigitReader32Bit");
}
- else if(fModeSwitch==kClusterFinderUnpacked){
+
+ if(fModeSwitch==kClusterFinderUnpacked){
HLTDebug("using AliHLTTPCDigitReaderUnpacked");
fReader = new AliHLTTPCDigitReaderUnpacked();
if(fUnsorted==1){ fReader->SetUnsorted(kTRUE); }
fClusterFinder->SetReader(fReader);
}
- else if(fModeSwitch==kClusterFinderDecoder){
- HLTDebug("using AliHLTTPCDigitReaderDecoder");
- fReader = new AliHLTTPCDigitReaderDecoder();
- fClusterFinder->SetReader(fReader);
- }
- else if(fModeSwitch==kClusterFinder32Bit){
+ else if(fModeSwitch==kClusterFinder32Bit ||
+ fModeSwitch==kClusterFinderPacked ||
+ fModeSwitch==kClusterFinderDecoder){
HLTDebug("using AliHLTTPCDigitReader32Bit");
fReader = new AliHLTTPCDigitReader32Bit();
fClusterFinder->SetReader(fReader);
-// @(#) $Id$
+// $Id$
#ifndef ALIHLTTPCCLUSTERFINDERCOMPONENT_H
#define ALIHLTTPCCLUSTERFINDERCOMPONENT_H
//* ALICE Experiment at CERN, All rights reserved. *
//* See cxx source for full Copyright notice *
-/** @file AliHLTTPCClusterFinderComponent.h
- @author Timm Steinbeck, Matthias Richter, Kenneth Aamodt
- @date
- @brief The TPC cluster finder component.
-*/
+/// @file AliHLTTPCClusterFinderComponent.h
+/// @author Timm Steinbeck, Matthias Richter, Kenneth Aamodt
+/// @date
+/// @brief The TPC cluster finder component.
+///
#include "AliHLTProcessor.h"
#include "AliHLTComponentBenchmark.h"
* Implementation of the cluster finder component.
* The component implements the interface methods of the @ref AliHLTProcessor.
* The actual cluster finding algorithm is implemented in @ref AliHLTTPCClusterFinder.
- * Two components are registered, TPCClusterFinderPacked and TPCClusterFinderDecoder.
- * TPCClusterFinderDecoder use the AliTPCRawStream class for decoding of the data, while TPCClusterFinderDecoder
- * use the AliAltroDecoder for decoding the data.
- *
- * TPCClusterFinderDecoder is the fastest of the two, this is due to that the AliAltroDecoder
- * returns data in a bunch format. A bunch consist of consecutive signals.
- * TPCClusterFinderPacked first have to read the data one by one, which means that row, pad and
- * time signals have to be compared between each new digit, which leads to a slower alorithm.
- *
+ * Two components are registered, TPCClusterFinderUnpacked is for reading the HLT
+ * internal digit data format used in the simulation. TPCClusterFinder32Bit uses
+ * the AliHLTTPCDigitReader for raw data. After a phase of different decoder/raw stream
+ * implementations the CF for raw data is using the default offline raw stream for
+ * the 32bit RCU format AliAltroRawStreamV3, which also has a fall back to the 40bit
+ * AliAltroRawStream if the old RCU format is detected.
*
* The clusterfinder is now using the AliTPCTransform instead of the AliHLTTPCTransform for
* transformations from row, pad time -> x,y,z.
*
* <h2>General properties:</h2>
*
- * Component ID: \b TPCClusterFinderDecoder and TPCClusterFinderPacked <br>
+ * Component ID: \b TPCClusterFinderUnpacked and TPCClusterFinder32Bit <br>
* Library: \b libAliHLTTPC
* Input Data Types: @ref kAliHLTDataTypeDDLRaw <br>
* Output Data Types: @ref AliHLTTPCDefinitions::fgkClustersDataType and/or kAliHLTDataTypeHwAddr16 <br>
* read the data.
*/
enum {
- /** real data, offline AliAltroRawStream used for data decoding */
+ // deprecated option for offline AliAltroRawStream
kClusterFinderPacked,
- /** Unpacked data of format AliHLTTPCUnpackedRawData */
+ // Unpacked data of format AliHLTTPCUnpackedRawData */
kClusterFinderUnpacked,
- /** real data, fast AliAltroDecoder used for data decoding */
+ // deprecated option for AliAltroDecoder
kClusterFinderDecoder,
- /** real data, offline altro decoder 32 bit format*/
+ // real data, offline altro decoder 32 bit format*/
kClusterFinder32Bit
};