added new components by Kelly and Gaute
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCTrackDumpComponent.h
CommitLineData
dadc7068 1//-*- Mode: C++ -*-
2// $Id$
3
4#ifndef ALIHLTTPCTRACKDUMPCOMPONENT_H
5#define ALIHLTTPCTRACKDUMPCOMPONENT_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 *
9
10/** @file AliHLTTPCTrackDumpComponent.h
11 @author Gaute Ovrebekk
12 @date
13 @brief Special file writer converting TPC tracks input to ASCII.
14*/
15
16#include "AliHLTFileWriter.h"
17
18/**
19 * @class AliHLTTPCTrackDumpComponent
20 * A converter for track data of the TPC to ASCII output.
21 * Data blocks of type fgkTrackSegmentsDataType or fgkTracksDataType is docoded
22 * written in readable ASCII format to a file.
23 *
24 * Component ID: \b TPCTrackDump <br>
25 * Library: \b libAliHLTTPC
26 *
27 * See AliHLTFileWriter for arguments, further specific options
28 * Mandatory arguments: <br>
29 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
30 *
31 * Optional arguments: <br>
32 * <!-- NOTE: ignore the \li. <i> and </i>: it's just doxygen formatting -->
33 *
34 * @ingroup alihlt_tpc_components
35 */
36class AliHLTTPCTrackDumpComponent : public AliHLTFileWriter {
37 public:
38 /** default constructor */
39 AliHLTTPCTrackDumpComponent();
40 /** destructor */
41 virtual ~AliHLTTPCTrackDumpComponent();
42
43 // interface functions: property getters
44 virtual const char* GetComponentID();
45 virtual void GetInputDataTypes(AliHLTComponentDataTypeList& list);
46 virtual AliHLTComponent* Spawn();
47
48 protected:
49 // interface functions: processing
50 int InitWriter();
51 int CloseWriter();
52 int DumpEvent( const AliHLTComponentEventData& evtData,
53 AliHLTComponentTriggerData& trigData );
54 using AliHLTDataSink::DumpEvent;
55
56 int ScanArgument(int argc, const char** argv);
57
58 private:
59 /** copy constructor prohibited */
60 AliHLTTPCTrackDumpComponent(const AliHLTTPCTrackDumpComponent&);
61 /** assignment operator prohibited */
62 AliHLTTPCTrackDumpComponent& operator=(const AliHLTTPCTrackDumpComponent&);
63
64 int PrintTrack(const AliHLTComponentEventData& evtData,const AliHLTComponentBlockData* bl,Int_t &nT);
65
66 ClassDef(AliHLTTPCTrackDumpComponent,0);
67};
68
69#endif