31 ASSERT(
columns.size() == types.size());
32 for (
size_t i = 0;
i < types.size(); ++
i)
34 eckit::Log::info() <<
columns[
i] <<
" : " << types[
i] << std::endl;
38 ASSERT(types[
i].size());
39 ASSERT(types[
i][0] ==
'[');
40 ASSERT(types[
i][types[
i].size() - 1] ==
']');
43 std::vector<std::string> parts(eckit::StringTools::split(
";", types[
i].substr(1, types[
i].size() - 2)));
44 for (
size_t p = 0; p < parts.size(); ++p)
46 std::vector<std::string> field = eckit::StringTools::split(
":", parts[p]);
47 bf.first.push_back(field[0]);
48 bf.second.push_back(atoi(field[1].c_str()));
51 eckit::Log::info() <<
"" <<
i <<
": " <<
columns[
i] <<
" - " << bf.first << std::endl;
76 for (
size_t i = 0;
i < columns_.size(); ++
i)
77 md_[md_.columnIndex(columns_[
i])]->bitfieldDef(bitfieldDefs_[
i]);
85 data_ =
const_cast<double*
>(ii_->data());
100 if (ii_->isNewDataset())
std::vector< BitfieldDef > bitfieldDefs_
MDUpdatingIterator(T &inputIterator, const T &end, const std::vector< std::string > &columns, const std::vector< std::string > &types)