blob: 7eba8d67e53182ffbd251f8cb372f1ea4aef769b [file] [log] [blame]
Matt Spinlerb54357f2017-08-21 14:38:54 -05001#pragma once
2
3#include <map>
4#include <string>
5#include <tuple>
Matt Spinlere7e432b2017-08-21 15:01:40 -05006#include <vector>
Matt Spinlerb54357f2017-08-21 14:38:54 -05007
8namespace witherspoon
9{
10namespace power
11{
12namespace ucd90160
13{
14
Matt Spinlere7e432b2017-08-21 15:01:40 -050015using RailNames = std::vector<std::string>;
Matt Spinlerb54357f2017-08-21 14:38:54 -050016
Matt Spinlere7e432b2017-08-21 15:01:40 -050017constexpr auto pathField = 0;
18constexpr auto railNamesField = 1;
19
20using DeviceDefinition = std::tuple<std::string, RailNames>;
Matt Spinlerb54357f2017-08-21 14:38:54 -050021
22//Maps a device instance to its definition
23using DeviceMap = std::map<size_t, DeviceDefinition>;
24
25}
26}
27}