//-***************************************************************************** static Abc::IArchive* mkIArchive( const std::string &iName ) { Abc::IArchive archive; AbcF::IFactory factory; factory.setPolicy(Abc::ErrorHandler::kQuietNoopPolicy); AbcF::IFactory::CoreType coreType; archive = factory.getArchive(iName, coreType); if ( coreType == AbcF::IFactory::kUnknown ) { throwPythonException( "Unknown core type" ); } return new Abc::IArchive( archive ); }
//-***************************************************************************** static std::string getCoreType( Abc::IArchive& archive ) { AbcF::IFactory factory; factory.setPolicy(Abc::ErrorHandler::kQuietNoopPolicy); AbcF::IFactory::CoreType coreType; archive = factory.getArchive(archive.getName(), coreType); if ( coreType == AbcF::IFactory::kOgawa ) { return kOgawa; } else if ( coreType == AbcF::IFactory::kHDF5 ) { return kHDF5; } else { return kUnknown; }; }