5 #include "TClonesArray.h"
24 const Short_t NUMBER_STRAWS,
25 TClonesArray *SttTubeArray,
26 Short_t *nParContiguous,
29 Short_t ListParContiguous[][6]
43 Zwiredirection[NUMBER_STRAWS];
48 for (i=1;i<= NUMBER_STRAWS; i++){
59 for (i=0;i< NUMBER_STRAWS; i++){
60 if(
fabs(Zwiredirection[i] -1.) > 1.e-5)
continue;
62 nParContiguous[i+1]= 0;
63 for(j=0;j<NUMBER_STRAWS; j++){
65 if(
fabs(Zwiredirection[j] -1.) > 1.e-5)
continue;
66 dis2 = ( x[
i]-x[j])*( x[i]-x[j]) +
67 (y[
i]-y[j])*(y[i]-y[j]);
68 if(dis2>1.1)
continue;
69 ListParContiguous[
i][nParContiguous[
i]] = j+1;
71 if( nParContiguous[i]>6 ) { cout<<
"Error ! Contiguous Axial Straws > 6!!! Exit.\n";
exit(-1);}
90 const Short_t NUMBER_STRAWS,
91 TClonesArray *SttTubeArray,
92 Short_t *nParContiguous,
95 Short_t ListParContiguous[][6],
110 Zwiredirection[NUMBER_STRAWS];
115 for (i=1;i<= NUMBER_STRAWS; i++){
116 pSttTube = (
PndSttTube *) SttTubeArray->At(i);
120 rxy2[i-1]= x[i-1]*x[i-1]+y[i-1]*y[i-1];
127 for (i=0;i< NUMBER_STRAWS; i++){
128 if(
fabs(Zwiredirection[i] -1.) > 1.e-5)
continue;
130 nParContiguous[i+1]= 0;
131 for(j=0;j<NUMBER_STRAWS; j++){
133 if(
fabs(Zwiredirection[j] -1.) > 1.e-5)
continue;
134 dis2 = ( x[
i]-x[j])*( x[i]-x[j]) +
135 (y[
i]-y[j])*(y[i]-y[j]);
136 if(dis2>1.1)
continue;
137 ListParContiguous[
i][nParContiguous[
i]] = j+1;
139 if( nParContiguous[i]>6 ) { cout<<
"Errore ! N contigue Par > 6!!! Exit.\n";
exit(-1);}
virtual ~PndTrkSttAdjacencies()
void CalculateAdjacentStt(const Short_t NUMBER_STRAWS, TClonesArray *SttTubeArray, Short_t *nParContiguous, Short_t ListParContiguous[][6])
friend F32vec4 fabs(const F32vec4 &a)
void CalculateAdjacentStt2(const Short_t NUMBER_STRAWS, TClonesArray *SttTubeArray, Short_t *nParContiguous, Short_t ListParContiguous[][6], Double_t *x, Double_t *y, Double_t *z, Double_t *rxy2)
TVector3 GetWireDirection()