00001 #ifndef _ots_DACStream_h_
00002 #define _ots_DACStream_h_
00003
00004 #include "otsdaq-components/DetectorConfiguration/ROCStream.h"
00005
00006 #include <string>
00007 #include <map>
00008
00009 namespace ots
00010 {
00011
00012
00013
00014
00015
00016 class ConfigurationManager;
00017 class ConfigurationTree;
00018
00019 class DACStream
00020 {
00021 public:
00022 typedef std::multimap<unsigned int, ROCStream> ROCStreams;
00023 typedef ROCStreams::iterator iterator;
00024 typedef ROCStreams::const_iterator const_iterator;
00025
00026 DACStream(void);
00027 virtual ~DACStream(void);
00028
00029 void makeStream(const ConfigurationTree& feToDetectorTree);
00030
00031
00032 iterator begin(void) {return theChannelStreamMap_.begin();}
00033 iterator end (void) {return theChannelStreamMap_.end();}
00034 const_iterator begin(void) const {return theChannelStreamMap_.begin();}
00035 const_iterator end (void) const {return theChannelStreamMap_.end();}
00036
00037 const std::multimap<unsigned int, ROCStream>& getChannelStreamMap() const {return theChannelStreamMap_;}
00038
00039 private:
00040
00041 std::multimap<unsigned int, ROCStream> theChannelStreamMap_;
00042
00043 };
00044
00045 }
00046
00047 #endif //ots_DACStream_h