1 #ifndef ISIMUD_EXCHANGES_MIT_COMMON_REF_DATA_HPP
2 #define ISIMUD_EXCHANGES_MIT_COMMON_REF_DATA_HPP
24 #include "../../common/isin.hpp"
26 #include "core/csv_iterator.hpp"
27 #include "core/line_iterator.hpp"
28 #include "core/ttypes.hpp"
30 #include <boost/lexical_cast.hpp>
31 #include <boost/mpl/assert.hpp>
35 #include <unordered_map>
52 using element_type=exchanges::common::
ISIN_t;
56 explicit constexpr security_id_key(element_type
const &isin)
noexcept(
true);
66 struct hash_security_id_key {
67 using element_type=
std::uint64_t;
69 BOOST_MPL_ASSERT_RELATION(
sizeof(security_id_key::element_type)/2, <=,
sizeof(element_type));
86 BOOST_MPL_ASSERT_RELATION(instrument_id_field, <, isin_field);
94 explicit ref_data(
std::istream &is)
noexcept(
false);
103 return lookup_instrument_id_;
116 common::SecurityID_t instrument;
117 exchanges::common::
ISIN_t isin;
120 lookup_instrument_id_t lookup_instrument_id_;
121 lookup_isin_t lookup_isin_;
127 operator<<(
std::ostream &is,
ref_data const &rd)
noexcept(
false);