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>
Timm Steinbeck <timm@kip.uni-heidelberg.de>
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.
virtual | ~AliHLTComponent() |
static const char* | AliHLTLogging::BuildLogString(const char* format, va_list& ap, bool bAppend = false) |
static AliHLTUInt32_t | CalculateChecksum(const AliHLTUInt8_t* buffer, int size) |
int | AliHLTLogging::CheckFilter(AliHLTComponentLogSeverity severity) const |
int | AliHLTLogging::CheckGroup(const char* originClass) const |
int | CheckOCDBEntries(const TMap *const externList = 0) |
static TClass* | Class() |
static void | CopyDataType(AliHLTComponentDataType& tgtdt, const AliHLTComponentDataType& srcdt) |
static string | DataType2Text(const AliHLTComponentDataType& type, int mode = 0) |
virtual int | Deinit() |
virtual int | DoProcessing(const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, AliHLTUInt32_t& size, AliHLTComponentBlockDataList& outputBlocks, AliHLTComponentEventDoneData*& edd) |
static int | ExtractComponentTableEntry(const AliHLTUInt8_t* pBuffer, AliHLTUInt32_t size, string& chainId, string& compId, string& compParam, vector<AliHLTUInt32_t>& parents) |
static int | ExtractComponentTableEntry(const AliHLTUInt8_t* pBuffer, AliHLTUInt32_t size, string& chainId, string& compId, string& compParam, vector<AliHLTUInt32_t>& parents, int& level) |
static AliHLTUInt32_t | ExtractEventTypeFromCDH(const AliHLTCDHWrapper *const cdh) |
static int | ExtractTriggerData(const AliHLTComponentTriggerData& trigData, const AliHLTUInt8_t (**)[gkAliHLTBlockDAttributeCount] attributes, AliHLTUInt64_t* status, AliHLTCDHWrapper *const cdh, AliHLTReadoutList* readoutlist, bool printErrors = false) |
static void | FillBlockData(AliHLTComponentBlockData& blockData) |
static void | FillDataType(AliHLTComponentDataType& dataType) |
static void | FillEventData(AliHLTComponentEventData& evtData) |
static void | FillShmData(AliHLTComponentShmData& shmData) |
int | FindMatchingDataTypes(AliHLTComponent* pConsumer, AliHLTComponentDataTypeList* tgtList) |
static TUUID | GenerateGUID() |
virtual const char* | GetComponentID() |
virtual AliHLTComponent::TComponentType | GetComponentType() |
int | GetCompressionLevel() const |
static AliHLTComponentLogSeverity | AliHLTLogging::GetGlobalLoggingLevel() |
virtual void | GetInputDataTypes(AliHLTComponentDataTypeList&) |
const char* | AliHLTLogging::GetKeyword() const |
int | GetLastObjectSize() const |
static AliHLTComponentLogSeverity | AliHLTLogging::GetLocalLoggingDefault() |
AliHLTComponentLogSeverity | AliHLTLogging::GetLocalLoggingLevel() |
virtual void | GetOCDBObjectDescription(TMap *const targetArray) |
virtual void | GetOutputDataSize(unsigned long& constBase, double& inputMultiplier) |
virtual AliHLTComponentDataType | GetOutputDataType() |
virtual int | GetOutputDataTypes(AliHLTComponentDataTypeList& tgtList) |
virtual void* | AliHLTLogging::GetParameter() const |
static int | GetReadoutList(const AliHLTComponentTriggerData& trigData, AliHLTReadoutList& list, bool printErrors = false) |
virtual int | Init(const AliHLTAnalysisEnvironment* comenv, void* environParam, int argc, const char** argv) |
static int | AliHLTLogging::InitAliLogFunc(AliHLTComponentHandler* pHandler) |
static int | AliHLTLogging::InitAliLogTrap(AliHLTComponentHandler* pHandler) |
int | InitCDB(const char* cdbPath, AliHLTComponentHandler* pHandler) |
virtual TClass* | IsA() const |
int | AliHLTLogging::Logging(AliHLTComponentLogSeverity severity, const char* origin, const char* keyword, const char* message) |
virtual int | LoggingVarargs(AliHLTComponentLogSeverity severity, const char* originClass, const char* originFunc, const char* file, int line) const |
static int | AliHLTLogging::Message(void* param, AliHLTComponentLogSeverity severity, const char* origin, const char* keyword, const char* message) |
static void | PrintComponentDataTypeInfo(const AliHLTComponentDataType& dt) |
static void | PrintDataTypeContent(AliHLTComponentDataType& dt, const char* format = 0) |
int | ProcessEvent(const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks, AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr, AliHLTUInt32_t& size, AliHLTUInt32_t& outputBlockCnt, AliHLTComponentBlockData*& outputBlocks, AliHLTComponentEventDoneData*& edd) |
int | AliHLTLogging::SendMessage(AliHLTComponentLogSeverity severity, const char* originClass, const char* originFunc, const char* file, int line, const char* message) const |
static int | AliHLTLogging::SetBlackList(const char* classnames) |
int | SetCDBRunNo(int runNo) |
int | SetComponentDescription(const char* desc) |
int | SetComponentEnvironment(const AliHLTAnalysisEnvironment* comenv, void* environParam) |
static void | SetDataType(AliHLTComponentDataType& tgtdt, const char* id, const char* origin) |
static void | SetDataType(AliHLTComponentDataType& dt, AliHLTUInt64_t id, AliHLTUInt32_t orig) |
void | AliHLTLogging::SetDefaultKeyword(const char* keyword) |
static int | SetGlobalComponentHandler(AliHLTComponentHandler* pCH, int bOverwrite = 0) |
static void | AliHLTLogging::SetGlobalLoggingLevel(AliHLTComponentLogSeverity level) |
const char* | AliHLTLogging::SetKeyword(const char* keyword) |
static void | AliHLTLogging::SetLocalLoggingDefault(AliHLTComponentLogSeverity level) |
virtual void | AliHLTLogging::SetLocalLoggingLevel(AliHLTComponentLogSeverity level) |
static const char* | AliHLTLogging::SetLogString(const void* p, const char* pfmt, const char* format) |
int | SetRunDescription(const AliHLTRunDesc* desc, const char* runType) |
int | SetStopwatch(TObject* pSW, AliHLTComponent::AliHLTStopwatchType type = kSWBase) |
int | SetStopwatches(TObjArray* pStopwatches) |
static int | AliHLTLogging::SetWhiteList(const char* classnames) |
virtual void | ShowMembers(TMemberInspector&) |
virtual AliHLTComponent* | Spawn() |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
void | AliHLTLogging::SwitchAliLog(int sw) |
static int | UnsetGlobalComponentHandler() |
void* | AllocMemory(unsigned long size) |
int | CheckCTPTrigger(const char* name) const |
int | CloseMemoryFile(AliHLTMemoryFile* pFile) |
int | ConfigureFromArgumentString(int argc, const char** argv) |
int | ConfigureFromCDBTObjString(const char* entries, const char* key = 0) |
int | CopyStruct(void* pStruct, unsigned int iStructSize, unsigned int iBlockNo, const char* structname = "", const char* eventname = "") |
int | CreateEventDoneData(AliHLTComponentEventDoneData edd) |
AliHLTMemoryFile* | CreateMemoryFile(int capacity, const AliHLTComponentDataType& dt = kAliHLTAnyDataType, AliHLTUInt32_t spec = kAliHLTVoidDataSpec) |
AliHLTMemoryFile* | CreateMemoryFile(const AliHLTComponentDataType& dt = kAliHLTAnyDataType, AliHLTUInt32_t spec = kAliHLTVoidDataSpec, float capacity = 1.0) |
AliHLTMemoryFile* | CreateMemoryFile(int capacity, const char* dtID, const char* dtOrigin, AliHLTUInt32_t spec = kAliHLTVoidDataSpec) |
AliHLTMemoryFile* | CreateMemoryFile(const char* dtID, const char* dtOrigin, AliHLTUInt32_t spec = kAliHLTVoidDataSpec, float capacity = 1.0) |
const AliHLTCTPData* | CTPData() const |
void | DataType2Text(const AliHLTComponentDataType& type, char* output) const |
virtual int | DoDeinit() |
virtual int | DoInit(int argc, const char** argv) |
virtual int | EndOfRun() |
int | EstimateObjectSize(const TObject* pObject) const |
bool | EvaluateCTPTriggerClass(const char* expression, AliHLTComponentTriggerData& trigData) const |
int | Forward(const TObject* pObject) |
int | Forward(const AliHLTComponentBlockData* pBlock = 0) |
unsigned short | GetBunchCrossNumber() const |
void | GetBxByBz(const Double_t* r, Double_t* b) |
Double_t | GetBz() |
Double_t | GetBz(const Double_t* r) |
const char* | GetChainId() const |
AliHLTComponentEventDoneData* | GetCurrentEventDoneData() const |
AliHLTComponentDataType | GetDataType(const TObject* pObject = 0) |
int | GetEventCount() const |
int | GetEventDoneData(unsigned long size, AliHLTComponentEventDoneData** edd) const |
AliHLTEventID_t | GetEventId() const |
const AliHLTComponentBlockData* | GetFirstInputBlock(const AliHLTComponentDataType& dt = kAliHLTAllDataTypes) |
const AliHLTComponentBlockData* | GetFirstInputBlock(const char* dtID, const char* dtOrigin) |
const TObject* | GetFirstInputObject(const AliHLTComponentDataType& dt = kAliHLTAllDataTypes, const char* classname = 0, int bForce = 0) |
const TObject* | GetFirstInputObject(const char* dtID, const char* dtOrigin, const char* classname = 0, int bForce = 0) |
const AliHLTComponentBlockData* | GetInputBlock(int index) const |
const AliHLTComponentBlockData* | GetNextInputBlock() |
const TObject* | GetNextInputObject(int bForce = 0) |
int | GetNumberOfInputBlocks() const |
AliHLTUInt32_t | GetOrbitNumber() const |
AliHLTUInt32_t | GetPeriodNumber() const |
AliHLTUInt32_t | GetRunNo() const |
AliHLTUInt32_t | GetRunType() const |
AliHLTUInt32_t | GetSpecification(const TObject* pObject = 0) |
AliHLTUInt32_t | GetSpecification(const AliHLTComponentBlockData* pBlock) |
AliHLTUInt32_t | GetTimeStamp() const |
bool | IsDataEvent(AliHLTUInt32_t* pTgt = 0) const |
TObject* | LoadAndExtractOCDBObject(const char* path, const char* key = 0) const |
int | MakeOutputDataBlockList(const AliHLTComponentBlockDataList& blocks, AliHLTUInt32_t* blockCount, AliHLTComponentBlockData** outputBlocks) |
int | PushBack(const TObject* pObject, const AliHLTComponentDataType& dt, AliHLTUInt32_t spec = kAliHLTVoidDataSpec, void* pHeader = 0, int headerSize = 0) |
int | PushBack(const TObject* pObject, const char* dtID, const char* dtOrigin, AliHLTUInt32_t spec = kAliHLTVoidDataSpec, void* pHeader = 0, int headerSize = 0) |
int | PushBack(const void* pBuffer, int iSize, const AliHLTComponentDataType& dt, AliHLTUInt32_t spec = kAliHLTVoidDataSpec, const void* pHeader = 0, int headerSize = 0) |
int | PushBack(const void* pBuffer, int iSize, const char* dtID, const char* dtOrigin, AliHLTUInt32_t spec = kAliHLTVoidDataSpec, const void* pHeader = 0, int headerSize = 0) |
int | PushEventDoneData(AliHLTUInt32_t eddDataWord) |
virtual int | ReadPreprocessorValues(const char* modules) |
virtual int | Reconfigure(const char* cdbEntry, const char* chainId) |
void | ReleaseEventDoneData() |
virtual bool | RequireSteeringBlocks() const |
int | ReserveEventDoneData(unsigned long size) |
virtual int | ScanConfigurationArgument(int argc, const char** argv) |
int | SetupCTPData() |
virtual int | StartOfRun() |
int | Write(AliHLTMemoryFile* pFile, const TObject* pObject, const char* key = 0, int option = TObject::kOverwrite) |
int | AddComponentStatistics(AliHLTComponentBlockDataList& blocks, AliHLTUInt8_t* buffer, AliHLTUInt32_t bufferSize, AliHLTUInt32_t offset, vector<AliHLTComponentStatistics,allocator<AliHLTComponentStatistics> >& stats) const |
int | AddComponentTableEntry(AliHLTComponentBlockDataList& blocks, AliHLTUInt8_t* buffer, AliHLTUInt32_t bufferSize, AliHLTUInt32_t offset, const vector<AliHLTUInt32_t>& parents, int processingLevel) const |
int | CleanupInputObjects() |
TObject* | CreateInputObject(int idx, int bForce = 0) |
int | FindInputBlock(const AliHLTComponentBlockData* pBlock) const |
int | FindInputBlock(const AliHLTComponentDataType& dt, int startIdx = -1, int bObject = 0) const |
TObject* | GetInputObject(int idx, const char* classname = 0, int bForce = 0) |
int | IncrementEventCounter() |
int | InitCTPTriggerClasses(const char* ctpString) |
int | InsertOutputBlock(const void* pBuffer, int iBufferSize, const AliHLTComponentDataType& dt, AliHLTUInt32_t spec, const void* pHeader = 0, int iHeaderSize = 0) |
AliHLTComponent& | operator=(const AliHLTComponent&) |
int | ScanECSParam(const char* ecsParam) |
enum TComponentType { | kUnknown | |
kSource | ||
kProcessor | ||
kSink | ||
}; | ||
enum AliHLTStopwatchType { | kSWBase | |
kSWDA | ||
kSWInput | ||
kSWOutput | ||
kSWTypeCount | ||
}; | ||
enum { | kRequireSteeringBlocks | |
kDisableComponentStat | ||
}; |
static ostringstream | AliHLTLogging::fgLogstr | ! transient |
static void* | AliHLTLogging::fgAliLoggingFunc | ! transient |
void (*)() | fCDBSetRunNoFunc | ! transient |
string | fChainId | ! transient |
AliHLTUInt32_t | fChainIdCrc | ! transient |
string | fClassName | see above |
string | fComponentArgs | ! transient |
int | fCompressionLevel | ! transient |
AliHLTEventID_t | fCurrentEvent | see above |
AliHLTComponentEventData | fCurrentEventData | see above |
int | fCurrentInputBlock | see above |
AliHLTAnalysisEnvironment | fEnvironment | see above |
int | fEventCount | see above |
AliHLTComponentEventDoneData* | fEventDoneData | ! transient |
unsigned long | fEventDoneDataSize | ! transient |
int | fEventModulo | ! transient |
AliHLTUInt32_t | fEventType | ! transient |
int | fFailedEvents | see above |
AliHLTUInt32_t | fFlags | ! transient |
int | fLastObjectSize | ! transient |
int | fLastPushBackTime | ! transient |
vector<AliHLTMemoryFile*> | fMemFiles | ! transient |
AliHLTComponentBlockDataList | fOutputBlocks | see above |
AliHLTUInt32_t | fOutputBufferFilled | see above |
AliHLTUInt32_t | fOutputBufferSize | see above |
int | fPushbackPeriod | ! transient |
AliHLTComponentDataType | fSearchDataType | see above |
static AliHLTComponentHandler* | fgpComponentHandler | ! transient |
TStopwatch* | fpBenchmark | ! transient |
AliHLTCTPData* | fpCTPData | ! transient |
const AliHLTComponentBlockData* | fpInputBlocks | ! transient |
TObjArray* | fpInputObjects | ! transient |
AliHLTUInt8_t* | fpOutputBuffer | ! transient |
AliHLTRunDesc* | fpRunDesc | ! transient |
TObjArray* | fpStopwatches | ! transient |
Inheritance Chart: | ||||||||||||||||||||||||||||||
|
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
Configure from an array of argument strings Function supports individual arguments in the argv array and arguments separated by blanks. Each argv entry can contain blanks, quotes and newlines. Newlines are interpreted as blanks. Enclosing quotes deactivate blank as delimiter. The separated arguments are stored in an array of strings, and the pointers to those strings in an array of pointers. The latter is used in the custom argument scan of the component.
load a list of OCDB objects and configure from the objects can either be a TObjString or a TMap with a TObjString:TObjString key-value pair
see header file for function documentation
default implementation, childs can overload
default implementation, childs can overload
default implementation, childs can overload
check the availability of the OCDB entry descriptions in the TMap key : complete OCDB path of the entry value : auxiliary object - short description if the external map was not provided the function invokes interface function GetOCDBObjectDescription() to retrieve the list.
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
see header file for function documentation
* Internal processing of one event. * The method is pure virtual and implemented by the child classes * - @ref AliHLTProcessor * - @ref AliHLTDataSource * - @ref AliHLTDataSink * * @param evtData * @param blocks * @param trigData * @param outputPtr * @param size * @param outputBlocks out: the output block array is allocated internally * @param edd * @return neg. error code if failed
Information member functions for registration. * Get the type of the component. * The function is pure virtual and must be implemented by the child class. * @return component type id
* Get the id of the component. * Each component is identified by a unique id. * The function is pure virtual and must be implemented by the child class. * @return component id (string)
* Get the input data types of the component. * The function is pure virtual and must be implemented by the child class. * @return list of data types in the vector reference
* Get the output data type of the component. * The function is pure virtual and must be implemented by the child class. * @return output data type
* Get a ratio by how much the data volume is shrunken or enhanced. * The function is pure virtual and must be implemented by the child class. * @param constBase <i>return</i>: additive part, independent of the * input data volume * @param inputMultiplier <i>return</i>: multiplication ratio * @return values in the reference variables
* Spawn function. * Each component must implement a spawn function to create a new instance of * the class. Basically the function must return <i>new <b>my_class_name</b></i>. * @return new class instance
* Extract a component table entry from the payload buffer. * The entry consists of the AliHLTComponentTableEntry structure, the array of * parents and a description string of the format 'chain-id{component-id:component-args}'. * The function fills all the variables after a consistency check.
* Extracts the readout list from a trigger data structure. * @param [in] trigData The trigger data as passed to the DoProcessing method. * @param [out] list The output readout list to fill. * @param [in] printErrors If true then error messages are generated as necessary * and suppressed otherwise. * @return zero on success or one of the error codes returned by ExtractTriggerData.
* Get size of last serialized object. * During PushBack, TObjects are serialized in a separate buffer. The * size of the last object can be retrieved by this function. * * This might be especially useful for PushBack failures caused by too * small output buffer.
{return fLastObjectSize;}
* Check whether a component requires all steering blocks. * Childs can overload in order to indicate that they want to * receive also the steering data blocks. There is also the * possibility to add the required data types to the input * data type list in GetInputDataTypes().
{return false;}
* Get the pointer to the event done data available/built so far for the current event via * @ref ReserveEventDoneData and @ref PushEventDoneData