Berkeley Nuclear Data Software
BeamCurrentLogManager.h
Go to the documentation of this file.
1 #ifndef _BEAM_CURRENT_LOG_MANAGER_
2 #define _BEAM_CURRENT_LOG_MANAGER_
3 
4 //c++ includes
5 #include <iostream>
6 #include <fstream>
7 #include <vector>
8 #include <sstream>
9 #include <ctime>
10 #include <cmath>
11 #include <algorithm>
12 #include <numeric>
13 
17 {
18 public:
19  //
21  //current in Amps
22  double m_current;
23  //integrated charge since start of log?
24  double m_intCharge;
25 };
26 
30 {
31 public:
35  void readFile(std::string a_currentLog);
38  double getIntegral(double a_t1,
39  double a_t2
40  );
41  std::vector<double> plotCurrent(double a_t1,
42  double a_t2
43  );
44  double getBeamOff(double a_ti);
45 //this will be private
46  //time since epoch time stamps representing the sampled current
47  std::vector< CurrentLogEntry > m_current;
48 
49 };
50 
51 
52 #endif
Definition: BeamCurrentLogManager.h:30
double getBeamOff(double a_ti)
Definition: BeamCurrentLogManager.cpp:176
void readFile(std::string a_currentLog)
Definition: BeamCurrentLogManager.cpp:7
double getIntegral(double a_t1, double a_t2)
Definition: BeamCurrentLogManager.cpp:97
std::vector< double > plotCurrent(double a_t1, double a_t2)
Definition: BeamCurrentLogManager.cpp:133
std::vector< CurrentLogEntry > m_current
Definition: BeamCurrentLogManager.h:47
Definition: BeamCurrentLogManager.h:17
double m_intCharge
Definition: BeamCurrentLogManager.h:24
double m_timeSinceEpoch
Definition: BeamCurrentLogManager.h:20
double m_current
Definition: BeamCurrentLogManager.h:22