xref: /openbmc/phosphor-hwmon/sensorset.hpp (revision 92bbd05b)
126b815faSBrad Bishop #pragma once
26292aeedSMatthew Barth 
36292aeedSMatthew Barth #include <map>
46292aeedSMatthew Barth #include <set>
56292aeedSMatthew Barth #include <string>
66292aeedSMatthew Barth 
76292aeedSMatthew Barth class SensorSet
86292aeedSMatthew Barth {
96292aeedSMatthew Barth     public:
106292aeedSMatthew Barth         typedef std::map<std::pair<std::string, std::string>,
116292aeedSMatthew Barth                 std::set<std::string>> container_t;
126292aeedSMatthew Barth 
13*92bbd05bSBrad Bishop         explicit SensorSet(const std::string& path);
14*92bbd05bSBrad Bishop         ~SensorSet() = default;
15*92bbd05bSBrad Bishop         SensorSet() = delete;
16*92bbd05bSBrad Bishop         SensorSet(const SensorSet&) = delete;
17*92bbd05bSBrad Bishop         SensorSet& operator=(const SensorSet&) = delete;
18*92bbd05bSBrad Bishop         SensorSet(SensorSet&&) = default;
19*92bbd05bSBrad Bishop         SensorSet& operator=(SensorSet&&) = default;
206292aeedSMatthew Barth 
216292aeedSMatthew Barth         container_t::const_iterator begin()
226292aeedSMatthew Barth         {
236292aeedSMatthew Barth             return const_cast<const container_t&>(container).begin();
246292aeedSMatthew Barth         }
256292aeedSMatthew Barth 
266292aeedSMatthew Barth         container_t::const_iterator end()
276292aeedSMatthew Barth         {
286292aeedSMatthew Barth             return const_cast<const container_t&>(container).end();
296292aeedSMatthew Barth         }
306292aeedSMatthew Barth 
316292aeedSMatthew Barth     private:
326292aeedSMatthew Barth         container_t container;
336292aeedSMatthew Barth 
346292aeedSMatthew Barth };
356292aeedSMatthew Barth 
3603476f11SBrad Bishop // vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
37