Add method:
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveVSDCreator.h
CommitLineData
d810d0de 1// $Id$
2// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4/**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
51346b82 7 * full copyright notice. *
d810d0de 8 **************************************************************************/
5a5a1232 9
a15e6d7d 10#ifndef AliEveVSDCreator_H
11#define AliEveVSDCreator_H
5a5a1232 12
84aff7a4 13#include <TEveVSD.h>
5a5a1232 14
5a5a1232 15#include <map>
16
a15e6d7d 17class AliTPCParam;
18class AliRunLoader;
5a5a1232 19
d810d0de 20class AliEveVSDCreator : public TEveVSD
5a5a1232 21{
5a5a1232 22public:
d810d0de 23 AliEveVSDCreator(const Text_t* name="AliEveVSDCreator", const Text_t* title="");
24 virtual ~AliEveVSDCreator() {}
5a5a1232 25
ba014dea 26 void CreateVSD(const Text_t* vsdFile="AliVSD.root");
5a5a1232 27
28 void CreateTrees();
29
30 // --------------------------------------------------------------
31 // Conversion functions.
32
33 void ConvertKinematics();
ba014dea 34
5a5a1232 35 void ConvertHits();
ba014dea 36 void ConvertAnyHits(const TString& detector, const TString& clones_class,
37 Int_t det_id, Float_t minDistSqr=0);
38 void ConvertTPCHits(Int_t det_id, Float_t minDistSqr=0);
39
5a5a1232 40 void ConvertClusters();
ba014dea 41 void ConvertAnyClusters(const TString& detector, const TString& branch_name,
42 Int_t det_id);
43 void ConvertTPCClusters(Int_t det_id);
44
45 void ConvertRecTracks();
46
5a5a1232 47 void ConvertV0();
48 void ConvertKinks();
ba014dea 49
5a5a1232 50 void ConvertGenInfo();
51
52 // --------------------------------------------------------------
5a5a1232 53
73c1c0ec 54 Int_t GetDebugLevel() const { return fDebugLevel; }
55 void SetDebugLevel(Int_t dl) { fDebugLevel = dl; }
5a5a1232 56
4b456ebb 57protected:
58 void MakeItsDigitsInfo();
59 TEveMCRecCrossRef* GetGeninfo(Int_t label);
4b456ebb 60
61 Float_t fTPCHitRes; // Resolution for storing TPC hits.
62 Float_t fTRDHitRes; // Resolution for storing TRD hits.
63
64 Int_t fDebugLevel; // Internal debug level.
65
66 AliRunLoader *fRunLoader; // Internal run-loader.
67
68 std::map<Int_t, TEveMCRecCrossRef*> fGenInfoMap; // Map label to MC-Rec cross-ref data structure.
69
70private:
71 AliEveVSDCreator(const AliEveVSDCreator&); // Not implemented
72 AliEveVSDCreator& operator=(const AliEveVSDCreator&); // Not implemented
73
73c1c0ec 74 ClassDef(AliEveVSDCreator, 0); // Create VSD file from ALICE data.
d810d0de 75}; // endclass AliEveVSDCreator
5a5a1232 76
77#endif