22 #ifndef _SEFRAMEWORK_OUTPUTREGISTRY_H
23 #define _SEFRAMEWORK_OUTPUTREGISTRY_H
40 template <
typename PropertyType,
typename OutType>
45 template <
typename PropertyType,
typename OutType>
62 template <
typename PropertyType>
75 for (
auto instance : instance_names) {
77 auto new_converter = converter;
78 new_converter.second.index = instance.second;
80 auto& postfix = instance.first;
81 auto new_name = current_name +
"_" + postfix;
84 new_names.push_back(new_name);
98 template <
typename PropertyType>
110 for (
auto instance : instance_names) {
112 auto new_converter = converter;
113 new_converter.second.index = instance.second;
115 auto& new_name = instance.first;
118 new_names.push_back(new_name);
140 template <
typename PropertyType>
144 <<
" property " <<
typeid(PropertyType).name();
165 template <
typename PropertyType,
typename OutType>
T back_inserter(T... args)
boost::variant< bool, int32_t, int64_t, float, double, std::string, std::vector< bool >, std::vector< int32_t >, std::vector< int64_t >, std::vector< float >, std::vector< double >, NdArray::NdArray< int32_t >, NdArray::NdArray< int64_t >, NdArray::NdArray< float >, NdArray::NdArray< double > > cell_type
ColumnFromSource(ColumnConverter< PropertyType, OutType > converter)
std::function< Euclid::Table::Row::cell_type(const SourceInterface &, std::size_t index)> m_convert_func
Euclid::Table::Row::cell_type operator()(const SourceInterface &source)