]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpMotifReader.h
Coding conventions
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpMotifReader.h
CommitLineData
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
38class AliMpMotifMap;
39class AliMpVMotif;
40class AliMpMotifSpecial;
41class AliMpMotifType;
ab167304 42class AliMpDataStreams;
197883c2 43
44class 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