ANITA Analysis Framework
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
FilteredAnitaEvent Class Reference

This class is intended to store all the necessary data about an ANITA event for filtering and analysis. It stores the raw and filtered waveforms as well as auxilliary information. More...

#include <FilteredAnitaEvent.h>

Inheritance diagram for FilteredAnitaEvent:
Inheritance graph
[legend]
Collaboration diagram for FilteredAnitaEvent:
Collaboration graph
[legend]

Public Member Functions

int checkSaturation (ULong64_t *save_hsat=0, ULong64_t *save_vsat=0, double threshold=1500) const
 
int checkStepFunction (Int_t lab=1, AnitaRing::AnitaRing_t ring=AnitaRing::kMiddleRing, Int_t phiSector=8, AnitaPol::AnitaPol_t pol=AnitaPol::kVertical) const
 
int checkSurfForGlitch (Int_t surf=0, Int_t lab=-1, double glitchThreshold=800) const
 
 FilteredAnitaEvent (const UsefulAnitaEvent *event, FilterStrategy *strategy, const Adu5Pat *pat, const RawAnitaHeader *header, bool keep_all_stages=false)
 
 FilteredAnitaEvent (const FilteredAnitaEvent *fEv, FilterStrategy *strategy, bool keep_all_stages=false)
 
 FilteredAnitaEvent ()
 
int getAnitaVersion () const
 
double getAveragePower (AnitaPol::AnitaPol_t pol=AnitaPol::kNotAPol, AnitaRing::AnitaRing_t ring=AnitaRing::kNotARing, bool filtered=false) const
 
void getAverageSpectrum (TGraph *target, AnitaPol::AnitaPol_t pol=AnitaPol::kNotAPol) const
 
const AnalysisWaveformgetFilteredGraph (UInt_t i) const
 
const AnalysisWaveformgetFilteredGraph (UInt_t ant, AnitaPol::AnitaPol_t pol) const
 
const AnalysisWaveformgetFilteredGraph (UInt_t phi, AnitaRing::AnitaRing_t ring, AnitaPol::AnitaPol_t pol) const
 
const AnalysisWaveformgetFilteredGraphAtStage (UInt_t ant, AnitaPol::AnitaPol_t pol, UInt_t stage) const
 
const UsefulAdu5Pat * getGPS () const
 
const RawAnitaHeader * getHeader () const
 
double getMedianPower (AnitaPol::AnitaPol_t pol=AnitaPol::kNotAPol, AnitaRing::AnitaRing_t ring=AnitaRing::kNotARing, bool filtered=false) const
 
void getMedianSpectrum (TGraph *target, AnitaPol::AnitaPol_t pol=AnitaPol::kNotAPol, double pctile=0.5) const
 
void getMinMaxRatio (AnitaPol::AnitaPol_t pol, double *max_ratio, double *min_ratio, int *max_sector, int *min_sector, AnitaRing::AnitaRing_t ring1=AnitaRing::kBottomRing, AnitaRing::AnitaRing_t ring2=AnitaRing::kTopRing, int nth=0, int *n_greater=0) const
 
const AnalysisWaveformgetRawGraph (UInt_t i) const
 
const AnalysisWaveformgetRawGraph (UInt_t ant, AnitaPol::AnitaPol_t pol) const
 
const AnalysisWaveformgetRawGraph (UInt_t phi, AnitaRing::AnitaRing_t ring, AnitaPol::AnitaPol_t pol) const
 
const FilterStrategygetStrategy () const
 
const UsefulAnitaEvent * getUsefulAnitaEvent () const
 
void plotSummary (TCanvas *chpol=0, TCanvas *cvpol=0) const
 
virtual ~FilteredAnitaEvent ()
 

Protected Member Functions

void saveStage (int nreserve)
 

Protected Attributes

std::vector< AnalysisWaveform * > all_stages [AnitaPol::kNotAPol][NUM_SEAVEYS]
 
int anitaVersion
 
AnalysisWaveformfilteredGraphs [NUM_SEAVEYS *AnitaPol::kNotAPol]
 
AnalysisWaveformfilteredGraphsByAntPol [AnitaPol::kNotAPol][NUM_SEAVEYS]
 
const RawAnitaHeader * header
 
bool keep_all_stages
 
UsefulAdu5Pat pat
 
AnalysisWaveformrawGraphs [NUM_SEAVEYS *AnitaPol::kNotAPol]
 
AnalysisWaveformrawGraphsByAntPol [AnitaPol::kNotAPol][NUM_SEAVEYS]
 
const FilterStrategystrategy
 
const UsefulAnitaEvent * useful
 

Friends

class FilterOperation
 
class FilterStrategy
 

Detailed Description

This class is intended to store all the necessary data about an ANITA event for filtering and analysis. It stores the raw and filtered waveforms as well as auxilliary information.

Definition at line 23 of file FilteredAnitaEvent.h.

Constructor & Destructor Documentation

◆ FilteredAnitaEvent() [1/3]

FilteredAnitaEvent::FilteredAnitaEvent ( const UsefulAnitaEvent *  event,
FilterStrategy strategy,
const Adu5Pat *  pat,
const RawAnitaHeader *  header,
bool  keep_all_stages = false 
)

Create a FilteredAnitaEvent from a useful event, a filter strategy, GPS info and the event header. If keep_all_stages is true, then all stages of filtering are kept. Note that filtering occurs during construction, not later!

◆ FilteredAnitaEvent() [2/3]

FilteredAnitaEvent::FilteredAnitaEvent ( const FilteredAnitaEvent fEv,
FilterStrategy strategy,
bool  keep_all_stages = false 
)

Created a FilteredAnitaEvent from another FilteredAnitaEvent. !THIS IS NOT A COPY CONSTRUCTOR! The output of fEv will be used as an input to create this filtered event. Useful for doing things like deconvolving the output of another filter. If keep_all_stages is true, then all stages of filtering are kept. Note that filtering occurs during construction, not later!

◆ FilteredAnitaEvent() [3/3]

FilteredAnitaEvent::FilteredAnitaEvent ( )

Empty FilteredAnitaEvent. Not particularly useful

◆ ~FilteredAnitaEvent()

virtual FilteredAnitaEvent::~FilteredAnitaEvent ( )
virtual

Destructor

Member Function Documentation

◆ getAverageSpectrum()

void FilteredAnitaEvent::getAverageSpectrum ( TGraph *  target,
AnitaPol::AnitaPol_t  pol = AnitaPol::kNotAPol 
) const

Various calculations. Don't necessarily have to be in this class.

◆ getFilteredGraph() [1/3]

const AnalysisWaveform* FilteredAnitaEvent::getFilteredGraph ( UInt_t  i) const
inline

Accessor for filtered waveform based on index. Mostly useful if you want to iterate over everything

Definition at line 59 of file FilteredAnitaEvent.h.

◆ getFilteredGraph() [2/3]

const AnalysisWaveform* FilteredAnitaEvent::getFilteredGraph ( UInt_t  ant,
AnitaPol::AnitaPol_t  pol 
) const
inline

Accessor for filtered waveform based on antenna number and polarization.

Definition at line 62 of file FilteredAnitaEvent.h.

◆ getFilteredGraph() [3/3]

const AnalysisWaveform* FilteredAnitaEvent::getFilteredGraph ( UInt_t  phi,
AnitaRing::AnitaRing_t  ring,
AnitaPol::AnitaPol_t  pol 
) const

Accessor for raw waveform based on phi, ring, and pol

◆ getGPS()

const UsefulAdu5Pat* FilteredAnitaEvent::getGPS ( ) const
inline

Return the Useful GPS info

Definition at line 74 of file FilteredAnitaEvent.h.

◆ getHeader()

const RawAnitaHeader* FilteredAnitaEvent::getHeader ( ) const
inline

Return the header

Definition at line 77 of file FilteredAnitaEvent.h.

◆ getRawGraph() [1/3]

const AnalysisWaveform* FilteredAnitaEvent::getRawGraph ( UInt_t  i) const
inline

Accessor for raw waveform based on index. Mostly useful if you want to iterate over everything

Definition at line 50 of file FilteredAnitaEvent.h.

◆ getRawGraph() [2/3]

const AnalysisWaveform* FilteredAnitaEvent::getRawGraph ( UInt_t  ant,
AnitaPol::AnitaPol_t  pol 
) const
inline

Accessor for raw waveform based on antenna number and polarization.

Definition at line 53 of file FilteredAnitaEvent.h.

◆ getRawGraph() [3/3]

const AnalysisWaveform* FilteredAnitaEvent::getRawGraph ( UInt_t  phi,
AnitaRing::AnitaRing_t  ring,
AnitaPol::AnitaPol_t  pol 
) const

Accessor for raw waveform based on phi, ring, and pol

◆ getStrategy()

const FilterStrategy* FilteredAnitaEvent::getStrategy ( ) const
inline

Return the strategy

Definition at line 80 of file FilteredAnitaEvent.h.

◆ getUsefulAnitaEvent()

const UsefulAnitaEvent* FilteredAnitaEvent::getUsefulAnitaEvent ( ) const
inline

Return the UsefulAnitaEvent this event was constructed with.

Definition at line 72 of file FilteredAnitaEvent.h.


The documentation for this class was generated from the following file: