void GDALSpatialLinking::init() { properInit = false; if (this->leadingViewName.empty()) return; if (this->leadingViewName.empty()) return; std::map<std::string, DM::View> inViews = getViewsInStream()["city"]; if (inViews.find(leadingViewName) == inViews.end()) { DM::Logger(DM::Warning) << "view " << leadingViewName << " not found in in stream"; return; } if (inViews.find(linkViewName) == inViews.end()) { DM::Logger(DM::Warning) << "view " << linkViewName << " not found in in stream"; return; } this->leadingView = DM::ViewContainer(leadingViewName, inViews[leadingViewName].getType(), DM::READ); this->linkView = DM::ViewContainer(linkViewName, inViews[linkViewName].getType(), DM::READ); std::stringstream l_name; l_name << leadingViewName << "_id"; link_name = l_name.str(); this->linkView.addAttribute(link_name, leadingViewName, DM::WRITE); std::vector<DM::ViewContainer *> data_stream; data_stream.push_back(&leadingView); data_stream.push_back(&linkView); this->registerViewContainers(data_stream); properInit = true; }
void GDALClusterNeighbourhood::init() { if (this->viewName.empty() || this->neighName.empty()) { return; } std::map<std::string, DM::View> inViews = getViewsInStream()["city"]; if (inViews.find(viewName) == inViews.end()) { DM::Logger(DM::Warning) << "view " << viewName << " not found in in stream"; return; } name_id1 = this->viewName + "_id1"; name_id2 = this->viewName + "_id2"; leadingView = DM::ViewContainer(this->viewName, DM::FACE, DM::READ); leadingView.addAttribute("cluster_id", DM::Attribute::DOUBLE, DM::WRITE); ngView = DM::ViewContainer(this->neighName, DM::COMPONENT, DM::READ); ngView.addAttribute(name_id1, this->viewName, DM::READ); ngView.addAttribute(name_id2, this->viewName, DM::READ); std::vector<DM::ViewContainer*> data; data.push_back( &leadingView); data.push_back( &ngView); this->registerViewContainers(data); }
void GDALMergeFaces::init() { if (this->viewName.empty() || this->combinedViewName.empty()) { return; } std::map<std::string, DM::View> inViews = getViewsInStream()["city"]; if (inViews.find(viewName) == inViews.end()) { DM::Logger(DM::Warning) << "view " << viewName << " not found in in stream"; return; } leadingView = DM::ViewContainer(this->viewName, DM::FACE, DM::READ); leadingView.addAttribute(attriubteName, DM::Attribute::INT, DM::READ); combinedView = DM::ViewContainer(this->combinedViewName, DM::FACE, DM::WRITE); combinedView.addAttribute("test_id", DM::Attribute::INT, DM::WRITE); std::vector<DM::ViewContainer*> data; data.push_back( &leadingView); data.push_back( &combinedView); this->registerViewContainers(data); }