// ------------------------------------------------------------------------------------------------ const aiExportDataBlob* Exporter::ExportToBlob( const aiScene* pScene, const char* pFormatId, unsigned int, const ExportProperties* /*pProperties*/ ) { if (pimpl->blob) { delete pimpl->blob; pimpl->blob = nullptr; } std::shared_ptr<IOSystem> old = pimpl->mIOSystem; BlobIOSystem* blobio = new BlobIOSystem(); pimpl->mIOSystem = std::shared_ptr<IOSystem>( blobio ); if (AI_SUCCESS != Export(pScene,pFormatId,blobio->GetMagicFileName())) { pimpl->mIOSystem = old; return nullptr; } pimpl->blob = blobio->GetBlobChain(); pimpl->mIOSystem = old; return pimpl->blob; }
// ------------------------------------------------------------------------------------------------ const aiExportDataBlob* Exporter :: ExportToBlob( const aiScene* pScene, const char* pFormatId, unsigned int pPreprocessing ) { if (pimpl->blob) { delete pimpl->blob; pimpl->blob = NULL; } boost::shared_ptr<IOSystem> old = pimpl->mIOSystem; BlobIOSystem* blobio = new BlobIOSystem(); pimpl->mIOSystem = boost::shared_ptr<IOSystem>( blobio ); if (AI_SUCCESS != Export(pScene,pFormatId,blobio->GetMagicFileName())) { pimpl->mIOSystem = old; return NULL; } pimpl->blob = blobio->GetBlobChain(); pimpl->mIOSystem = old; return pimpl->blob; }