]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpSubZone.h
0. General code clean-up, including messages, and the like.
[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$
5006ec94 5// $MpId: AliMpSubZone.h,v 1.8 2005/09/26 16:12:11 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
5006ec94 17#include "AliMpContainers.h"
18
19#ifdef WITH_STL
20#include <vector>
21#endif
22
23#ifdef WITH_ROOT
24#include <TList.h>
25#endif
5f91c9e8 26
5006ec94 27#include <TObject.h>
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