1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
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 **************************************************************************/
17 // $MpId: AliMpVIndexed.cxx,v 1.7 2006/05/24 13:58:29 ivana Exp $
20 //-----------------------------------------------------------------------------
21 // Class AliMpVIndexed
22 // -------------------
23 // Class that defines the limits of global pad indices.
24 // Included in AliRoot: 2003/05/02
25 // Authors: David Guez, Ivana Hrivnacova; IPN Orsay
26 //-----------------------------------------------------------------------------
28 #include "AliMpVIndexed.h"
31 ClassImp(AliMpVIndexed)
34 //_____________________________________________________________________________
35 AliMpVIndexed::AliMpVIndexed(const AliMpIntPair& lowLimit,
36 const AliMpIntPair& highLimit)
38 fLowIndicesLimit(lowLimit),
39 fHighIndicesLimit(highLimit)
41 /// Standard constructor
44 //_____________________________________________________________________________
45 AliMpVIndexed::AliMpVIndexed()
47 fLowIndicesLimit(AliMpIntPair::Invalid()),
48 fHighIndicesLimit(AliMpIntPair::Invalid())
50 /// Default constructor
53 //_____________________________________________________________________________
54 AliMpVIndexed::~AliMpVIndexed()
60 //_____________________________________________________________________________
61 AliMpIntPair AliMpVIndexed::GlobalIndices(const AliMpIntPair& localIndices) const
63 /// Return the global indices corresponding to the given local indices.
65 return GetLowIndicesLimit()+localIndices;
69 //_____________________________________________________________________________
70 Bool_t AliMpVIndexed::HasIndices(const AliMpIntPair& indices) const
72 /// Return true in the specified indices are within the limits.
74 return (indices.GetFirst() >= fLowIndicesLimit.GetFirst() &&
75 indices.GetSecond() >= fLowIndicesLimit.GetSecond() &&
76 indices.GetFirst() <= fHighIndicesLimit.GetFirst() &&
77 indices.GetSecond() <= fHighIndicesLimit.GetSecond() );
80 //_____________________________________________________________________________
81 Bool_t AliMpVIndexed::HasValidIndices() const
83 /// Returns true if both indices limits have valid values.
85 return (fLowIndicesLimit.IsValid() && fHighIndicesLimit.IsValid() );