1 #ifndef UCORRELATOR_WAVEFORM_COMBINER_H 2 #define UCORRELATOR_WAVEFORM_COMBINER_H 9 #include "AnalysisWaveform.h" 10 #include "AnitaConventions.h" 11 #include "FilterStrategy.h" 19 class ResponseManager;
26 class WaveformCombiner
31 WaveformCombiner(
int nantennas = 15,
int npad = 3,
bool useUnfiltered =
true,
bool deconvolve =
false,
const AnitaResponse::ResponseManager * response = 0,
bool enableALFAHack=
true);
44 ULong64_t disallowed = 0,
double t0 = 0,
double t1 = 100,
45 double * avg_of_peaks =0,
bool use_hilbert =
true);
49 const TGraph * getCoherentAvgSpectrum()
const {
return &coherent_avg_spectrum; }
50 const TGraph * getDeconvolvedAvgSpectrum()
const {
return &deconvolved_avg_spectrum; }
51 void setNPad(
int new_npad) { npad = new_npad; }
52 void setNAntennas(
int n) { nant = n; antennas.resize(n); }
53 void setDeconvolve(
bool deconvolve) {do_deconvolution = deconvolve ;}
54 void setUseUnfiltered(
bool raw_opt) {use_raw = raw_opt;}
55 void setGroupDelayFlag(
bool opt) { enable_group_delay = opt; }
56 void setRTimeShiftFlag(
bool opt) { enable_r_time_shift = opt; }
57 void setSimulationTimeShiftFlag(
bool opt) { enable_simulation_time_shift = opt; }
58 bool wasAlfaFiltered() {
return alfa_hack; }
60 int getNAntennas()
const {
return nant; }
61 const int * getUsedAntennas()
const {
return &antennas[0]; }
68 void setBottomFirst(
bool opt) { bottom_first = opt; }
73 void setDelayToCenter(
bool opt) {delay_to_center = opt; }
82 void setCheckVpp(
int opt) { check_vpp = opt; }
84 double getMaxAntennaVpp() {
return max_vpp; }
100 bool do_deconvolution;
101 bool enable_group_delay;
104 bool delay_to_center;
105 bool enable_r_time_shift;
106 bool enable_simulation_time_shift;
108 std::vector<int> antennas;
A filter strategy defines the sets of filters that are used and provides some introspection abilities...
This class is intended to store all the necessary data about an ANITA event for filtering and analysi...
enum AnitaPol::EAnitaPol AnitaPol_t
Polarisation enumeration.