SineSubtractCache.h
1 #ifndef _UCORRELATOR_SINE_SUB_CACHE_H
2 #define _UCORRELATOR_SINE_SUB_CACHE_H
3 
4 /*
5  Ben Strutt is writing a UCorrelator class?
6  */
7 #include "SineSubtract.h"
8 #include "UCFilters.h"
9 #include "AnitaConventions.h"
10 
11 class TFile;
12 class TTree;
13 
14 namespace UCorrelator {
15 
16 
21 
22  public:
23 
24  static void makeCache(int run, SineSubtractFilter* ssf); // generation function
25 
26  SineSubtractCache(const char* descr);
27  virtual ~SineSubtractCache();
28  const FFTtools::SineSubtractResult* getResult(UInt_t eventNumber, AnitaPol::AnitaPol_t pol, Int_t antenna);
29 
30 
31  Bool_t fDebug;
32  private:
33 
34  static TString branchName(AnitaPol::AnitaPol_t pol, Int_t ant);
35  static TString fileName(const char* specDir, UInt_t hash, Int_t run);
36 
37  void loadRun(int run);
38 
39  TFile* fFile;
40  TTree* fTree;
41  UInt_t fDescHash;
42  TString fSpecDir;
43  Int_t fCurrentRun;
44  Int_t fLastAttemptedRun;
45  UInt_t fLastEventNumber;
46  FFTtools::SineSubtractResult* results[AnitaPol::kNotAPol][NUM_SEAVEYS];
47 
48 };
49 
50 
51 
52 }
53 
54 
55 
56 #endif
USeful in for loops.
enum AnitaPol::EAnitaPol AnitaPol_t
Polarisation enumeration.