Browse Source

Using fixed-size integer types for Trade data IDs.

vectorfields
Vladimír Vondruš 14 years ago
parent
commit
1de2154823
  1. 122
      src/Trade/AbstractImporter.h
  2. 12
      src/Trade/MeshData2D.h
  3. 18
      src/Trade/MeshData3D.h
  4. 6
      src/Trade/MeshObjectData2D.h
  5. 6
      src/Trade/MeshObjectData3D.h
  6. 12
      src/Trade/ObjectData2D.h
  7. 12
      src/Trade/ObjectData3D.h
  8. 8
      src/Trade/SceneData.h

122
src/Trade/AbstractImporter.h

@ -118,10 +118,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* @note The function is not const, because the value will probably
* be lazy-populated.
*/
virtual inline int defaultScene() { return -1; }
virtual inline std::int32_t defaultScene() { return -1; }
/** @brief %Scene count */
virtual inline unsigned int sceneCount() const { return 0; }
virtual inline std::uint32_t sceneCount() const { return 0; }
/**
* @brief %Scene ID for given name
@ -129,7 +129,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no scene for given name exists, returns -1.
* @see SceneData::name()
*/
virtual int sceneForName(const std::string& name);
virtual std::int32_t sceneForName(const std::string& name);
/**
* @brief %Scene
@ -137,10 +137,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given scene or nullptr, if no such scene exists.
*/
virtual SceneData* scene(unsigned int id);
virtual SceneData* scene(std::uint32_t id);
/** @brief %Light count */
virtual inline unsigned int lightCount() const { return 0; }
virtual inline std::uint32_t lightCount() const { return 0; }
/**
* @brief %Light ID for given name
@ -148,7 +148,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no light for given name exists, returns -1.
* @see LightData::name()
*/
virtual int lightForName(const std::string& name);
virtual std::int32_t lightForName(const std::string& name);
/**
* @brief %Light
@ -156,10 +156,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given light or nullptr, if no such light exists.
*/
virtual LightData* light(unsigned int id);
virtual LightData* light(std::uint32_t id);
/** @brief %Camera count */
virtual inline unsigned int cameraCount() const { return 0; }
virtual inline std::uint32_t cameraCount() const { return 0; }
/**
* @brief %Camera ID for given name
@ -167,7 +167,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no camera for given name exists, returns -1.
* @see CameraData::name()
*/
virtual int cameraForName(const std::string& name);
virtual std::int32_t cameraForName(const std::string& name);
/**
* @brief %Camera
@ -176,10 +176,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* Returns pointer to given camera or nullptr, if no such camera
* exists.
*/
virtual CameraData* camera(unsigned int id);
virtual CameraData* camera(std::uint32_t id);
/** @brief Two-dimensional object count */
virtual inline unsigned int object2DCount() const { return 0; }
virtual inline std::uint32_t object2DCount() const { return 0; }
/**
* @brief Two-dimensional object ID for given name
@ -187,7 +187,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no scene for given name exists, returns -1.
* @see ObjectData2D::name()
*/
virtual int object2DForName(const std::string& name);
virtual std::int32_t object2DForName(const std::string& name);
/**
* @brief Two-dimensional object
@ -196,10 +196,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* Returns pointer to given object or nullptr, if no such object
* exists.
*/
virtual ObjectData2D* object2D(unsigned int id);
virtual ObjectData2D* object2D(std::uint32_t id);
/** @brief Three-dimensional object count */
virtual inline unsigned int object3DCount() const { return 0; }
virtual inline std::uint32_t object3DCount() const { return 0; }
/**
* @brief Three-dimensional object ID for given name
@ -207,7 +207,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no scene for given name exists, returns -1.
* @see ObjectData3D::name()
*/
virtual int object3DForName(const std::string& name);
virtual std::int32_t object3DForName(const std::string& name);
/**
* @brief Three-dimensional object
@ -216,10 +216,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* Returns pointer to given object or nullptr, if no such object
* exists.
*/
virtual ObjectData3D* object3D(unsigned int id);
virtual ObjectData3D* object3D(std::uint32_t id);
/** @brief Two-dimensional mesh count */
virtual inline unsigned int mesh2DCount() const { return 0; }
virtual inline std::uint32_t mesh2DCount() const { return 0; }
/**
* @brief Two-dimensional mesh ID for given name
@ -227,7 +227,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no mesh for given name exists, returns -1.
* @see MeshData2D::name()
*/
virtual int mesh2DForName(const std::string& name);
virtual std::int32_t mesh2DForName(const std::string& name);
/**
* @brief Two-dimensional mesh
@ -235,10 +235,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given mesh or nullptr, if no such mesh exists.
*/
virtual MeshData2D* mesh2D(unsigned int id);
virtual MeshData2D* mesh2D(std::uint32_t id);
/** @brief Three-dimensional mesh count */
virtual inline unsigned int mesh3DCount() const { return 0; }
virtual inline std::uint32_t mesh3DCount() const { return 0; }
/**
* @brief Three-dimensional mesh ID for given name
@ -246,7 +246,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no mesh for given name exists, returns -1.
* @see MeshData3D::name()
*/
virtual int mesh3DForName(const std::string& name);
virtual std::int32_t mesh3DForName(const std::string& name);
/**
* @brief Three-dimensional mesh
@ -254,10 +254,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given mesh or nullptr, if no such mesh exists.
*/
virtual MeshData3D* mesh3D(unsigned int id);
virtual MeshData3D* mesh3D(std::uint32_t id);
/** @brief Material count */
virtual inline unsigned int materialCount() const { return 0; }
virtual inline std::uint32_t materialCount() const { return 0; }
/**
* @brief Material ID for given name
@ -265,7 +265,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no material for given name exists, returns -1.
* @see AbstractMaterialData::name()
*/
virtual int materialForName(const std::string& name);
virtual std::int32_t materialForName(const std::string& name);
/**
* @brief Material
@ -274,10 +274,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* Returns pointer to given material or nullptr, if no such material
* exists.
*/
virtual AbstractMaterialData* material(unsigned int id);
virtual AbstractMaterialData* material(std::uint32_t id);
/** @brief %Texture count */
virtual inline unsigned int textureCount() const { return 0; }
virtual inline std::uint32_t textureCount() const { return 0; }
/**
* @brief %Texture ID for given name
@ -285,7 +285,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no texture for given name exists, returns -1.
* @see TextureData::name()
*/
virtual int textureForName(const std::string& name);
virtual std::int32_t textureForName(const std::string& name);
/**
* @brief %Texture
@ -294,10 +294,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* Returns pointer to given texture or nullptr, if no such texture
* exists.
*/
virtual TextureData* texture(unsigned int id);
virtual TextureData* texture(std::uint32_t id);
/** @brief One-dimensional image count */
virtual inline unsigned int image1DCount() const { return 0; }
virtual inline std::uint32_t image1DCount() const { return 0; }
/**
* @brief One-dimensional image ID for given name
@ -305,7 +305,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no image for given name exists, returns -1.
* @see ImageData1D::name()
*/
virtual int image1DForName(const std::string& name);
virtual std::int32_t image1DForName(const std::string& name);
/**
* @brief One-dimensional image
@ -313,10 +313,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given image or nullptr, if no such image exists.
*/
virtual ImageData1D* image1D(unsigned int id);
virtual ImageData1D* image1D(std::uint32_t id);
/** @brief Two-dimensional image count */
virtual inline unsigned int image2DCount() const { return 0; }
virtual inline std::uint32_t image2DCount() const { return 0; }
/**
* @brief Two-dimensional image ID for given name
@ -324,7 +324,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no image for given name exists, returns -1.
* @see ImageData2D::name()
*/
virtual int image2DForName(const std::string& name);
virtual std::int32_t image2DForName(const std::string& name);
/**
* @brief Two-dimensional image
@ -332,10 +332,10 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given image or nullptr, if no such image exists.
*/
virtual ImageData2D* image2D(unsigned int id);
virtual ImageData2D* image2D(std::uint32_t id);
/** @brief Three-dimensional image count */
virtual inline unsigned int image3DCount() const { return 0; }
virtual inline std::uint32_t image3DCount() const { return 0; }
/**
* @brief Three-dimensional image ID for given name
@ -343,7 +343,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
* If no image for given name exists, returns -1.
* @see ImageData3D::name()
*/
virtual int image3DForName(const std::string& name);
virtual std::int32_t image3DForName(const std::string& name);
/**
* @brief Three-dimensional image
@ -351,7 +351,7 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
*
* Returns pointer to given image or nullptr, if no such image exists.
*/
virtual ImageData3D* image3D(unsigned int id);
virtual ImageData3D* image3D(std::uint32_t id);
/*@}*/
};
@ -359,30 +359,30 @@ class MAGNUM_EXPORT AbstractImporter: public Corrade::PluginManager::Plugin {
CORRADE_ENUMSET_OPERATORS(AbstractImporter::Features)
/* Implementations for inline functions with unused parameters */
inline int AbstractImporter::sceneForName(const std::string&) { return -1; }
inline SceneData* AbstractImporter::scene(unsigned int) { return nullptr; }
inline int AbstractImporter::lightForName(const std::string&) { return -1; }
inline LightData* AbstractImporter::light(unsigned int) { return nullptr; }
inline int AbstractImporter::cameraForName(const std::string&) { return -1; }
inline CameraData* AbstractImporter::camera(unsigned int) { return nullptr; }
inline int AbstractImporter::object2DForName(const std::string&) { return -1; }
inline ObjectData2D* AbstractImporter::object2D(unsigned int) { return nullptr; }
inline int AbstractImporter::object3DForName(const std::string&) { return -1; }
inline ObjectData3D* AbstractImporter::object3D(unsigned int) { return nullptr; }
inline int AbstractImporter::mesh2DForName(const std::string&) { return -1; }
inline MeshData2D* AbstractImporter::mesh2D(unsigned int) { return nullptr; }
inline int AbstractImporter::mesh3DForName(const std::string&) { return -1; }
inline MeshData3D* AbstractImporter::mesh3D(unsigned int) { return nullptr; }
inline int AbstractImporter::materialForName(const std::string&) { return -1; }
inline AbstractMaterialData* AbstractImporter::material(unsigned int) { return nullptr; }
inline int AbstractImporter::textureForName(const std::string&) { return -1; }
inline TextureData* AbstractImporter::texture(unsigned int) { return nullptr; }
inline int AbstractImporter::image1DForName(const std::string&) { return -1; }
inline ImageData1D* AbstractImporter::image1D(unsigned int) { return nullptr; }
inline int AbstractImporter::image2DForName(const std::string&) { return -1; }
inline ImageData2D* AbstractImporter::image2D(unsigned int) { return nullptr; }
inline int AbstractImporter::image3DForName(const std::string&) { return -1; }
inline ImageData3D* AbstractImporter::image3D(unsigned int) { return nullptr; }
inline std::int32_t AbstractImporter::sceneForName(const std::string&) { return -1; }
inline SceneData* AbstractImporter::scene(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::lightForName(const std::string&) { return -1; }
inline LightData* AbstractImporter::light(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::cameraForName(const std::string&) { return -1; }
inline CameraData* AbstractImporter::camera(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::object2DForName(const std::string&) { return -1; }
inline ObjectData2D* AbstractImporter::object2D(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::object3DForName(const std::string&) { return -1; }
inline ObjectData3D* AbstractImporter::object3D(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::mesh2DForName(const std::string&) { return -1; }
inline MeshData2D* AbstractImporter::mesh2D(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::mesh3DForName(const std::string&) { return -1; }
inline MeshData3D* AbstractImporter::mesh3D(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::materialForName(const std::string&) { return -1; }
inline AbstractMaterialData* AbstractImporter::material(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::textureForName(const std::string&) { return -1; }
inline TextureData* AbstractImporter::texture(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::image1DForName(const std::string&) { return -1; }
inline ImageData1D* AbstractImporter::image1D(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::image2DForName(const std::string&) { return -1; }
inline ImageData2D* AbstractImporter::image2D(std::uint32_t) { return nullptr; }
inline std::int32_t AbstractImporter::image3DForName(const std::string&) { return -1; }
inline ImageData3D* AbstractImporter::image3D(std::uint32_t) { return nullptr; }
}}

12
src/Trade/MeshData2D.h

@ -70,7 +70,7 @@ class MAGNUM_EXPORT MeshData2D {
inline const std::vector<std::uint32_t>* indices() const { return _indices; } /**< @overload */
/** @brief Count of vertex position arrays */
inline unsigned int positionArrayCount() const { return _positions.size(); }
inline std::uint32_t positionArrayCount() const { return _positions.size(); }
/**
* @brief Positions
@ -78,11 +78,11 @@ class MAGNUM_EXPORT MeshData2D {
* @return Positions or nullptr if there is no vertex array with given
* ID.
*/
inline std::vector<Point2D>* positions(unsigned int id) { return _positions[id]; }
inline const std::vector<Point2D>* positions(unsigned int id) const { return _positions[id]; } /**< @overload */
inline std::vector<Point2D>* positions(std::uint32_t id) { return _positions[id]; }
inline const std::vector<Point2D>* positions(std::uint32_t id) const { return _positions[id]; } /**< @overload */
/** @brief Count of 2D texture coordinate arrays */
inline unsigned int textureCoords2DArrayCount() const { return _textureCoords2D.size(); }
inline std::uint32_t textureCoords2DArrayCount() const { return _textureCoords2D.size(); }
/**
* @brief 2D texture coordinates
@ -90,8 +90,8 @@ class MAGNUM_EXPORT MeshData2D {
* @return %Texture coordinates or nullptr if there is no texture
* coordinates array with given ID.
*/
inline std::vector<Vector2>* textureCoords2D(unsigned int id) { return _textureCoords2D[id]; }
inline const std::vector<Vector2>* textureCoords2D(unsigned int id) const { return _textureCoords2D[id]; } /**< @overload */
inline std::vector<Vector2>* textureCoords2D(std::uint32_t id) { return _textureCoords2D[id]; }
inline const std::vector<Vector2>* textureCoords2D(std::uint32_t id) const { return _textureCoords2D[id]; } /**< @overload */
private:
std::string _name;

18
src/Trade/MeshData3D.h

@ -71,7 +71,7 @@ class MAGNUM_EXPORT MeshData3D {
inline const std::vector<std::uint32_t>* indices() const { return _indices; } /**< @overload */
/** @brief Count of vertex position arrays */
inline unsigned int positionArrayCount() const { return _positions.size(); }
inline std::uint32_t positionArrayCount() const { return _positions.size(); }
/**
* @brief Positions
@ -79,11 +79,11 @@ class MAGNUM_EXPORT MeshData3D {
* @return Positions or nullptr if there is no vertex array with given
* ID.
*/
inline std::vector<Point3D>* positions(unsigned int id) { return _positions[id]; }
inline const std::vector<Point3D>* positions(unsigned int id) const { return _positions[id]; } /**< @overload */
inline std::vector<Point3D>* positions(std::uint32_t id) { return _positions[id]; }
inline const std::vector<Point3D>* positions(std::uint32_t id) const { return _positions[id]; } /**< @overload */
/** @brief Count of normal arrays */
inline unsigned int normalArrayCount() const { return _normals.size(); }
inline std::uint32_t normalArrayCount() const { return _normals.size(); }
/**
* @brief Normals
@ -91,11 +91,11 @@ class MAGNUM_EXPORT MeshData3D {
* @return Normals or nullptr if there is no normal array with given
* ID.
*/
inline std::vector<Vector3>* normals(unsigned int id) { return _normals[id]; }
inline const std::vector<Vector3>* normals(unsigned int id) const { return _normals[id]; } /**< @overload */
inline std::vector<Vector3>* normals(std::uint32_t id) { return _normals[id]; }
inline const std::vector<Vector3>* normals(std::uint32_t id) const { return _normals[id]; } /**< @overload */
/** @brief Count of 2D texture coordinate arrays */
inline unsigned int textureCoords2DArrayCount() const { return _textureCoords2D.size(); }
inline std::uint32_t textureCoords2DArrayCount() const { return _textureCoords2D.size(); }
/**
* @brief 2D texture coordinates
@ -103,8 +103,8 @@ class MAGNUM_EXPORT MeshData3D {
* @return %Texture coordinates or nullptr if there is no texture
* coordinates array with given ID.
*/
inline std::vector<Vector2>* textureCoords2D(unsigned int id) { return _textureCoords2D[id]; }
inline const std::vector<Vector2>* textureCoords2D(unsigned int id) const { return _textureCoords2D[id]; } /**< @overload */
inline std::vector<Vector2>* textureCoords2D(std::uint32_t id) { return _textureCoords2D[id]; }
inline const std::vector<Vector2>* textureCoords2D(std::uint32_t id) const { return _textureCoords2D[id]; } /**< @overload */
private:
std::string _name;

6
src/Trade/MeshObjectData2D.h

@ -46,13 +46,13 @@ class MeshObjectData2D: public ObjectData2D {
*
* Creates object with mesh instance type.
*/
inline MeshObjectData2D(const std::string& name, const std::vector<unsigned int>& children, const Matrix4& transformation, unsigned int instance, unsigned int material): ObjectData2D(name, children, transformation, InstanceType::Mesh, instance), _material(material) {}
inline MeshObjectData2D(const std::string& name, const std::vector<std::uint32_t>& children, const Matrix4& transformation, std::uint32_t instance, std::uint32_t material): ObjectData2D(name, children, transformation, InstanceType::Mesh, instance), _material(material) {}
/** @brief Material ID */
inline unsigned int material() const { return _material; }
inline std::uint32_t material() const { return _material; }
private:
unsigned int _material;
std::uint32_t _material;
};
}}

6
src/Trade/MeshObjectData3D.h

@ -46,13 +46,13 @@ class MeshObjectData3D: public ObjectData3D {
*
* Creates object with mesh instance type.
*/
inline MeshObjectData3D(const std::string& name, const std::vector<unsigned int>& children, const Matrix4& transformation, unsigned int instance, unsigned int material): ObjectData3D(name, children, transformation, InstanceType::Mesh, instance), _material(material) {}
inline MeshObjectData3D(const std::string& name, const std::vector<std::uint32_t>& children, const Matrix4& transformation, std::uint32_t instance, std::uint32_t material): ObjectData3D(name, children, transformation, InstanceType::Mesh, instance), _material(material) {}
/** @brief Material ID */
inline unsigned int material() const { return _material; }
inline std::uint32_t material() const { return _material; }
private:
unsigned int _material;
std::uint32_t _material;
};
}}

12
src/Trade/ObjectData2D.h

@ -53,7 +53,7 @@ class ObjectData2D {
* @param instanceType Instance type
* @param instanceId Instance ID
*/
inline ObjectData2D(const std::string& name, const std::vector<unsigned int>& children, const Matrix3& transformation, InstanceType instanceType, unsigned int instanceId): _name(name), _children(children), _transformation(transformation), _instanceType(instanceType), _instanceId(instanceId) {}
inline ObjectData2D(const std::string& name, const std::vector<std::uint32_t>& children, const Matrix3& transformation, InstanceType instanceType, std::uint32_t instanceId): _name(name), _children(children), _transformation(transformation), _instanceType(instanceType), _instanceId(instanceId) {}
/**
* @brief Constructor for empty instance
@ -61,7 +61,7 @@ class ObjectData2D {
* @param children Child objects
* @param transformation Transformation (relative to parent)
*/
inline ObjectData2D(const std::string& name, const std::vector<unsigned int>& children, const Matrix3& transformation): _name(name), _children(children), _transformation(transformation), _instanceType(InstanceType::Empty), _instanceId(-1) {}
inline ObjectData2D(const std::string& name, const std::vector<std::uint32_t>& children, const Matrix3& transformation): _name(name), _children(children), _transformation(transformation), _instanceType(InstanceType::Empty), _instanceId(-1) {}
/** @brief Destructor */
inline virtual ~ObjectData2D() {}
@ -70,7 +70,7 @@ class ObjectData2D {
inline std::string name() const { return _name; }
/** @brief Child objects */
inline std::vector<unsigned int>& children() { return _children; }
inline std::vector<std::uint32_t>& children() { return _children; }
/** @brief Transformation (relative to parent) */
inline Matrix3 transformation() const { return _transformation; }
@ -89,14 +89,14 @@ class ObjectData2D {
* @return ID of given camera / light / mesh etc., specified by
* instanceType()
*/
inline int instanceId() const { return _instanceId; }
inline std::int32_t instanceId() const { return _instanceId; }
private:
std::string _name;
std::vector<unsigned int> _children;
std::vector<std::uint32_t> _children;
Matrix3 _transformation;
InstanceType _instanceType;
int _instanceId;
std::int32_t _instanceId;
};
}}

12
src/Trade/ObjectData3D.h

@ -54,7 +54,7 @@ class ObjectData3D {
* @param instanceType Instance type
* @param instanceId Instance ID
*/
inline ObjectData3D(const std::string& name, const std::vector<unsigned int>& children, const Matrix4& transformation, InstanceType instanceType, unsigned int instanceId): _name(name), _children(children), _transformation(transformation), _instanceType(instanceType), _instanceId(instanceId) {}
inline ObjectData3D(const std::string& name, const std::vector<std::uint32_t>& children, const Matrix4& transformation, InstanceType instanceType, std::uint32_t instanceId): _name(name), _children(children), _transformation(transformation), _instanceType(instanceType), _instanceId(instanceId) {}
/**
* @brief Constructor for empty instance
@ -62,7 +62,7 @@ class ObjectData3D {
* @param children Child objects
* @param transformation Transformation (relative to parent)
*/
inline ObjectData3D(const std::string& name, const std::vector<unsigned int>& children, const Matrix4& transformation): _name(name), _children(children), _transformation(transformation), _instanceType(InstanceType::Empty), _instanceId(-1) {}
inline ObjectData3D(const std::string& name, const std::vector<std::uint32_t>& children, const Matrix4& transformation): _name(name), _children(children), _transformation(transformation), _instanceType(InstanceType::Empty), _instanceId(-1) {}
/** @brief Destructor */
inline virtual ~ObjectData3D() {}
@ -71,7 +71,7 @@ class ObjectData3D {
inline std::string name() const { return _name; }
/** @brief Child objects */
inline std::vector<unsigned int>& children() { return _children; }
inline std::vector<std::uint32_t>& children() { return _children; }
/** @brief Transformation (relative to parent) */
inline Matrix4 transformation() const { return _transformation; }
@ -90,14 +90,14 @@ class ObjectData3D {
* @return ID of given camera / light / mesh etc., specified by
* instanceType()
*/
inline int instanceId() const { return _instanceId; }
inline std::int32_t instanceId() const { return _instanceId; }
private:
std::string _name;
std::vector<unsigned int> _children;
std::vector<std::uint32_t> _children;
Matrix4 _transformation;
InstanceType _instanceType;
int _instanceId;
std::int32_t _instanceId;
};
}}

8
src/Trade/SceneData.h

@ -40,20 +40,20 @@ class MAGNUM_EXPORT SceneData {
* @param children2D Two-dimensional child objects
* @param children3D Three-dimensional child objects
*/
inline SceneData(const std::string& name, const std::vector<unsigned int>& children2D, const std::vector<unsigned int>& children3D): _name(name), _children2D(children2D), _children3D(children3D) {}
inline SceneData(const std::string& name, const std::vector<std::uint32_t>& children2D, const std::vector<std::uint32_t>& children3D): _name(name), _children2D(children2D), _children3D(children3D) {}
/** @brief Scene name */
inline std::string name() const { return _name; }
/** @brief Two-dimensional child objects */
inline const std::vector<unsigned int>& children2D() const { return _children2D; }
inline const std::vector<std::uint32_t>& children2D() const { return _children2D; }
/** @brief Three-dimensional child objects */
inline const std::vector<unsigned int>& children3D() const { return _children3D; }
inline const std::vector<std::uint32_t>& children3D() const { return _children3D; }
private:
std::string _name;
std::vector<unsigned int> _children2D,
std::vector<std::uint32_t> _children2D,
_children3D;
};

Loading…
Cancel
Save