NCFS-Pack
A generic (astro)particle physics analysis framework
 
Loading...
Searching...
No Matches
IceCleanHits.h
Go to the documentation of this file.
1#ifndef IceCleanHits_h
2#define IceCleanHits_h
3
4// Copyright(c) 2003, IceCube Experiment at the South Pole, All rights reserved.
5// See cxx source for full Copyright notice.
6
7#include "TROOT.h"
8#include "TTask.h"
9#include "TString.h"
10
11#include "NcJob.h"
12#include "IceEvent.h"
13#include "IceAOM.h"
14#include "IceTDOM.h"
15#include "IceICDOM.h"
16#include "IceDCDOM.h"
17
19
20class IceCleanHits : public TTask
21{
22 public :
23 IceCleanHits(const char* name="IceCleanHits",const char* title="Hit cleaning"); // Constructor
24 virtual ~IceCleanHits(); // Destructor
25 virtual void Exec(Option_t* opt); // Hit cleaning
26 void SetAdcRange(Float_t min,Float_t max,TString s); // Set ADC range (in PE)
27 void SetTotRange(Float_t min,Float_t max,TString s); // Set TOT range (in ns)
28 void SetIsolation(Float_t rmax,Float_t dtmax,TString s); // Set isolation radius (in m) and dt (in ns)
29 void SetTwindow(Float_t dtmax,TString s); // Set maximal time window around the trigger time(s)
30 void SetTtime(Float_t t,TString s,Int_t slc=0,Int_t mult=0); // Set trigger time(s)
31 void SetTname(TString name,TString s); // Set trigger name
32
33 protected :
34 IceEvent* fEvt; // Pointer to the current event structure
35 Float_t fAdcminAM; // Minimum Amanda MuDaq ADC value in PE
36 Float_t fAdcmaxAM; // Maximum Amanda MuDaq ADC value in PE
37 Float_t fAdcminAT; // Minimum Amanda TWRDaq ADC value in PE
38 Float_t fAdcmaxAT; // Maximum Amanda TWRDaq ADC value in PE
39 Float_t fAdcminT; // Minimum IceTop ADC value in PE
40 Float_t fAdcmaxT; // Maximum IceTop ADC value in PE
41 Float_t fAdcminIC; // Minimum standard IceCube InIce ADC value in PE
42 Float_t fAdcmaxIC; // Maximum standard IceCube InIce ADC value in PE
43 Float_t fAdcminDC; // Minimum DeepCore ADC value in PE
44 Float_t fAdcmaxDC; // Maximum DeepCore ADC value in PE
45 Float_t fTotminAEM; // Minimum Amanda MuDaq electrical TOT value in ns
46 Float_t fTotmaxAEM; // Maximum Amanda MuDaq electrical TOT value in ns
47 Float_t fTotminAOM; // Minimum Amanda MuDaq optical TOT value in ns
48 Float_t fTotmaxAOM; // Maximum Amanda MuDaq optical TOT value in ns
49 Float_t fTotminAET; // Minimum Amanda TWRDaq electrical TOT value in ns
50 Float_t fTotmaxAET; // Maximum Amanda TWRDaq electrical TOT value in ns
51 Float_t fTotminAOT; // Minimum Amanda TWRDaq optical TOT value in ns
52 Float_t fTotmaxAOT; // Maximum Amanda TWRDaq optical TOT value in ns
53 Float_t fTotminT; // Minimum IceTop TOT value in ns
54 Float_t fTotmaxT; // Maximum IceTop TOT value in ns
55 Float_t fTotminIC; // Minimum standard IceCube InIce TOT value in ns
56 Float_t fTotmaxIC; // Maximum standard IceCube InIce TOT value in ns
57 Float_t fTotminDC; // Minimum DeepCore TOT value in ns
58 Float_t fTotmaxDC; // Maximum DeepCore TOT value in ns
59 Float_t fRmaxA; // Maximum Amanda hit isolation radius in m
60 Float_t fDtmaxA; // Maximum Amanda hit isolation dt in ns
61 Float_t fRmaxT; // Maximum IceTop hit isolation radius in m
62 Float_t fDtmaxT; // Maximum IceTop hit isolation dt in ns
63 Float_t fRmaxIC; // Maximum standard IceCube InIce hit isolation radius in m
64 Float_t fDtmaxIC; // Maximum standard IceCube InIce hit isolation dt in ns
65 Float_t fRmaxDC; // Maximum DeepCore hit isolation radius in m
66 Float_t fDtmaxDC; // Maximum DeepCore hit isolation dt in ns
67 TString fTnamAM; // The Amanda MuDaq trigger name
68 Float_t fTtimAM; // The Amanda MuDaq trigger time in TDC counts
69 TString fTnamAT; // The Amanda TWRDaq trigger name
70 Float_t fTtimAT; // The Amanda TWRDaq trigger time in ns
71 TString fTnamT; // The IceCube trigger name for IceTop cleaning
72 Int_t fSlcT; // Usage flag for SLC hits of IceTop DOMs to determine the trigger time
73 Int_t fMultT; // Flag to allow multiple trigger times from IceTop hits
74 Float_t fTtimT; // The (median) trigger time in ns for IceTop DOM hits
75 TString fTnamIC; // The IceCube trigger name for standard InIce DOM cleaning
76 Int_t fSlcIC; // Usage flag for SLC hits of standard InIce DOMs to determine the trigger time
77 Int_t fMultIC; // Flag to allow multiple trigger times from standard InIce hits
78 Float_t fTtimIC; // The (median) trigger time in ns for standard InIce DOM hits
79 TString fTnamDC; // The IceCube trigger name for DeepCore DOM cleaning
80 Int_t fSlcDC; // Usage flag for SLC hits of DeepCore DOMs to determine the trigger time
81 Int_t fMultDC; // Flag to allow multiple trigger times from DeepCore hits
82 Float_t fTtimDC; // The (median) trigger time in ns for DeepCore DOM hits
83 Float_t fTwinAM; // Maximum Amanda MuDaq hit time difference from the trigger time in TDC counts
84 Float_t fTwinAT; // Maximum Amanda TWRDaq hit time difference from the trigger time in ns
85 Float_t fTwinT; // Maximum IceTop hit time difference from the trigger time in ns
86 Float_t fTwinIC; // Maximum standard InIce hit time difference from the trigger time in ns
87 Float_t fTwinDC; // Maximum DeepCore hit time difference from the trigger time in ns
88 void Amanda(); // Cleaning of Amanda modules
89 void MuDaq(); // Cleaning of Amanda modules for MuDaq data
90 void TWRDaq(); // Cleaning of Amanda modules for TWRDaq data
91 void IceTop(); // Cleaning of IceTop DOMs
92 void ICdoms(); // Cleaning of the standard IceCube InIce DOMs
93 void DCdoms(); // Cleaning of the DeepCore DOMs
94 void Amplitude(TObjArray& hits,Float_t adcmin,Float_t adcmax,Float_t totmin,Float_t totmax) const; // ADC and TOT cleaning
95 void Isolation(TObjArray& hits,Float_t dtmax,Float_t rmax) const; // Isolated hit cleaning
96 void TimeWindow(TObjArray& hits,Float_t ttrig,Float_t twin,TArrayF* peaks=0) const; // Time window cleaning
97
98 ClassDef(IceCleanHits,7) // TTask derived class to perform hit cleaning
99};
100#endif
void SetAdcRange(Float_t min, Float_t max, TString s)
Float_t fDtmaxIC
Float_t fDtmaxT
Float_t fRmaxT
Float_t fAdcmaxAT
Float_t fRmaxIC
TString fTnamIC
Float_t fTwinT
IceCleanHits(const char *name="IceCleanHits", const char *title="Hit cleaning")
Float_t fTotmaxDC
Float_t fTotmaxAOT
Float_t fAdcminAM
Float_t fRmaxA
Float_t fDtmaxA
Float_t fTtimIC
Float_t fRmaxDC
Float_t fTwinDC
Float_t fTtimAT
Float_t fAdcmaxDC
void SetTotRange(Float_t min, Float_t max, TString s)
Float_t fAdcminT
Float_t fAdcmaxAM
Float_t fTotminAET
IceEvent * fEvt
TString fTnamT
Float_t fTotmaxAOM
TString fTnamAT
Float_t fTwinAT
Float_t fTotmaxAET
TString fTnamAM
Float_t fAdcminAT
Float_t fTotmaxAEM
virtual void Exec(Option_t *opt)
Float_t fTotminAOT
Float_t fAdcminIC
Float_t fAdcmaxT
Float_t fTotminDC
Float_t fTotminAOM
void SetIsolation(Float_t rmax, Float_t dtmax, TString s)
Float_t fTotminIC
void Amplitude(TObjArray &hits, Float_t adcmin, Float_t adcmax, Float_t totmin, Float_t totmax) const
Float_t fAdcmaxIC
void SetTwindow(Float_t dtmax, TString s)
Float_t fTotminT
Float_t fTotmaxT
Float_t fTtimAM
Float_t fTotminAEM
TString fTnamDC
Float_t fTtimT
void SetTtime(Float_t t, TString s, Int_t slc=0, Int_t mult=0)
virtual ~IceCleanHits()
Float_t fTtimDC
void TimeWindow(TObjArray &hits, Float_t ttrig, Float_t twin, TArrayF *peaks=0) const
Float_t fDtmaxDC
void Isolation(TObjArray &hits, Float_t dtmax, Float_t rmax) const
Float_t fAdcminDC
void SetTname(TString name, TString s)
Float_t fTwinAM
Float_t fTotmaxIC
Float_t fTwinIC
Handling of IceCube event data.
Definition IceEvent.h:20