]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - HLT/BASE/AliHLTDataSource.cxx
moved from BASE to BASE/util
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTDataSource.cxx
... / ...
CommitLineData
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
29/** ROOT macro for the implementation of ROOT specific class methods */
30ClassImp(AliHLTDataSource)
31
32AliHLTDataSource::AliHLTDataSource()
33{
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
39}
40
41AliHLTDataSource::~AliHLTDataSource()
42{
43 // see header file for class documentation
44}
45
46void AliHLTDataSource::GetInputDataTypes( vector<AliHLTComponentDataType>& list)
47{
48 // see header file for class documentation
49 list.clear(); // there are no input data types
50}
51
52
53int AliHLTDataSource::DoProcessing( const AliHLTComponentEventData& evtData,
54 const AliHLTComponentBlockData* blocks,
55 AliHLTComponentTriggerData& trigData,
56 AliHLTUInt8_t* outputPtr,
57 AliHLTUInt32_t& size,
58 vector<AliHLTComponentBlockData>& outputBlocks,
59 AliHLTComponentEventDoneData*& edd )
60{
61 // see header file for class documentation
62 int iResult=0;
63 if (blocks) {
64 // this is currently just to get rid of the warning "unused parameter"
65 }
66 if (evtData.fBlockCnt > 0) {
67 HLTWarning("Data source component skips input data blocks");
68 }
69 iResult=GetEvent(evtData, trigData, outputPtr, size, outputBlocks);
70 HLTDebug("component %s (%p) GetEvent finished (%d)", GetComponentID(), this, iResult);
71 edd = NULL;
72 return iResult;
73}
74
75int AliHLTDataSource::GetEvent( const AliHLTComponentEventData& evtData,
76 AliHLTComponentTriggerData& trigData,
77 AliHLTUInt8_t* outputPtr,
78 AliHLTUInt32_t& size,
79 vector<AliHLTComponentBlockData>& outputBlocks )
80{
81 // we just forward to the high level method, all other parameters already
82 // have been stored internally
83 return GetEvent(evtData, trigData);
84}
85
86int AliHLTDataSource::GetEvent( const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData)
87{
88 HLTFatal("no processing method implemented");
89 return -ENOSYS;
90}