1 #ifndef CARMA_PHASEMONITORSAMPLES_H
2 #define CARMA_PHASEMONITORSAMPLES_H
25 #include "carma/phasemonitor/Maths.h"
29 namespace phasemonitor
31 class PhaseMonitorSamples
34 PhaseMonitorSamples( std::string fileName );
36 void process(
int n,
double startMJD,
38 float &skyRMS,
float &groundRMS,
39 float *skyPhase,
float *groundPhase,
40 float *ampSW,
float *ampNE,
41 int errors,
float boxTempC );
42 float getTimeTrend(
int i );
43 float getSkyPathTrend(
int i );
44 float getGroundPathTrend(
int i );
45 float getCurrentSkyPath() {
return getSkyPathTrend( _mostRecentSample ); };
46 float getCurrentGroundPath() {
return getGroundPathTrend( _mostRecentSample ); };
48 int trendsCount() {
return _ntrend; };
50 static const float _lambda = 24200.0;
53 std::string _fileName;
56 int _mostRecentSample;
57 static const int _ntrend = 3;
58 static const float _avgMultiplier = 0.9;
59 static const double _oneMJDsec = .00001157407;
61 float _timeTrend[_ntrend];
62 float _skyPathTrend[_ntrend], _groundPathTrend[_ntrend];
63 float _runningSum, _runningWght, _runningAvg;
69 ::std::ostream&
operator<<( ::std::ostream& os,
70 ::carma::phasemonitor::PhaseMonitorSamples &samples );
72 #endif // CARMA_PHASEMONITORSAMPLES_H
std::ostream & operator<<(::std::ostream &os, const carma::dbms::Table &table)
Interface file for the carma::util::Trace class and related macros.