]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/SampleLib/AliHLTSampleOfflineSinkComponent.h
removed old online gui. Wasn't used for a long time. As AliEVE should be used.
[u/mrichter/AliRoot.git] / HLT / SampleLib / AliHLTSampleOfflineSinkComponent.h
CommitLineData
90ebac25 1//-*- Mode: C++ -*-
2// @(#) $Id$
3
4#ifndef ALIHLTSAMPLEOFFLINESINKCOMPONENT_H
5#define ALIHLTSAMPLEOFFLINESINKCOMPONENT_H
6/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 * See cxx sink for full Copyright notice */
8
9/** @file AliHLTSampleOfflineSinkComponent.h
10 @author Matthias Richter
11 @date
12 @brief This is a sample offline interface component.
13*/
14
15#include "AliHLTOfflineDataSink.h"
16
17class AliLoader;
18
19/**
20 * @class AliHLTSampleOfflineSinkComponent
21 * This is a sample offline interface component.
22 *
23 * @ingroup alihlt_system
24 */
25class AliHLTSampleOfflineSinkComponent : public AliHLTOfflineDataSink {
26 public:
27 /**
28 * standard constructor. The agent is automatically registered in the
29 * global agent manager
30 */
31 AliHLTSampleOfflineSinkComponent();
32 /** destructor */
33 virtual ~AliHLTSampleOfflineSinkComponent();
34
35 /**
36 * Get the id of the component.
37 * Each component is identified by a unique id.
38 * The function is pure virtual and must be implemented by the child class.
39 * @return component id (string)
40 */
41 const char* GetComponentID();
42
43 /**
44 * Get the input data types of the component.
45 * The function is pure virtual and must be implemented by the child class.
46 * @return list of data types in the vector reference
47 */
48 virtual void GetInputDataTypes( vector<AliHLTComponentDataType>& );
49
50 /**
51 * Spawn function.
52 * Each component must implement a spawn function to create a new instance of
53 * the class. Basically the function must return <i>new <b>my_class_name</b></i>.
54 * @return new class instance
55 */
56 virtual AliHLTComponent* Spawn();
57
58 /**
59 * Fill ESD for one event.
60 * Fill the ESD with the previously reconstructed data. Interface method called by
61 * the AliHLTOfflineInterface framework.
62 * @param eventNo event No. \em Note: this is an internal enumeration of the
63 * processed events.
64 * @param runLoader the AliRoot runloader
af885e0f 65 * @param esd an AliESDEvent instance
90ebac25 66 * @return neg. error code if failed
67 */
af885e0f 68 int FillESD(int eventNo, AliRunLoader* runLoader, AliESDEvent* esd);
90ebac25 69
70 protected:
71 /**
72 * Init method.
73 */
74 int DoInit( int argc, const char** argv );
75
76 /**
77 * Deinit method.
78 */
79 int DoDeinit();
80
81 /**
82 * Data sink method.
83 * @param evtData event data structure
84 * @param trigData trigger data structure
85 * @return
86 */
87 int DumpEvent(const AliHLTComponentEventData& evtData,
88 AliHLTComponentTriggerData& trigData);
89
d76bc02a 90 using AliHLTOfflineDataSink::DumpEvent;
91
90ebac25 92 private:
93 ClassDef(AliHLTSampleOfflineSinkComponent, 0);
94};
95
96#endif