Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

BDSwicPedAccessor.h

Go to the documentation of this file.
00001 
00028 #ifndef BDSWICPEDACCESSOR_H
00029 #define BDSWICPEDACCESSOR_H
00030 
00031 #include <Validity/VldContext.h>
00032 #include <Validity/VldRange.h>
00033 
00034 #include <BeamDataUtil/BeamMonSwicPeds.h>
00035 #include <DatabaseInterface/DbiResultPtr.h>
00036 
00037 #include <vector>
00038 #include <map>
00039 
00040 class UtilBlockedRunningAverageVector;
00041 
00042 class BDSwicPedAccessor {
00043 
00044 public:
00045 
00046     BDSwicPedAccessor();
00047     ~BDSwicPedAccessor();
00048 
00052     void AddDevice(const char* device_name,
00053                    int minimum_sample_size=10);
00054 
00057     bool SetSpillTime(VldContext vc);
00058 
00062     int GetPeds(const char* device_name,
00063                 std::vector<double> &mean,
00064                 std::vector<double> &sigma) const;
00065     int GetPeds(const char* device_name,
00066                 std::vector<double> &mean) const;
00067 private:
00068         
00069     struct Device {
00070         UtilBlockedRunningAverageVector* channels;
00071         VldRange range;
00072         bool is_profile;
00073         Device() : channels(0), range(), is_profile(false) {}
00074     };
00075     typedef std::map<std::string,Device> SwicMap;
00076     SwicMap fSwicMap;
00077 
00078     DbiResultPtr<BeamMonSwicPeds>* fDRP;
00079 };
00080 
00081 #endif  // BDSWICPEDACCESSOR_H

Generated on Mon Feb 15 11:06:24 2010 for loon by  doxygen 1.3.9.1