#include "AliMpVSegmentation.h"
#include "AliMpArea.h"
#include "AliMpConstants.h"
#include "AliLog.h"
#include "TObjArray.h"
ClassImp(AliMpVSegmentation)
AliMpVSegmentation::AliMpVSegmentation()
: TObject()
{
}
AliMpVSegmentation::~AliMpVSegmentation()
{
}
Int_t
AliMpVSegmentation::GetNeighbours(const AliMpPad& pad,
TObjArray& neighbours,
Bool_t includeSelf,
Bool_t includeVoid) const
{
static const Int_t kNofTestPositions(12);
static Double_t shiftx[12] = {-1., -1., -1., -1., -1./3., 1./3., 1., 1., 1., 1., 1./3., -1./3.};
static Double_t shifty[12] = {-1., -1./3., 1./3., 1., 1., 1., 1., 1./3., -1./3., -1., -1., -1.};
static const Double_t kEpsilon(AliMpConstants::LengthTolerance()*2.0);
neighbours.Delete();
neighbours.SetOwner(kTRUE);
if ( ! pad.IsValid() ) return 0;
AliMpPad invalid(AliMpPad::Invalid());
AliMpPad *previous = &invalid;
Int_t n(0);
if ( includeSelf )
{
neighbours.Add(new AliMpPad(pad));
++n;
}
else if ( includeVoid )
{
neighbours.Add(new AliMpPad(invalid));
++n;
}
for ( Int_t i = 0; i < kNofTestPositions; ++i )
{
AliMpPad p
= PadByPosition(pad.GetPositionX() + ( pad.GetDimensionX() + kEpsilon )*shiftx[i],
pad.GetPositionY() + ( pad.GetDimensionY() + kEpsilon )*shifty[i],
kFALSE);
if ( p.IsValid() && p != *previous )
{
previous = new AliMpPad(p);
neighbours.Add(previous);
++n;
}
else if ( includeVoid )
{
neighbours.Add(new AliMpPad(invalid));
++n;
}
}
return n;
}
Bool_t
AliMpVSegmentation::HasPadByIndices(Int_t ix, Int_t iy) const
{
return ( PadByIndices(ix, iy, kFALSE) != AliMpPad::Invalid() );
}
Bool_t
AliMpVSegmentation::HasPadByLocation(Int_t manuId, Int_t manuChannel) const
{
return (PadByLocation(manuId, manuChannel, kFALSE) != AliMpPad::Invalid());
}
Bool_t
AliMpVSegmentation::HasMotifPosition(Int_t manuId) const
{
return ( MotifPosition(manuId) != 0x0 );
}
AliMpVSegmentation.cxx:10 AliMpVSegmentation.cxx:11 AliMpVSegmentation.cxx:12 AliMpVSegmentation.cxx:13 AliMpVSegmentation.cxx:14 AliMpVSegmentation.cxx:15 AliMpVSegmentation.cxx:16 AliMpVSegmentation.cxx:17 AliMpVSegmentation.cxx:18 AliMpVSegmentation.cxx:19 AliMpVSegmentation.cxx:20 AliMpVSegmentation.cxx:21 AliMpVSegmentation.cxx:22 AliMpVSegmentation.cxx:23 AliMpVSegmentation.cxx:24 AliMpVSegmentation.cxx:25 AliMpVSegmentation.cxx:26 AliMpVSegmentation.cxx:27 AliMpVSegmentation.cxx:28 AliMpVSegmentation.cxx:29 AliMpVSegmentation.cxx:30 AliMpVSegmentation.cxx:31 AliMpVSegmentation.cxx:32 AliMpVSegmentation.cxx:33 AliMpVSegmentation.cxx:34 AliMpVSegmentation.cxx:35 AliMpVSegmentation.cxx:36 AliMpVSegmentation.cxx:37 AliMpVSegmentation.cxx:38 AliMpVSegmentation.cxx:39 AliMpVSegmentation.cxx:40 AliMpVSegmentation.cxx:41 AliMpVSegmentation.cxx:42 AliMpVSegmentation.cxx:43 AliMpVSegmentation.cxx:44 AliMpVSegmentation.cxx:45 AliMpVSegmentation.cxx:46 AliMpVSegmentation.cxx:47 AliMpVSegmentation.cxx:48 AliMpVSegmentation.cxx:49 AliMpVSegmentation.cxx:50 AliMpVSegmentation.cxx:51 AliMpVSegmentation.cxx:52 AliMpVSegmentation.cxx:53 AliMpVSegmentation.cxx:54 AliMpVSegmentation.cxx:55 AliMpVSegmentation.cxx:56 AliMpVSegmentation.cxx:57 AliMpVSegmentation.cxx:58 AliMpVSegmentation.cxx:59 AliMpVSegmentation.cxx:60 AliMpVSegmentation.cxx:61 AliMpVSegmentation.cxx:62 AliMpVSegmentation.cxx:63 AliMpVSegmentation.cxx:64 AliMpVSegmentation.cxx:65 AliMpVSegmentation.cxx:66 AliMpVSegmentation.cxx:67 AliMpVSegmentation.cxx:68 AliMpVSegmentation.cxx:69 AliMpVSegmentation.cxx:70 AliMpVSegmentation.cxx:71 AliMpVSegmentation.cxx:72 AliMpVSegmentation.cxx:73 AliMpVSegmentation.cxx:74 AliMpVSegmentation.cxx:75 AliMpVSegmentation.cxx:76 AliMpVSegmentation.cxx:77 AliMpVSegmentation.cxx:78 AliMpVSegmentation.cxx:79 AliMpVSegmentation.cxx:80 AliMpVSegmentation.cxx:81 AliMpVSegmentation.cxx:82 AliMpVSegmentation.cxx:83 AliMpVSegmentation.cxx:84 AliMpVSegmentation.cxx:85 AliMpVSegmentation.cxx:86 AliMpVSegmentation.cxx:87 AliMpVSegmentation.cxx:88 AliMpVSegmentation.cxx:89 AliMpVSegmentation.cxx:90 AliMpVSegmentation.cxx:91 AliMpVSegmentation.cxx:92 AliMpVSegmentation.cxx:93 AliMpVSegmentation.cxx:94 AliMpVSegmentation.cxx:95 AliMpVSegmentation.cxx:96 AliMpVSegmentation.cxx:97 AliMpVSegmentation.cxx:98 AliMpVSegmentation.cxx:99 AliMpVSegmentation.cxx:100 AliMpVSegmentation.cxx:101 AliMpVSegmentation.cxx:102 AliMpVSegmentation.cxx:103 AliMpVSegmentation.cxx:104 AliMpVSegmentation.cxx:105 AliMpVSegmentation.cxx:106 AliMpVSegmentation.cxx:107 AliMpVSegmentation.cxx:108 AliMpVSegmentation.cxx:109 AliMpVSegmentation.cxx:110 AliMpVSegmentation.cxx:111 AliMpVSegmentation.cxx:112 AliMpVSegmentation.cxx:113 AliMpVSegmentation.cxx:114 AliMpVSegmentation.cxx:115 AliMpVSegmentation.cxx:116 AliMpVSegmentation.cxx:117 AliMpVSegmentation.cxx:118 AliMpVSegmentation.cxx:119 AliMpVSegmentation.cxx:120 AliMpVSegmentation.cxx:121 AliMpVSegmentation.cxx:122 AliMpVSegmentation.cxx:123 AliMpVSegmentation.cxx:124 AliMpVSegmentation.cxx:125 AliMpVSegmentation.cxx:126 AliMpVSegmentation.cxx:127 AliMpVSegmentation.cxx:128 AliMpVSegmentation.cxx:129 AliMpVSegmentation.cxx:130 AliMpVSegmentation.cxx:131 AliMpVSegmentation.cxx:132 AliMpVSegmentation.cxx:133 AliMpVSegmentation.cxx:134 AliMpVSegmentation.cxx:135 AliMpVSegmentation.cxx:136 AliMpVSegmentation.cxx:137 AliMpVSegmentation.cxx:138 AliMpVSegmentation.cxx:139 AliMpVSegmentation.cxx:140 AliMpVSegmentation.cxx:141 AliMpVSegmentation.cxx:142 AliMpVSegmentation.cxx:143 AliMpVSegmentation.cxx:144 AliMpVSegmentation.cxx:145 AliMpVSegmentation.cxx:146 AliMpVSegmentation.cxx:147 AliMpVSegmentation.cxx:148 AliMpVSegmentation.cxx:149 AliMpVSegmentation.cxx:150 AliMpVSegmentation.cxx:151 AliMpVSegmentation.cxx:152 AliMpVSegmentation.cxx:153 AliMpVSegmentation.cxx:154 AliMpVSegmentation.cxx:155 AliMpVSegmentation.cxx:156 AliMpVSegmentation.cxx:157 AliMpVSegmentation.cxx:158 AliMpVSegmentation.cxx:159 AliMpVSegmentation.cxx:160 AliMpVSegmentation.cxx:161 AliMpVSegmentation.cxx:162 AliMpVSegmentation.cxx:163 AliMpVSegmentation.cxx:164 AliMpVSegmentation.cxx:165 AliMpVSegmentation.cxx:166 AliMpVSegmentation.cxx:167 AliMpVSegmentation.cxx:168 AliMpVSegmentation.cxx:169 AliMpVSegmentation.cxx:170 AliMpVSegmentation.cxx:171 AliMpVSegmentation.cxx:172 AliMpVSegmentation.cxx:173