8 #ifndef INCLUDED_UHD_CAL_CONTAINER_HPP 9 #define INCLUDED_UHD_CAL_CONTAINER_HPP 12 #include <boost/archive/text_iarchive.hpp> 13 #include <boost/archive/text_oarchive.hpp> 14 #include <boost/serialization/map.hpp> 15 #include <boost/serialization/serialization.hpp> 16 #include <boost/serialization/string.hpp> 17 #include <boost/serialization/vector.hpp> 18 #include <boost/shared_ptr.hpp> 20 namespace uhd {
namespace cal {
26 typedef boost::shared_ptr<base_container>
sptr;
40 template <
typename in_type,
typename out_type>
55 virtual out_type
get(
const in_type& args) = 0;
65 virtual void add(
const out_type output,
const in_type& args) = 0;
72 virtual void add_metadata(
const metadata_t& data) = 0;
86 friend class boost::serialization::access;
88 virtual void serialize(iarchive_type& ar,
const unsigned int) = 0;
89 virtual void serialize(oarchive_type& ar,
const unsigned int) = 0;
boost::archive::text_oarchive oarchive_type
Definition: container.hpp:83
boost::shared_ptr< base_container > sptr
Definition: container.hpp:26
Definition: build_info.hpp:13
#define UHD_API
Definition: config.h:68
boost::archive::text_iarchive iarchive_type
Definition: container.hpp:82
Definition: container.hpp:41
Definition: container.hpp:22
std::map< std::string, std::string > metadata_t
Definition: container.hpp:25
std::map< in_type, out_type > container_t
Definition: container.hpp:44