Program Listing for File sensor_map.hpp

Return to documentation for file (cosm/hal/subsystem/sensor_map.hpp)

#pragma once

/*******************************************************************************
 * Includes
 ******************************************************************************/
#include <variant>
#include <typeindex>
#include <unordered_map>

#include "cosm/cosm.hpp"

/*******************************************************************************
 * Namespaces/Decls
 ******************************************************************************/
namespace cosm::hal::subsystem {

/*******************************************************************************
 * Class Definitions
 ******************************************************************************/
template<typename ...TSensorTypes>
using sensor_variant = std::variant<TSensorTypes...>;

template<typename ...TSensorTypes>
using sensor_variant_map = std::unordered_map<std::type_index,
                                              sensor_variant<TSensorTypes...>
                                              >;

} /* namespace cosm::hal::subsystem */