167 Int_t omid=GetUniqueID();
170 if (omid<=0)
return 0;
173 if (InheritsFrom(
"IceAOM"))
175 if (omid<=20)
return -1;
176 if (omid>=21 && omid<=40)
return -2;
177 if (omid>=41 && omid<=60)
return -3;
178 if (omid>=61 && omid<=86)
return -4;
179 if (omid>=87 && omid<=122)
return -5;
180 if (omid>=123 && omid<=158)
return -6;
181 if (omid>=159 && omid<=194)
return -7;
182 if (omid>=195 && omid<=230)
return -8;
183 if (omid>=231 && omid<=266)
return -9;
184 if (omid>=267 && omid<=302)
return -10;
185 if (omid>=303 && omid<=344)
return -11;
186 if (omid>=345 && omid<=386)
return -12;
187 if (omid>=387 && omid<=428)
return -13;
188 if (omid>=429 && omid<=470)
return -14;
189 if (omid>=471 && omid<=512)
return -15;
190 if (omid>=513 && omid<=554)
return -16;
191 if (omid>=555 && omid<=596)
return -17;
192 if (omid>=597 && omid<=638)
return -18;
193 if (omid>=639 && omid<=680)
return -19;
196 if (omid==681)
return -18;
225 Int_t omid=GetUniqueID();
228 if (omid<=0)
return 0;
231 if (InheritsFrom(
"IceAOM"))
233 if (omid<=20)
return omid;
234 if (omid>=21 && omid<=40)
return (omid-20);
235 if (omid>=41 && omid<=60)
return (omid-40);
236 if (omid>=61 && omid<=86)
return (omid-60);
237 if (omid>=87 && omid<=122)
return (omid-86);
238 if (omid>=123 && omid<=158)
return (omid-122);
239 if (omid>=159 && omid<=194)
return (omid-158);
240 if (omid>=195 && omid<=230)
return (omid-194);
241 if (omid>=231 && omid<=266)
return (omid-230);
242 if (omid>=267 && omid<=302)
return (omid-266);
243 if (omid>=303 && omid<=344)
return (omid-302);
244 if (omid>=345 && omid<=386)
return (omid-344);
245 if (omid>=387 && omid<=428)
return (omid-386);
246 if (omid>=429 && omid<=470)
return (omid-428);
247 if (omid>=471 && omid<=512)
return (omid-470);
248 if (omid>=513 && omid<=554)
return (omid-512);
249 if (omid>=555 && omid<=596)
return (omid-554);
250 if (omid>=597 && omid<=638)
return (omid-596);
251 if (omid>=639 && omid<=680)
return (omid-638);
256 if (omid==681)
return 43;
278 if (InheritsFrom(
"IceAOM"))
280 for (Int_t i=1; i<=681; i++)
284 if (abs(s)==abs(
string) && l==level)
return i;
289 omid=100*
string+level;
325 Double_t tres=-99999;
327 if (!evt || !t || !s)
return tres;
330 if (!om)
return tres;
333 if (om->InheritsFrom(
"IceTDOM"))
return tres;
338 const Float_t pi=acos(-1.);
339 const Float_t c=0.299792458;
340 const Float_t npice=1.31768387;
341 const Float_t ngice=1.35075806;
342 const Float_t thetac=acos(1./npice);
346 if (vgroup) alphac=atan((1.-npice/ngice)/sqrt(npice*npice-1.));
350 if (!r0)
return tres;
354 if (!tt0)
return tres;
363 Float_t dist=fabs(hproj)+d/tan(pi/2.-thetac-alphac);
364 if (hproj<0) dist=-dist;
365 Float_t tgeo=t0+dist/c;
425 if (strlen(name)) m->SetName(name);
Signal (Hit) handling of a generic IceCube Optical Module (GOM).
Int_t GetString(Int_t id=0) const
Int_t GetLevel(Int_t id=0) const
Double_t GetTimeResidual(NcEvent *evt, NcTrack *t, NcSignal *s, TString name="LE", Int_t mode=7, Int_t vgroup=1) const
virtual TObject * Clone(const char *name="") const
Int_t GetOMId(Int_t string, Int_t level) const
Handling of 3-vectors in various reference frames.
Double_t Dot(Nc3Vector &q)
NcDevice(const char *name="", const char *title="")
NcSignal * GetHit(Int_t j) const
Creation and investigation of an NCFS generic event structure.
void GetPosition(Double_t *r, TString f, TString u="rad", Float_t s=-1) const
NcTimestamp * GetTimestamp()
NcDevice * GetDevice() const
virtual Float_t GetSignal(Int_t j=1, Int_t mode=0) const
NcSignal(const char *name="", const char *title="")
Handling of timestamps for (astro)particle physics research.
Int_t GetDifference(NcTimestamp *t, Int_t &days, Int_t &sec, Int_t &ns, Int_t &ps, TString type="UT")
Handling of the attributes of a reconstructed particle track.
Double_t GetDistance(NcPosition *p, Float_t scale=-1)
NcPosition * GetReferencePoint()
Nc3Vector Get3Momentum(Float_t scale=-1) const