]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/BASE/AliHLTDataSource.cxx
component documentation
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTDataSource.cxx
CommitLineData
421b7534 1// $Id$
2
3/**************************************************************************
4 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * *
6 * Authors: Matthias Richter <Matthias.Richter@ift.uib.no> *
7 * for The ALICE Off-line Project. *
8 * *
9 * Permission to use, copy, modify and distribute this software and its *
10 * documentation strictly for non-commercial purposes is hereby granted *
11 * without fee, provided that the above copyright notice appears in all *
12 * copies and that both the copyright notice and this permission notice *
13 * appear in the supporting documentation. The authors make no claims *
14 * about the suitability of this software for any purpose. It is *
15 * provided "as is" without express or implied warranty. *
16 **************************************************************************/
17
18/** @file AliHLTDataSource.cxx
19 @author Matthias Richter
20 @date
21 @brief Base class implementation for HLT data source components. */
22
23#if __GNUC__>= 3
24using namespace std;
25#endif
26
27#include "AliHLTDataSource.h"
28
b22e91eb 29/** ROOT macro for the implementation of ROOT specific class methods */
421b7534 30ClassImp(AliHLTDataSource)
31
32AliHLTDataSource::AliHLTDataSource()
33{
70ed7d01 34 // see header file for class documentation
35 // or
36 // refer to README to build package
37 // or
38 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
421b7534 39}
40
41AliHLTDataSource::~AliHLTDataSource()
42{
70ed7d01 43 // see header file for class documentation
421b7534 44}
45
2d7ff710 46void AliHLTDataSource::GetInputDataTypes( vector<AliHLTComponentDataType>& list)
47{
70ed7d01 48 // see header file for class documentation
2d7ff710 49 list.clear(); // there are no input data types
50}
51
52
3cde846d 53int AliHLTDataSource::DoProcessing( const AliHLTComponentEventData& evtData,
8ede8717 54 const AliHLTComponentBlockData* blocks,
55 AliHLTComponentTriggerData& trigData,
421b7534 56 AliHLTUInt8_t* outputPtr,
57 AliHLTUInt32_t& size,
58 AliHLTUInt32_t& outputBlockCnt,
8ede8717 59 AliHLTComponentBlockData*& outputBlocks,
60 AliHLTComponentEventDoneData*& edd )
421b7534 61{
70ed7d01 62 // see header file for class documentation
421b7534 63 int iResult=0;
53feaef5 64 if (blocks) {
65 // this is currently just to get rid of the warning "unused parameter"
66 }
8ede8717 67 vector<AliHLTComponentBlockData> blockData;
421b7534 68 if (evtData.fBlockCnt > 0) {
9ce4bf4a 69 HLTWarning("Data source component skips input data blocks");
421b7534 70 }
71 iResult=GetEvent(evtData, trigData, outputPtr, size, blockData);
9ce4bf4a 72 HLTDebug("component %s (%p) GetEvent finished (%d)", GetComponentID(), this, iResult);
421b7534 73 if (iResult>=0) {
74 iResult=MakeOutputDataBlockList(blockData, &outputBlockCnt, &outputBlocks);
9ce4bf4a 75 if (iResult<0) {
76 HLTFatal("component %s (%p): can not convert output block descriptor list", GetComponentID(), this);
77 }
421b7534 78 }
79 edd = NULL;
80 return iResult;
81}