6 #include "Centrality.h"
24 static void SetZdcCtbCent(NchCentrality min, NchCentrality max) {
25 mZdcCtbCent[0] = min; mZdcCtbCent[1] = max;
28 static void SetFlowCent(
int min,
int max) {
29 mFlowCent[0] = min; mFlowCent[1] = max;
32 static void SetHMinusCent(
int min,
int max) {
33 mHMinusCent[0]= min; mHMinusCent[1]=max;
36 static void SetNchCent(
int min,
int max) {
37 mNchCent[0] = min; mNchCent[1] = max;
40 static bool DoZdcCtbCent() {
return mDoZdcCtbCent; }
41 static bool DoFlowCent() {
return mDoFlowCent; }
42 static bool DoHMinusCent() {
return mDoHMinusCent; }
47 static void SetDoSpectraCent(
bool a=
true) { mDoSpectraCent=a; }
48 static void SetDoOtherCent(
bool a=
true) { mDoSpectraCent= !a; }
52 static void SetVertexZ(Float_t min,Float_t max) {
53 mVertexZ[0] = min; mVertexZ[1] = max;
56 static void SetVertexZSkip(Float_t val){
57 mVertexZSkip=fabs(val);
63 static void SetHalf(
char half);
64 static void SetHitHalf(
char half);
65 static void SetGeomHalf(
char half);
67 static char Half() {
return mHalf; }
68 static char HitHalf() {
return mHitHalf; }
69 static char GeomHalf() {
return mGeomHalf; }
70 static bool VertexSkipOn() {
return (mVertexZSkip); }
73 static void SetHitAvoid(Float_t val){
78 static void SetEta(Float_t min,Float_t max) {
79 mEta[0] = min; mEta[1] = max;
82 static void SetFitPts(Int_t min, Int_t max) {
83 mFitPts[0] = min; mFitPts[1] = max;
86 static void SetSDcaGl(Float_t min, Float_t max) {
87 mSDcaGl[0] = min; mSDcaGl[1] = max;
90 static void SetDcaPr(Float_t min, Float_t max) {
91 mDcaPr[0] = min; mDcaPr[1] = max;
94 static void SetDcaXYGl(Float_t min, Float_t max) {
95 mDcaXYGl[0] = min; mDcaXYGl[1] = max;
98 static void SetMcPts(Int_t min, Int_t max){
99 mMcPts[0] = min, mMcPts[1] = max;
102 static void SetEtaTight(Float_t min, Float_t max){
103 mEtaTight[0] = min, mEtaTight[1] = max;
107 static void SetCut(Int_t);
115 static bool IsSameSide(Float_t vertexZ, Float_t firstZ,Float_t lastZ){
116 bool isOut = !(mVertexZSkip && !IsOutSide(firstZ,lastZ,mVertexZSkip));
117 return (vertexZ*lastZ>0 && vertexZ*firstZ>0 && isOut);
120 static bool IsGeomSameSide(Float_t vertexZ,Float_t dipAngle){
121 float z = vertexZ+192*tan(dipAngle);
124 case 'e':
if(z<0 && vertexZ<0) isSame=
true;
break;
125 case 'w' :
if(z>0 && vertexZ>0) isSame=
true;
break;
126 case 's' :
if(z*vertexZ>0) isSame=
true;
break;
132 static bool IsHitSameSide(Float_t firstZ,Float_t lastZ){
135 case 'e':
if(firstZ<0 && lastZ<0) isSame=
true;
break;
136 case 'w' :
if(firstZ>0 && lastZ>0) isSame=
true;
break;
137 case 's' :
if(firstZ*lastZ>0) isSame=
true;
break;
144 static bool IsOutSide(Float_t firstZ, Float_t lastZ, Float_t val){
145 return (fabs(firstZ)>fabs(val) && fabs(lastZ)>fabs(val)
150 static void ShowCuts();
157 static NchCentrality mZdcCtbCent[2];
158 static Int_t mFlowCent[2];
159 static Int_t mHMinusCent[2];
161 static Int_t mNchCent[2];
163 static bool mDoZdcCtbCent;
164 static bool mDoFlowCent;
165 static bool mDoHMinusCent;
167 static bool mDoNchCent;
168 static bool mDoNchCentKludge;
170 static bool mDoSpectraCent;
173 static Float_t mVertexZ[2];
174 static Float_t mVertexZSkip;
176 static Float_t mEta[2];
177 static Int_t mFitPts[2];
178 static Float_t mSDcaGl[2];
179 static Float_t mDcaPr[2];
180 static Float_t mDcaXYGl[2];
181 static Int_t mMcPts[2];
182 static Float_t mEtaTight[2];
185 static char mHitHalf;
186 static char mGeomHalf;
187 static Float_t mHitAvoid;