]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpSubZone.h
- Reordering includes from most specific to more general ones
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpSubZone.h
CommitLineData
dee1d5f1 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
5f91c9e8 4// $Id$
2a7ea2e6 5// $MpId: AliMpSubZone.h,v 1.9 2006/03/17 11:38:28 ivana Exp $
dee1d5f1 6
7/// \ingroup sector
8/// \class AliMpSubZone
9/// \brief A region in zone composed of the row segments with the same
10/// motif type.
11///
12/// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
5f91c9e8 13
14#ifndef ALI_MP_SUB_ZONE_H
15#define ALI_MP_SUB_ZONE_H
16
2a7ea2e6 17#include <TObject.h>
5006ec94 18
2a7ea2e6 19#include "AliMpContainers.h"
5006ec94 20
21#ifdef WITH_ROOT
22#include <TList.h>
23#endif
5f91c9e8 24
2a7ea2e6 25#ifdef WITH_STL
26#include <vector>
27#endif
5f91c9e8 28
29class AliMpVMotif;
30class AliMpVRowSegment;
31
32class AliMpSubZone : public TObject
33{
5006ec94 34 public:
35#ifdef WITH_STL
36 typedef std::vector<AliMpVRowSegment*> RowSegmentVector;
37#endif
38#ifdef WITH_ROOT
39 typedef TList RowSegmentVector;
40#endif
41
5f91c9e8 42 public:
43 AliMpSubZone(AliMpVMotif* motif);
44 AliMpSubZone();
45 virtual ~AliMpSubZone();
46
47 // methods
48 void AddRowSegment(AliMpVRowSegment* rowSegment);
2998a151 49 virtual void Print(const char* /*option*/ = 0) const;
5f91c9e8 50
51 // access methods
52 Int_t GetNofRowSegments() const;
53 AliMpVRowSegment* GetRowSegment(Int_t i) const;
54 AliMpVMotif* GetMotif() const;
55
fb1bf5c0 56 protected:
57 AliMpSubZone(const AliMpSubZone& right);
58 AliMpSubZone& operator = (const AliMpSubZone& right);
59
5f91c9e8 60 private:
5f91c9e8 61 // data members
2998a151 62 AliMpVMotif* fMotif; // the motif in this subzone
63 RowSegmentVector fSegments;// contained row segments
5f91c9e8 64
65 ClassDef(AliMpSubZone,1) //Zone segment
66};
67
68#endif //ALI_MP_SUB_ZONE_H