inventory: write sensor yaml parser
Write python-based parser for sensor.yaml. The parser generates
sensor-gen.cpp,which is having a map of sensorid(key) and
sensorinfo(value).
Change-Id: I5aa2d2bc871ced06e5e4c164a67eeb5974031d5d
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
diff --git a/types.hpp b/types.hpp
new file mode 100644
index 0000000..d8a1386
--- /dev/null
+++ b/types.hpp
@@ -0,0 +1,48 @@
+#pragma once
+
+#include <stdint.h>
+
+#include <map>
+#include <string>
+
+#include <sdbusplus/server.hpp>
+
+namespace ipmi
+{
+namespace sensor
+{
+
+using Offset = uint8_t;
+using Value = sdbusplus::message::variant<bool, int64_t, std::string>;
+
+struct Values
+{
+ Value assert;
+ Value deassert;
+};
+
+using OffsetValueMap = std::map<Offset,Values>;
+
+using DbusProperty = std::string;
+using DbusPropertyMap = std::map<DbusProperty,OffsetValueMap>;
+
+using DbusInterface = std::string;
+using DbusInterfaceMap = std::map<DbusInterface,DbusPropertyMap>;
+
+using InstancePath = std::string;
+using Type = uint8_t;
+using ReadingType = uint8_t;
+
+struct Info
+{
+ Type sensorType;
+ InstancePath sensorPath;
+ ReadingType sensorReadingType;
+ DbusInterfaceMap sensorInterfaces;
+};
+
+using Id = uint8_t;
+using IdInfoMap = std::map<Id,Info>;
+
+}//namespce sensor
+}//namespace ipmi