* @class AliRawClusterContainer
* Cluster read interface for offline.
* The class implements the interface to be used in the decoding
- * of compressed TPC data.
+ * of compressed TPC data. The container handles
*/
class AliRawClusterContainer {
public:
void SetSigmaZ2(float sigmaZ2) {if (fEntry ) fEntry->fCluster.SetSigmaZ2(sigmaZ2);}
void SetCharge(unsigned charge) {if (fEntry ) fEntry->fCluster.SetCharge(charge);}
void SetQMax(unsigned qmax) {if (fEntry ) fEntry->fCluster.SetQMax(qmax);}
+ iterator& operator=(const AliHLTTPCRawCluster& rawcluster) {if (fEntry ) {
+ memcpy(&fEntry->fCluster, &rawcluster, sizeof(AliHLTTPCRawCluster));
+ // Note: offline code uses a different convention for row offset than the online code
+ // Online: first row of readout partition
+ // Offline: first row of readout chamber(inner: partition 0-1; outer: 2-5
+ fEntry->fCluster.fPadRow-=fRowOffset;
+ } return *this;}
void SetMC(const AliHLTTPCClusterMCLabel* pMC) {
if (fEntry && pMC ) fEntry->fMC=*pMC;
}
int fRowOffset; //! row offset for current partition
};
- /// iterator of remaining clusters block of specification
- iterator& BeginRemainingClusterBlock(int count, AliHLTUInt32_t specification);
+ /// legacy, to be removed later
+ iterator& BeginRemainingClusterBlock(int count, AliHLTUInt32_t specification) {
+ return BeginPartitionClusterBlock(count, specification);
+ }
+ /// iterator of partition clusters block of specification
+ iterator& BeginPartitionClusterBlock(int count, AliHLTUInt32_t specification);
/// iterator of track model clusters
iterator& BeginTrackModelClusterBlock(int count);