ROOT logo
AliRoot » HLT » BASE » AliHLTDataDeflater

class AliHLTDataDeflater: public AliHLTLogging

This file is property of and copyright by the ALICE HLT Project
ALICE Experiment at CERN, All rights reserved.

Primary Authors: Matthias Richter <Matthias.Richter@ift.uib.no>
for The ALICE HLT Project.

Permission to use, copy, modify and distribute this software and its
documentation strictly for non-commercial purposes is hereby granted
without fee, provided that the above copyright notice appears in all
copies and that both the copyright notice and this permission notice
appear in the supporting documentation. The authors make no claims
about the suitability of this software for any purpose. It is
provided "as is" without express or implied warranty.

Function Members (Methods)

public:
AliHLTDataDeflater()
virtual~AliHLTDataDeflater()
intAddHistogram(int id, const char* name, int bitWidth, TH1* h = 0)
static const char*AliHLTLogging::BuildLogString(const char* format, va_list& ap, bool bAppend = false)
static floatCalcEntropy(TH1* histo, const char* option = "", int mode = 0)
intAliHLTLogging::CheckFilter(AliHLTComponentLogSeverity severity) const
intAliHLTLogging::CheckGroup(const char* originClass) const
static TClass*Class()
virtual voidClear(Option_t* = "")
voidCloseBitDataOutput()
boolDoStatistics() const
intEnableStatistics()
intFillStatistics(int id, AliHLTUInt64_t value, unsigned int, float codingWeight = 0.0)
virtual TObject*FindObject(const char*) const
UInt_tGetBitDataOutputSizeBytes() const
unsigned intGetCurrentBitOutputPosition() const
unsigned longGetCurrentByteOutputPosition() const
AliHLTUInt8_tGetCurrentOutputByte(Int_t offset = 0) const
virtual intGetDeflaterVersion() const
static AliHLTComponentLogSeverityAliHLTLogging::GetGlobalLoggingLevel()
const char*AliHLTLogging::GetKeyword() const
static AliHLTComponentLogSeverityAliHLTLogging::GetLocalLoggingDefault()
AliHLTComponentLogSeverityAliHLTLogging::GetLocalLoggingLevel()
virtual void*AliHLTLogging::GetParameter() const
static intAliHLTLogging::Init(AliHLTfctLogging pFun)
static intAliHLTLogging::InitAliLogFunc(AliHLTComponentHandler* pHandler)
static intAliHLTLogging::InitAliLogTrap(AliHLTComponentHandler* pHandler)
intInitBitDataOutput(AliHLTUInt8_t* output, UInt_t outputSize)
virtual TClass*IsA() const
intAliHLTLogging::Logging(AliHLTComponentLogSeverity severity, const char* origin, const char* keyword, const char* message)
virtual intAliHLTLogging::LoggingVarargs(AliHLTComponentLogSeverity severity, const char* originClass, const char* originFunc, const char* file, int line) const
static intAliHLTLogging::Message(void* param, AliHLTComponentLogSeverity severity, const char* origin, const char* keyword, const char* message)
boolOutputBit(AliHLTUInt32_t const& value)
boolOutputBits(AliHLTUInt64_t const& value, UInt_t const& bitCount)
boolOutputBits(bitset<64> const& value, UInt_t const& bitCount)
boolOutputBytes(AliHLTUInt8_t *const data, UInt_t const& byteCount)
virtual boolOutputParameterBits(int parameterId, AliHLTUInt64_t const& value)
virtual boolOutputParameterBits(int parameterId, AliHLTUInt64_t const& value, int lengthOffset)
voidPad8Bits()
virtual voidPrint(Option_t* option = "") const
virtual voidPrint(ostream& out, Option_t* option = "") const
virtual voidSaveAs(const char* filename = "", Option_t* option = "") const
intAliHLTLogging::SendMessage(AliHLTComponentLogSeverity severity, const char* originClass, const char* originFunc, const char* file, int line, const char* message) const
static intAliHLTLogging::SetBlackList(const char* classnames)
voidAliHLTLogging::SetDefaultKeyword(const char* keyword)
static voidAliHLTLogging::SetGlobalLoggingLevel(AliHLTComponentLogSeverity level)
const char*AliHLTLogging::SetKeyword(const char* keyword)
static voidAliHLTLogging::SetLocalLoggingDefault(AliHLTComponentLogSeverity level)
virtual voidAliHLTLogging::SetLocalLoggingLevel(AliHLTComponentLogSeverity level)
static const char*AliHLTLogging::SetLogString(const void* p, const char* pfmt, const char* format)
static intAliHLTLogging::SetWhiteList(const char* classnames)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
voidAliHLTLogging::SwitchAliLog(int sw)

Data Members

public:
static ostringstreamAliHLTLogging::fgLogstr! transient
protected:
static void*AliHLTLogging::fgAliLoggingFunc! transient
private:
AliHLTUInt8_t*fBitDataCurrentOutput! bit data current output
AliHLTUInt8_t*fBitDataCurrentOutputEnd! bit data current output end
AliHLTUInt8_t*fBitDataCurrentOutputStart! bit data current output start
UInt_tfBitDataCurrentPosInWord! data current position in word
AliHLTUInt8_tfBitDataCurrentWord! bit data current word
TObjArray*fHistograms! list of histograms for parameters
TH2*fParameterCompression! compression for individual parameters
TH2*fParameterSize! accumulated size for individual parameters

Class Charts

Inheritance Chart:
AliHLTLogging
AliHLTDataDeflater
AliHLTDataDeflaterHuffman
AliHLTDataDeflaterSimple

Function documentation

AliHLTDataDeflater()
 see header file for class documentation
 or
 refer to README to build package
 or
 visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
~AliHLTDataDeflater()
 destructor
int InitBitDataOutput(AliHLTUInt8_t* output, UInt_t outputSize)
 init the target buffer
void CloseBitDataOutput()
 pad to full byte and clear internal pointer references
AliHLTUInt8_t GetCurrentOutputByte(Int_t offset = 0) const
 get the current byte
bool OutputBit(AliHLTUInt32_t const& value)
 write one bit to the current byte and position
bool OutputBits(AliHLTUInt64_t const& value, UInt_t const& bitCount)
 write bit pattern to the current byte and position
bool OutputBits(bitset<64> const& value, UInt_t const& bitCount)
 write bit pattern to the current byte and position
void Pad8Bits()
 finish the current word
bool OutputBytes(AliHLTUInt8_t *const data, UInt_t const& byteCount)
 write sequence of bytes
bool OutputParameterBits(int parameterId, AliHLTUInt64_t const& value)
 write bit pattern of a member to the current byte and position
void Clear(Option_t* = "")
 internal cleanup
void Print(Option_t* option = "") const
 print info
void Print(ostream& out, Option_t* option = "") const
 print to stream
int EnableStatistics()
 enable statistics accounting
int AddHistogram(int id, const char* name, int bitWidth, TH1* h = 0)
 add a histogram for deflater statistic of the corresponding parameter
 a histogram is created with default settings if h is not specified; if
 provided, the ownership goes over to the base class
int FillStatistics(int id, AliHLTUInt64_t value, unsigned int , float codingWeight = 0.0)
 fill statistics for a parameter
void SaveAs(const char* filename = "", Option_t* option = "") const
 safe histograms to file
float CalcEntropy(TH1* histo, const char* option = "", int mode = 0)
AliHLTDataDeflater()
 standard constructor
unsigned long GetCurrentByteOutputPosition() const
 function to get current byte output position
   * @return unsigned long value for current byte output position

unsigned GetCurrentBitOutputPosition() const
 function to get current bit output position
   * @return unsigned long value for current bit output position

UInt_t GetBitDataOutputSizeBytes() const
 function to get bit data output size bytes
   * @return UInt_t value of bit data output size bytes

bool DoStatistics() const
 check if statistics writing is enabled
{return fHistograms!=NULL;}
TObject * FindObject(const char* ) const
 find object
{return NULL;}
bool OutputParameterBits(int parameterId, AliHLTUInt64_t const& value)
 write bit pattern of a parameter to the current byte and position
int GetDeflaterVersion() const
 return unique version of the deflater, base class has version 0
{return 0;}
AliHLTDataDeflater& operator=(const AliHLTDataDeflater& )
 assignment operator prohibited