4 #ifndef ALIHLTOFFLINEDATASOURCE_H
5 #define ALIHLTOFFLINEDATASOURCE_H
6 /* This file is property of and copyright by the ALICE HLT Project *
7 * ALICE Experiment at CERN, All rights reserved. *
8 * See cxx source for full Copyright notice */
10 /** @file AliHLTOfflineDataSource.h
11 @author Matthias Richter
13 @brief AliRoot data sink component base class.
16 // see below for class documentation
18 // refer to README to build package
20 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
22 #include "AliHLTDataSource.h"
23 #include "AliHLTOfflineInterface.h"
25 /******************************************************************************/
28 * @class AliHLTOfflineDataSource
29 * The class implements a AliRoot data source component base class.
30 * The child class must implement the functions:
31 * - @ref DoInit (optional)
32 * - @ref DoDeinit (optional)
34 * - @ref GetComponentID
35 * - @ref GetOutputDataType
36 * - @ref GetOutputDataSize
39 * @note This class is only used for the @ref alihlt_system.
41 * @ingroup alihlt_system
43 class AliHLTOfflineDataSource
44 : public AliHLTDataSource, public AliHLTOfflineInterface {
46 /** standard constructor */
47 AliHLTOfflineDataSource();
48 /** not a valid copy constructor, defined according to effective C++ style */
49 AliHLTOfflineDataSource(const AliHLTOfflineDataSource&);
50 /** not a valid assignment op, but defined according to effective C++ style */
51 AliHLTOfflineDataSource& operator=(const AliHLTOfflineDataSource&);
53 virtual ~AliHLTOfflineDataSource();
56 * Default implementation as sources do not have a real FillESD method.
58 int FillESD(int eventNo, AliRunLoader* runLoader, AliESDEvent* esd) {
59 if (esd==NULL && runLoader==NULL) {
60 // get rid of 'unused parameter' warning
67 ClassDef(AliHLTOfflineDataSource, 1);