Skip to content
Snippets Groups Projects
Commit 9deda200 authored by Mickael Savinaud's avatar Mickael Savinaud
Browse files

MRG

parents 594b898d abc32512
No related branches found
No related tags found
No related merge requests found
......@@ -29,22 +29,28 @@ namespace otb
template<class TData>
KMLVectorDataIOFactory<TData>::KMLVectorDataIOFactory()
{
this->RegisterOverride("otbVectorDataIOBase",
"otbKMLVectorDataIO",
static std::string classOverride = std::string("otbVectorDataIOBase<") + typeid(TData).name() + ">";
static std::string subclass = std::string("otbKMLVectorDataIO<") + typeid(TData).name() + ">";
this->RegisterOverride(classOverride.c_str(),
subclass.c_str(),
"KML Vectordata IO",
1,
itk::CreateObjectFunction<KMLVectorDataIO<TData> >::New());
}
template<class TData>
KMLVectorDataIOFactory<TData>::~KMLVectorDataIOFactory()
{
}
template<class TData>
const char*
KMLVectorDataIOFactory<TData>::GetITKSourceVersion(void) const
{
return ITK_SOURCE_VERSION;
}
template<class TData>
const char*
KMLVectorDataIOFactory<TData>::GetDescription() const
......
......@@ -29,8 +29,11 @@ namespace otb
template<class TData>
OGRVectorDataIOFactory<TData>::OGRVectorDataIOFactory()
{
this->RegisterOverride("otbVectorDataIOBase",
"otbOGRVectorDataIO",
static std::string classOverride = std::string("otbVectorDataIOBase<") + typeid(TData).name() + ">";
static std::string subclass = std::string("otbOGRVectorDataIO<") + typeid(TData).name() + ">";
this->RegisterOverride(classOverride.c_str(),
subclass.c_str(),
"OGR Vectordata IO",
1,
itk::CreateObjectFunction<OGRVectorDataIO<TData> >::New());
......
......@@ -38,10 +38,12 @@ VectorDataIOFactory<TData>
::CreateVectorDataIO(const char* path, FileModeType mode)
{
RegisterBuiltInFactories();
std::string baseclassID = std::string("otbVectorDataIOBase<") + typeid(TData).name() + ">";
std::list<VectorDataIOBasePointerType> possibleVectorDataIO;
std::list<itk::LightObject::Pointer> allobjects =
itk::ObjectFactoryBase::CreateAllInstance("otbVectorDataIOBase");
itk::ObjectFactoryBase::CreateAllInstance(baseclassID.c_str());
for (std::list<itk::LightObject::Pointer>::iterator i = allobjects.begin();
i != allobjects.end(); ++i)
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment