1 #ifndef CARMA_PHASEMONITOR_PHASEMONITORWORKER_H
2 #define CARMA_PHASEMONITOR_PHASEMONITORWORKER_H
16 class PhaseMonitorSubsystem;
19 namespace phasemonitor {
21 class AntennaParameters;
22 class PhaseMonitorDevice;
23 class PhaseMonitorSamples;
25 class PhaseMonitorWorker {
28 PhaseMonitorWorker( std::string outDir,
29 carma::monitor::PhaseMonitorSubsystem * mon,
30 PhaseMonitorDevice & dev,
31 const AntennaParameters & params,
32 PhaseMonitorSamples & samples );
38 void getPhases(
float *diffPhase,
float *sumPhase,
39 float *ampSW,
float *ampNE,
40 float *compORS,
float *rawVolts,
41 float & swPhaseDegrees,
float & nePhaseDegrees );
43 void phaseJumpCheck(
float &phase,
float &lastPhase );
45 static const int _totalPhaseSamples = 600;
49 void writeOneSecDataToFile(
double mjd,
52 const float *
const calibratedVolts,
56 void writeSampleTimeToFile( );
59 log4cpp::Category & _log;
60 carma::monitor::PhaseMonitorSubsystem * _mon;
61 PhaseMonitorDevice & _phdev;
62 const AntennaParameters & _phparams;
63 PhaseMonitorSamples & _phsamples;
65 float _lastGoodPhaseSW, _lastGoodPhaseNE;
66 const std::vector< float > _offV, _rotCos, _rotSin, _scale;
68 std::ofstream _oneSecData;
74 ::std::ostream&
operator<<( ::std::ostream & os,
75 ::carma::phasemonitor::PhaseMonitorWorker &worker );
77 #endif // CARMA_PHASEMONITOR_PHASEMONITORWORKER_H
std::ostream & operator<<(::std::ostream &os, const carma::dbms::Table &table)