]>
Commit | Line | Data |
---|---|---|
197883c2 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
4 | // $Id$ | |
13985652 | 5 | // $MpId: AliMpMotifReader.h,v 1.9 2006/05/24 13:58:18 ivana Exp $ |
197883c2 | 6 | |
7 | /// \ingroup motif | |
8 | /// \class AliMpMotifReader | |
9 | /// \brief Class that takes care of reading the motifs data. | |
10 | /// | |
13985652 | 11 | /// \author David Guez, Ivana Hrivnacova; IPN Orsay |
197883c2 | 12 | |
13 | #ifndef ALI_MP_MOTIF_READER_H | |
14 | #define ALI_MP_MOTIF_READER_H | |
15 | ||
2a7ea2e6 | 16 | #include <TObject.h> |
17 | ||
5006ec94 | 18 | #include "AliMpContainers.h" |
19 | ||
2a7ea2e6 | 20 | #include "AliMpStationType.h" |
4e51cfd2 | 21 | #include "AliMpStation12Type.h" |
2a7ea2e6 | 22 | #include "AliMpPlaneType.h" |
23 | #include "AliMpIntPair.h" | |
24 | #include "AliMpContainers.h" | |
5006ec94 | 25 | |
26 | #ifdef WITH_ROOT | |
27 | #include <TExMap.h> | |
28 | #endif | |
197883c2 | 29 | #include <TString.h> |
30 | #include <TVector2.h> | |
31 | #include <Riostream.h> | |
32 | ||
2a7ea2e6 | 33 | #include <fstream> |
34 | #ifdef WITH_STL | |
35 | #include <map> | |
36 | #endif | |
197883c2 | 37 | |
38 | class AliMpMotifMap; | |
39 | class AliMpVMotif; | |
40 | class AliMpMotifSpecial; | |
41 | class AliMpMotifType; | |
ab167304 | 42 | class AliMpDataStreams; |
197883c2 | 43 | |
44 | class AliMpMotifReader : public TObject | |
45 | { | |
5006ec94 | 46 | public: |
47 | #ifdef WITH_STL | |
f5671fc3 | 48 | /// Map of int pair to string |
5006ec94 | 49 | typedef std::map<std::string, std::pair<Int_t,Int_t> > PadMapType; |
f5671fc3 | 50 | /// Map of int pair to string iterator |
5006ec94 | 51 | typedef PadMapType::iterator PadMapTypeIterator; |
52 | #endif | |
53 | #ifdef WITH_ROOT | |
f5671fc3 | 54 | /// Map of int pair to string |
5006ec94 | 55 | typedef TExMap PadMapType; |
56 | #endif | |
57 | ||
197883c2 | 58 | public: |
ab167304 | 59 | AliMpMotifReader(const AliMpDataStreams& dataStreams, |
4e51cfd2 | 60 | AliMp::StationType station, |
61 | AliMq::Station12Type station12, | |
62 | AliMp::PlaneType plane); | |
197883c2 | 63 | virtual ~AliMpMotifReader(); |
64 | ||
65 | // methods | |
66 | AliMpMotifType* BuildMotifType(const TString& motifTypeId); | |
67 | AliMpMotifSpecial* BuildMotifSpecial(const TString& motifID, | |
d1c53ece | 68 | AliMpMotifType* motifType, |
69 | Double_t scale=1.0); | |
0e8df63e | 70 | TString MotifSpecialName(const TString& motifID, Double_t scale); |
197883c2 | 71 | |
13e7956b | 72 | private: |
ab167304 | 73 | /// Not implemented |
74 | AliMpMotifReader(); | |
f5671fc3 | 75 | /// Not implemented |
197883c2 | 76 | AliMpMotifReader(const AliMpMotifReader& right); |
f5671fc3 | 77 | /// Not implemented |
197883c2 | 78 | AliMpMotifReader& operator = (const AliMpMotifReader& right); |
79 | ||
197883c2 | 80 | // data members |
7d5d0cc5 | 81 | const AliMpDataStreams& fkDataStreams;///< data streams |
4e51cfd2 | 82 | AliMp::StationType fStationType; ///< station type |
83 | AliMq::Station12Type fStation12Type; ///< station12 type | |
84 | AliMp::PlaneType fPlaneType; ///< plane type | |
197883c2 | 85 | |
228fd720 | 86 | ClassDef(AliMpMotifReader,0) // Data reader |
197883c2 | 87 | }; |
88 | ||
89 | #endif //ALI_MP_MOTIF_READER_H |