* @date
* @brief Base class of HLT calibration components. */
+// see header file for class documentation
+// or
+// refer to README to build package
+// or
+// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
+
#if __GNUC__ >= 3
using namespace std;
#endif
} // Int_t AliHLTCalibrationProcessor::PushToFXS(TObject* pObject, const char* detector, const char* pFileID, const char* pDDLNumber ) {
Int_t AliHLTCalibrationProcessor::PushToFXS( void* pBuffer, int iSize, const char* pDetector, const char* pFileID, const char* pDDLNumber ) {
+ // see header file for class documentation
Int_t iResult = 0;
* ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
-
/**
* Class takes care of handling and shipping of freshly produced calibration
* data. this data will be shipped to the FXS of the HLT
/** standard destructor */
virtual ~AliHLTCalibrationProcessor();
- /** Constants */
- static const AliHLTUInt32_t fgkFXSProtocolHeaderSize;
- static const AliHLTUInt32_t fgkFXSProtocolHeaderVersion;
-
protected:
/*
*/
Int_t PushToFXS(void* pBuffer, int iSize, const char* pDetector, const char* pFileID, const char* pDDLNumber = "");
+ /** Constants */
+ static const AliHLTUInt32_t fgkFXSProtocolHeaderSize;
+ static const AliHLTUInt32_t fgkFXSProtocolHeaderVersion;
+
private:
/*
@date
@brief Base class implementation for HLT components. */
+// see header file for class documentation
+// or
+// refer to README to build package
+// or
+// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
+
#if __GNUC__>= 3
using namespace std;
#endif
int AliHLTComponent::GetOutputDataTypes(vector<AliHLTComponentDataType>& /*tgtList*/)
{
+ HLTLogKeyword("dummy");
return 0;
}
int AliHLTComponent::Write(AliHLTMemoryFile* pFile, const TObject* pObject,
const char* key, int option)
{
+ // see header file for function documentation
int iResult=0;
if (pFile && pObject) {
pFile->cd();
int AliHLTComponent::CloseMemoryFile(AliHLTMemoryFile* pFile)
{
+ // see header file for function documentation
int iResult=0;
if (pFile) {
vector<AliHLTMemoryFile*>::iterator element=fMemFiles.begin();
@brief Implementation of HLT configuration handler.
*/
+// see header file for class documentation
+// or
+// refer to README to build package
+// or
+// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
+
#if __GNUC__>= 3
using namespace std;
#endif
fArgc(-1),
fArgv(NULL)
{
- // see header file for function documentation
+ // see header file for class documentation
+ // or
+ // refer to README to build package
+ // or
+ // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
+
fListSrcElement=fListSources.begin();
}
AliHLTTask::~AliHLTTask()
{
+ // see header file for function documentation
TObjLink* lnk=fListDependencies.FirstLink();
while (lnk!=NULL) {
int AliHLTTask::UnsetDependency(AliHLTTask* pDep)
{
+ // see header file for function documentation
fListDependencies.Remove(pDep);
if (fpConfiguration) {
fpConfiguration->InvalidateSources();
// or
// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-#include <cerrno>
#include <vector>
#include <TObject.h>
#include <TList.h>
return 0;
}
-int AliHLTDataBuffer::AliHLTRawBuffer::operator==(void* ptr)
+int AliHLTDataBuffer::AliHLTRawBuffer::operator==(void* ptr) const
{
+ // see header file for function documentation
return fPtr == static_cast<AliHLTUInt8_t*>(ptr);
}
-int AliHLTDataBuffer::AliHLTRawBuffer::operator<=(void* ptr)
+int AliHLTDataBuffer::AliHLTRawBuffer::operator<=(void* ptr) const
{
+ // see header file for function documentation
int iResult=fPtr <= static_cast<AliHLTUInt8_t*>(ptr);
//printf("%p: %p <= %p (%d)\n", this, fPtr, ptr, iResult);
return iResult;
}
-int AliHLTDataBuffer::AliHLTRawBuffer::operator>(void* ptr)
+int AliHLTDataBuffer::AliHLTRawBuffer::operator>(void* ptr) const
{
+ // see header file for function documentation
int iResult=fPtr+fSize > static_cast<AliHLTUInt8_t*>(ptr);
//printf("%p: %p + %d > %p (%d)\n", this, fPtr, fSize, ptr, iResult);
return iResult;
}
-int AliHLTDataBuffer::AliHLTRawBuffer::operator-(void* ptr)
+int AliHLTDataBuffer::AliHLTRawBuffer::operator-(void* ptr) const
{
+ // see header file for function documentation
return static_cast<int>(static_cast<AliHLTUInt8_t*>(ptr)-fPtr);
}
/** standard destructor */
virtual ~AliHLTRawBuffer() {}
- int operator==(void*);
- int operator==(AliHLTUInt8_t* ptr) {return fPtr==ptr;}
- int operator<=(void*);
- int operator>(void*);
- int operator-(void*);
-
- operator void*() {return fPtr;}
- operator AliHLTUInt8_t*() {return fPtr;}
+ int operator==(void*) const;
+ int operator==(AliHLTUInt8_t* ptr) const {return fPtr==ptr;}
+ int operator<=(void*) const;
+ int operator>(void*) const;
+ int operator-(void*) const;
+
+ operator void*() const {return fPtr;}
+ operator AliHLTUInt8_t*() const {return fPtr;}
private:
/** size of the currently occupied partition of the buffer */
#define HLTFatal( ... ) if (CheckFilter(kHLTLogFatal)) LoggingVarargs(kHLTLogFatal, Class_Name() , FUNCTIONNAME() , __FILE__ , __LINE__ , __VA_ARGS__ )
// helper macro to set the keyword
-#define HLTLogKeyword(a) AliHLTKeyword hltlogTmpkey__LINE__(this, a)
+#define HLTLogKeyword(a) AliHLTKeyword hltlogTmpkey(this, a)
#define HLT_DEFAULT_LOG_KEYWORD "no key"
// or
// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-#include <cerrno>
#include <TObject.h>
#include <TList.h>
#include "AliHLTDataTypes.h"
}
}
-int HOMERReader::TriggerTCPSource( DataSource& source, bool useTimeout, unsigned long timeout_us )
+int HOMERReader::TriggerTCPSource( DataSource& source, bool useTimeout, unsigned long timeoutUsec )
{
// see header file for class documentation
int ret;
{
return ENXIO;
}
- newSndTO.tv_sec = timeout_us / 1000000;
- newSndTO.tv_usec = timeout_us - (newSndTO.tv_sec*1000000);
+ newSndTO.tv_sec = timeoutUsec / 1000000;
+ newSndTO.tv_usec = timeoutUsec - (newSndTO.tv_sec*1000000);
ret = setsockopt( source.fTCPConnection, SOL_SOCKET, SO_SNDTIMEO, &newSndTO, sizeof(newSndTO) );
if ( ret )
{
int HOMERReader::ReadDataFromTCPSources( unsigned sourceCnt, DataSource* sources, bool useTimeout, unsigned long timeout )
{
+// see header file for class documentation
bool toRead = false;
do
{
return Swap( kHOMERNativeByteOrder, sourceByteOrder, ((homer_uint64*)source.fData)[ kType_64b_Offset ] );
}
+homer_uint64 HOMERReader::Swap( homer_uint8 destFormat, homer_uint8 sourceFormat, homer_uint64 source ) const
+ {
+// see header file for class documentation
+ if ( destFormat == sourceFormat )
+ return source;
+ else
+ return ((source & 0xFFULL) << 56) |
+ ((source & 0xFF00ULL) << 40) |
+ ((source & 0xFF0000ULL) << 24) |
+ ((source & 0xFF000000ULL) << 8) |
+ ((source & 0xFF00000000ULL) >> 8) |
+ ((source & 0xFF0000000000ULL) >> 24) |
+ ((source & 0xFF000000000000ULL) >> 40) |
+ ((source & 0xFF00000000000000ULL) >> 56);
+ }
-
+homer_uint32 HOMERReader::Swap( homer_uint8 destFormat, homer_uint8 sourceFormat, homer_uint32 source ) const
+ {
+// see header file for class documentation
+ if ( destFormat == sourceFormat )
+ return source;
+ else
+ return ((source & 0xFFUL) << 24) |
+ ((source & 0xFF00UL) << 8) |
+ ((source & 0xFF0000UL) >> 8) |
+ ((source & 0xFF000000UL) >> 24);
+ }
/*
***************************************************************************
**
// XEMacs -*-C++-*-
-#ifndef _HOMER_H_
-#define _HOMER_H_
+#ifndef AliHLTHOMERREADER_H
+#define AliHLTHOMERREADER_H
/* This file is property of and copyright by the ALICE HLT Project *
* ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
int ReAllocBlocks( unsigned long newCnt );
homer_uint64 GetSourceEventID( DataSource& source );
homer_uint64 GetSourceEventType( DataSource& source );
- homer_uint64 Swap( homer_uint8 destFormat, homer_uint8 sourceFormat, homer_uint64 source )
- {
- if ( destFormat == sourceFormat )
- return source;
- else
- return ((source & 0xFFULL) << 56) |
- ((source & 0xFF00ULL) << 40) |
- ((source & 0xFF0000ULL) << 24) |
- ((source & 0xFF000000ULL) << 8) |
- ((source & 0xFF00000000ULL) >> 8) |
- ((source & 0xFF0000000000ULL) >> 24) |
- ((source & 0xFF000000000000ULL) >> 40) |
- ((source & 0xFF00000000000000ULL) >> 56);
- }
- homer_uint32 Swap( homer_uint8 destFormat, homer_uint8 sourceFormat, homer_uint32 source )
- {
- if ( destFormat == sourceFormat )
- return source;
- else
- return ((source & 0xFFUL) << 24) |
- ((source & 0xFF00UL) << 8) |
- ((source & 0xFF0000UL) >> 8) |
- ((source & 0xFF000000UL) >> 24);
- }
+ homer_uint64 Swap( homer_uint8 destFormat, homer_uint8 sourceFormat, homer_uint64 source ) const;
+
+ homer_uint32 Swap( homer_uint8 destFormat, homer_uint8 sourceFormat, homer_uint32 source ) const;
struct DataBlock
#endif
};
-#endif /* _HOMER_H_ */
+#endif /* AliHLTHOMERREADER_H */
iter++;
}
}
-
-
-
-
- struct HOMERWriterAlignment64TestStructure
- {
- homer_uint64 f64Fill;
- homer_uint64 f64Test64;
- homer_uint32 f32Fill;
- homer_uint64 f64Test32;
- homer_uint16 f16Fill;
- homer_uint64 f64Test16;
- homer_uint8 f8Fill;
- homer_uint64 f64Test8;
- };
- struct HOMERWriterAlignment32TestStructure
- {
- homer_uint64 f64Fill;
- homer_uint32 f32Test64;
- homer_uint32 f32Fill;
- homer_uint32 f32Test32;
- homer_uint16 f16Fill;
- homer_uint32 f32Test16;
- homer_uint8 f8Fill;
- homer_uint32 f32Test8;
- };
- struct HOMERWriterAlignment16TestStructure
- {
- homer_uint64 f64Fill;
- homer_uint16 f16Test64;
- homer_uint32 f32Fill;
- homer_uint16 f16Test32;
- homer_uint16 f16Fill;
- homer_uint16 f16Test16;
- homer_uint8 f8Fill;
- homer_uint16 f16Test8;
- };
- struct HOMERWriterAlignment8TestStructure
- {
- homer_uint64 f64Fill;
- homer_uint8 f8Test64;
- homer_uint32 f32Fill;
- homer_uint8 f8Test32;
- homer_uint16 f16Fill;
- homer_uint8 f8Test16;
- homer_uint8 f8Fill;
- homer_uint8 f8Test8;
- };
- struct HOMERWriterAlignmentDoubleTestStructure
- {
- homer_uint64 f64Fill;
- double fDoubleTest64;
- homer_uint32 f32Fill;
- double fDoubleTest32;
- homer_uint16 f16Fill;
- double fDoubleTest16;
- homer_uint8 f8Fill;
- double fDoubleTest8;
- };
- struct HOMERWriterAlignmentFloatTestStructure
- {
- homer_uint64 f64Fill;
- float fFloatTest64;
- homer_uint32 f32Fill;
- float fFloatTest32;
- homer_uint16 f16Fill;
- float fFloatTest16;
- homer_uint8 f8Fill;
- float fFloatTest8;
- };
homer_uint8 HOMERWriter::DetermineUInt64Alignment()
{
// XEMacs -*-C++-*-
-#ifndef _HOMERWRITER_HPP_
-#define _HOMERWRITER_HPP_
+#ifndef ALIHLTHOMERWRITER_H
+#define ALIHLTHOMERWRITER_H
/************************************************************************
**
**
static homer_uint8 DetermineFloatAlignment();
+ struct HOMERWriterAlignment64TestStructure
+ {
+ homer_uint64 f64Fill; // !
+ homer_uint64 f64Test64; // !
+ homer_uint32 f32Fill; // !
+ homer_uint64 f64Test32; // !
+ homer_uint16 f16Fill; // !
+ homer_uint64 f64Test16; // !
+ homer_uint8 f8Fill; // !
+ homer_uint64 f64Test8; // !
+ };
+ struct HOMERWriterAlignment32TestStructure
+ {
+ homer_uint64 f64Fill; // !
+ homer_uint32 f32Test64; // !
+ homer_uint32 f32Fill; // !
+ homer_uint32 f32Test32; // !
+ homer_uint16 f16Fill; // !
+ homer_uint32 f32Test16; // !
+ homer_uint8 f8Fill; // !
+ homer_uint32 f32Test8; // !
+ };
+ struct HOMERWriterAlignment16TestStructure
+ {
+ homer_uint64 f64Fill; // !
+ homer_uint16 f16Test64; // !
+ homer_uint32 f32Fill; // !
+ homer_uint16 f16Test32; // !
+ homer_uint16 f16Fill; // !
+ homer_uint16 f16Test16; // !
+ homer_uint8 f8Fill; // !
+ homer_uint16 f16Test8; // !
+ };
+ struct HOMERWriterAlignment8TestStructure
+ {
+ homer_uint64 f64Fill; // !
+ homer_uint8 f8Test64; // !
+ homer_uint32 f32Fill; // !
+ homer_uint8 f8Test32; // !
+ homer_uint16 f16Fill; // !
+ homer_uint8 f8Test16; // !
+ homer_uint8 f8Fill; // !
+ homer_uint8 f8Test8; // !
+ };
+ struct HOMERWriterAlignmentDoubleTestStructure
+ {
+ homer_uint64 f64Fill; // !
+ double fDoubleTest64; // !
+ homer_uint32 f32Fill; // !
+ double fDoubleTest32; // !
+ homer_uint16 f16Fill; // !
+ double fDoubleTest16; // !
+ homer_uint8 f8Fill; // !
+ double fDoubleTest8; // !
+ };
+ struct HOMERWriterAlignmentFloatTestStructure
+ {
+ homer_uint64 f64Fill; // !
+ float fFloatTest64; // !
+ homer_uint32 f32Fill; // !
+ float fFloatTest32; // !
+ homer_uint16 f16Fill; // !
+ float fFloatTest16; // !
+ homer_uint8 f8Fill; // !
+ float fFloatTest8; // !
+ };
protected:
***************************************************************************
*/
-#endif // _HOMERWRITER_HPP_
+#endif // ALIHLTHOMERWRITER_H
@date
@brief HLT file publisher component implementation. */
+// see header file for class documentation
+// or
+// refer to README to build package
+// or
+// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
+
#if __GNUC__>= 3
using namespace std;
#endif
int AliHLTDataGenerator::GetOutputDataTypes(vector<AliHLTComponentDataType>& tgtList)
{
+ // see header file for class documentation
int count=0;
tgtList.clear();
tgtList.push_back(fDataType);
int AliHLTDataGenerator::ScanSizeArgument(AliHLTUInt32_t &size, const char* arg)
{
+ // see header file for class documentation
int iResult=0;
if (arg) {
TString parameter(arg);
AliHLTUInt32_t& size,
vector<AliHLTComponentBlockData>& outputBlocks )
{
+ // see header file for class documentation
int iResult=0;
AliHLTUInt32_t generated=fCurrSize;
if (generated<=size ) {
* return "libAliHLTUtil.so";
* </pre>
* - not implemented are the in iterface methods
- * - @ref AliHLTModuleAgent::GetEventRecConfigurations
* - @ref AliHLTModuleAgent::RegisterComponents
*
* In order to hook the sample library up to the HLT system on global object
* to be registered to the current AliRoot setup by checking the
* runloader.
* @param handler the configuration handler
+ * @param rawReader AliRawReader instance
* @param runloader AliRoot runloader
* @return neg. error code if failed
*/
* described by the last configuration(s) in the chain.
* The agent can adapt the configurations to be registered to the current
* AliRoot setup by checking the runloader.
+ * @param rawReader AliRawReader instance
* @param runloader AliRoot runloader
* @return number of configurations, neg. error code if failed
*/
* provided "as is" without express or implied warranty. *
**************************************************************************/
-/** @file AliHLTReconstruction.cxx
+/** @file AliHLTReconstructor.cxx
@author Matthias Richter
@date
@brief Binding class for HLT reconstruction in AliRoot. */
* ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
-/** @file AliHLTSimulation.h
+/** @file AliHLTReconstructor.h
@author Matthias Richter
@date
@brief Binding class for HLT simulation in AliRoot