RdStationInterpolatorStarShape.h
Go to the documentation of this file.
1 #ifndef RdStationInterpolatorStarShape_H
2 #define RdStationInterpolatorStarShape_H
3 
4 #include <fwk/VModule.h>
5 #include <utl/CoordinateSystem.h>
6 #include <utl/TimeStamp.h>
7 #include <vector>
8 
9 #include <utl/FFTDataContainer.h>
10 #include <evt/SimRadioPulse.h>
11 #include <evt/RadioSimulation.h>
12 #include <revt/Station.h>
13 #include <complex>
14 #include <map>
15 #include <utl/Point.h>
16 
17 //neu
18 #include <TRandom2.h>
19 #include <string>
20 
21 namespace evt {
22  class Event;
23  class ShowerSimData;
24  }
25 namespace revt {
26  class Channel;
27  }
28 namespace utl {
29  class Point;
30  }
31 namespace rdet {
32  class RDetector;
33 }
34 
35 
49  public:
53 
54  SimPulseEntry(double distance, double azimuth, const evt::SimRadioPulse* radiopulse)
55  : fDistanceFromShowerAxis(distance),
56  fObserverAzimuthAngle(azimuth),
57  fRadioPulse(radiopulse)
58  {}
59 
60  bool operator< (const SimPulseEntry& rhs) const { // sort by radius in the shower plane, then azimuth
63  else
65  }
66 };
67 
68 
70  public:
73  VModule::ResultFlag Init();
74  VModule::ResultFlag Run(evt::Event& theevent);
76 
77  private:
78 
79  revt::StationFFTDataContainer Interpolate( const revt::StationFFTDataContainer& simData1, const revt::StationFFTDataContainer& simData2, double x1, double x2, double x, double designlowerfreq, double designupperfreq);
80 
82 
83  void BuildSimShower(evt::ShowerSimData& theshower, const utl::CoordinateSystemPtr& coord);
91  double fEventRate;
95  std::vector<int> fIncludedStationIds;
96  std::vector<int> fExcludedStationIds;
98  unsigned int fEventcounter;
99 
100  enum InfoLevel {
101  eNone = 0,
102  eFinal = 1,
104  eObscure = 3,
106  };
107 
108  REGISTER_MODULE("RdStationInterpolatorStarShape", RdStationInterpolatorStarShape);
109  };
110 
111 } // namespace
112 #endif
Data structure for simulated Radio pulses.
Definition: SimRadioPulse.h:29
This class associate simulated pulse with detector station.
revt::StationTimeSeries PadTimeSeries(const evt::SimRadioPulse &simtimeseries)
padding of zeros to the end of the simtimeseries
VModule::ResultFlag Run(evt::Event &theevent)
Run: invoked once per event.
A TimeStamp holds GPS second and nanosecond for some event.
Definition: TimeStamp.h:110
Interface class to access Shower Simulated parameters.
Definition: ShowerSimData.h:49
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
SimPulseEntry(double distance, double azimuth, const evt::SimRadioPulse *radiopulse)
revt::StationFFTDataContainer Interpolate(const revt::StationFFTDataContainer &simData1, const revt::StationFFTDataContainer &simData2, double x1, double x2, double x, double designlowerfreq, double designupperfreq)
interpolation between two pulses
Module interface.
Definition: VModule.h:53
fwk::VModule::ResultFlag Finish()
Finish: invoked at end of the run (NOT end of the event)
Template class for a data container that offers and takes both time series and corresponding frequenc...
A TimeInterval is used to represent time elapsed between two events.
Definition: TimeInterval.h:43
ResultFlag
Flag returned by module methods to the RunController.
Definition: VModule.h:60
Template class for a FADC data or calibrated data container. Use the typedefs (TraceD, TraceI, etc.) defined in Trace-fwd.h.
Definition: Trace-fwd.h:19
VModule::ResultFlag Init()
Initialize: invoked at beginning of run (NOT beginning of event)
REGISTER_MODULE("RdStationInterpolatorStarShape", RdStationInterpolatorStarShape)
void BuildSimShower(evt::ShowerSimData &theshower, const utl::CoordinateSystemPtr &coord)
BuildSimShower---------------------------------------------------------------------------------------...

, generated on Tue Sep 26 2023.