#include <vector>
#include <string>
-class TObjArray;
-class TH1;
-
/**
* @class AliHLTDataDeflaterSimple
* Simple deflater implementation storing frequent values below a
, fValueCount(0), fBitCount(0) {}
AliHLTDataDeflaterParameter& operator=(const AliHLTDataDeflaterParameter& src) {
+ if (this==&src) return *this;
fName=src.fName; fFullBitLength=src.fFullBitLength; fReducedBitLength=src.fReducedBitLength;
fMax=src.fMax; fMaxReduced=src.fMaxReduced;
fMask=src.fMask; fMaskReduced=src.fMaskReduced;
/// add a parameter definition to the configuration, return reference id
int AddParameterDefinition(const char* name, int bitLength, int reducedBitLength);
- /// add a histogram for deflater statistic of the corresponding parameter
- int AddHistogram(TH1* h);
-
/// inherited from AliHLTDataDeflater: write bit pattern according to configuration
virtual bool OutputParameterBits( int parameterId, AliHLTUInt64_t const & value );
/// print info
virtual void Print(ostream& out, Option_t *option="") const;
- /// safe statistics histograms to file
- virtual void SaveAs(const char *filename="",Option_t *option="") const;
-
/// DataDeflaterSimple has deflater version 1
virtual int GetDeflaterVersion() const {return 1;}
- static float CalcEntropy(TH1* histo, const char* option="", int mode=0);
-
protected:
private:
/// copy constructor prohibited
vector<AliHLTDataDeflaterParameter> fParameterDefinitions; //!
- TObjArray* fHistograms; //! list of histograms for parameters
-
ClassDef(AliHLTDataDeflaterSimple, 0)
};