|
|
|
|
@ -496,148 +496,296 @@ class MAGNUM_EXPORT AbstractImporter: public PluginManager::AbstractManagingPlug
|
|
|
|
|
/** @brief Implementation for @ref close() */ |
|
|
|
|
virtual void doClose() = 0; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref defaultScene() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref defaultScene() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doDefaultScene(); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref sceneCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref sceneCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doSceneCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref sceneForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref sceneForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doSceneForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref sceneName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref sceneName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doSceneName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref scene() */ |
|
|
|
|
virtual std::optional<SceneData> doScene(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref lightCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref lightCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doLightCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref lightForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref lightForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doLightForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref lightName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref lightName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doLightName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref light() */ |
|
|
|
|
virtual std::optional<LightData> doLight(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref cameraCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref cameraCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doCameraCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref cameraForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref cameraForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doCameraForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref cameraName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref cameraName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doCameraName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref camera() */ |
|
|
|
|
virtual std::optional<CameraData> doCamera(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object2DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref object2DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doObject2DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object2DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref object2DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doObject2DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object2DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref object2DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doObject2DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object2D() */ |
|
|
|
|
virtual std::unique_ptr<ObjectData2D> doObject2D(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object3DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref object3DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doObject3DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object3DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref object3DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doObject3DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object3DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref object3DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doObject3DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref object3D() */ |
|
|
|
|
virtual std::unique_ptr<ObjectData3D> doObject3D(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh2DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref mesh2DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doMesh2DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh2DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref mesh2DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doMesh2DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh2DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref mesh2DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doMesh2DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh2D() */ |
|
|
|
|
virtual std::optional<MeshData2D> doMesh2D(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh3DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref mesh3DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doMesh3DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh3DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref mesh3DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doMesh3DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh3DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref mesh3DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doMesh3DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref mesh3D() */ |
|
|
|
|
virtual std::optional<MeshData3D> doMesh3D(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref materialCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref materialCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doMaterialCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref materialForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref materialForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doMaterialForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref materialName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref materialName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doMaterialName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref material() */ |
|
|
|
|
virtual std::unique_ptr<AbstractMaterialData> doMaterial(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref textureCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref textureCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doTextureCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref textureForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref textureForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doTextureForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref textureName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref textureName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doTextureName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref texture() */ |
|
|
|
|
virtual std::optional<TextureData> doTexture(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image1DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image1DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doImage1DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image1DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image1DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doImage1DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image1DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image1DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doImage1DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image1D() */ |
|
|
|
|
virtual std::optional<ImageData1D> doImage1D(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image2DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image2DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doImage2DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image2DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image2DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doImage2DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image2DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image2DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doImage2DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image2D() */ |
|
|
|
|
virtual std::optional<ImageData2D> doImage2D(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image3DCount() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image3DCount() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `0`. |
|
|
|
|
*/ |
|
|
|
|
virtual UnsignedInt doImage3DCount() const; |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image3DForName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image3DForName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns `-1`. |
|
|
|
|
*/ |
|
|
|
|
virtual Int doImage3DForName(const std::string& name); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image3DName() */ |
|
|
|
|
/**
|
|
|
|
|
* @brief Implementation for @ref image3DName() |
|
|
|
|
* |
|
|
|
|
* Default implementation returns empty string. |
|
|
|
|
*/ |
|
|
|
|
virtual std::string doImage3DName(UnsignedInt id); |
|
|
|
|
|
|
|
|
|
/** @brief Implementation for @ref image3D() */ |
|
|
|
|
|