]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpSubZone.cxx
Adding classes forgotten in previous commit
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpSubZone.cxx
CommitLineData
dee1d5f1 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
5f91c9e8 16// $Id$
13985652 17// $MpId: AliMpSubZone.cxx,v 1.8 2006/05/24 13:58:46 ivana Exp $
5f91c9e8 18// Category: sector
3d1463c8 19
20//-----------------------------------------------------------------------------
5f91c9e8 21// Class AliMpSubZone
22// ------------------
23// Class describing a zone segment composed of the
24// line segments with the same motif type.
dbe945cc 25// Included in AliRoot: 2003/05/02
5f91c9e8 26// Authors: David Guez, Ivana Hrivnacova; IPN Orsay
3d1463c8 27//-----------------------------------------------------------------------------
5f91c9e8 28
5f91c9e8 29#include "AliMpSubZone.h"
30#include "AliMpVRowSegment.h"
31#include "AliMpVMotif.h"
32
2c605e66 33#include "AliLog.h"
34
35#include <Riostream.h>
36
13985652 37/// \cond CLASSIMP
5f91c9e8 38ClassImp(AliMpSubZone)
13985652 39/// \endcond
5f91c9e8 40
41//_____________________________________________________________________________
42AliMpSubZone::AliMpSubZone(AliMpVMotif* motif)
43 : TObject(),
13e7956b 44 fMotif(motif),
45 fSegments()
5f91c9e8 46{
dee1d5f1 47/// Standard constructor
5f91c9e8 48}
49
50//_____________________________________________________________________________
51AliMpSubZone::AliMpSubZone()
52 : TObject(),
13e7956b 53 fMotif(0),
54 fSegments()
5f91c9e8 55{
dee1d5f1 56/// Default constructor
5f91c9e8 57}
58
59//_____________________________________________________________________________
dee1d5f1 60AliMpSubZone::~AliMpSubZone()
61{
f5671fc3 62/// Destructor
5f91c9e8 63}
64
fb1bf5c0 65//
66// public methods
67//
68
5f91c9e8 69//_____________________________________________________________________________
70void AliMpSubZone::AddRowSegment(AliMpVRowSegment* rowSegment)
71{
dee1d5f1 72/// Add row segment.
5f91c9e8 73
f79c58a5 74 fSegments.Add(rowSegment);
5f91c9e8 75}
76
77
78//_____________________________________________________________________________
2998a151 79void AliMpSubZone::Print(const char* /*option*/) const
5f91c9e8 80{
dee1d5f1 81/// Print motif position Ids for all row segments.
5f91c9e8 82
83 for (Int_t i=0; i<GetNofRowSegments(); i++) {
84 AliMpVRowSegment* rowSegment = GetRowSegment(i);
85
86 cout << rowSegment->GetNofMotifs() << " ";
87
88 for (Int_t j=0; j<rowSegment->GetNofMotifs(); j++)
89 cout << rowSegment->GetMotifPositionId(j) << " ";
90
91 cout << endl;
92 }
93}
94
95//_____________________________________________________________________________
96Int_t AliMpSubZone::GetNofRowSegments() const
97{
dee1d5f1 98/// Return number of row segments.
5f91c9e8 99
f79c58a5 100 return fSegments.GetSize();
5f91c9e8 101}
102
103//_____________________________________________________________________________
104AliMpVRowSegment* AliMpSubZone::GetRowSegment(Int_t i) const
105{
dee1d5f1 106/// Return i-th row segment.
fb1bf5c0 107
5f91c9e8 108 if (i<0 || i>=GetNofRowSegments()) {
2c605e66 109 AliErrorStream() << "Index outside range" << endl;
5f91c9e8 110 return 0;
111 }
112
f79c58a5 113 return (AliMpVRowSegment*)fSegments.At(i);
5f91c9e8 114}
115
116//_____________________________________________________________________________
117AliMpVMotif* AliMpSubZone:: GetMotif() const
118{
dee1d5f1 119/// Return the motif.
5f91c9e8 120
121 return fMotif;
122}