#include <iostream>
#include "DM/Datamanager.hpp"
#include "DM/IAddInfoLayoutFactory.hpp"
#include "DM/IPolylineFactory.hpp"
#include "DM/IPolygonFactory.hpp"
{
int64_t id;
std::cout << "\t";
{
{
pt.getAsInt64ByView(layout,0,id);
std::cout << "Type: point ";
break;
}
{
line.
getAsInt64ByView(layout,0,
id);
std::cout << "Type: polyline";
break;
}
{
poly.getAsInt64ByView(layout,0,id);
std::cout << "Type: polygon ";
break;
}
default:
std::cout << "Type: unkown ";
}
std::cout << " Id: " << id;
return id;
}
void DM_get_by_id()
{
f->addColumn(DM::ColumnSemantic::Id);
return;
lf->addPoint(0,0,0);
lf->addPoint(1,0,0);
lf->addPoint(1,1,0);
lf->addPoint(0,1,0);
pf->addPoint(0,5,0);
pf->addPoint(0,6,0);
pf->addPoint(1,6,0);
pf->addPoint(1,5,0);
pf->closePart();
std::cout << "List objects within odm:" << std::endl;
std::vector<int64_t> ids;
for(
auto it =
odm->beginGeometry(); it !=
odm->endGeometry(); ++it)
{
int64_t id = output_type_and_id(*it,layout);
ids.push_back(id);
std::cout << std::endl;
}
std::cout << std::endl << "Access objects by id:" << std::endl;
for(auto it= ids.cbegin(); it!= ids.cend(); ++it)
{
output_type_and_id(*obj,layout);
std::cout << " (check id: "<< *it << ")" << std::endl;
}
}