void Server::aggregate (const std::string & survey_in) { Structure survey; survey.load(survey_in); if (POMAGMA_DEBUG_LEVEL > 1) { survey.validate(); } compact(m_structure); if (POMAGMA_DEBUG_LEVEL > 1) { m_structure.validate(); } DenseSet defined = restricted(survey.signature(), m_structure.signature()); size_t total_dim = m_structure.carrier().item_count() + defined.count_items(); if (m_structure.carrier().item_dim() < total_dim) { m_structure.resize(total_dim); if (POMAGMA_DEBUG_LEVEL > 1) { m_structure.validate(); } } pomagma::aggregate(m_structure, survey, defined); if (POMAGMA_DEBUG_LEVEL > 1) { m_structure.validate(); } }
void load_structure (const std::string & filename) { structure.load(filename); }