diff --git a/changes.txt b/changes.txt index ee898830..44b62408 100644 --- a/changes.txt +++ b/changes.txt @@ -1,7 +1,7 @@ -------------------------- Changes in 1.9 (not yet released) -- IAttributes interface changed. Most parameters are not passed by const-ref instead of per value. +- IAttributes interface changed. Parameters are now passed by const-ref instead of per value. - Fix c::b project obj folder names. Some static builds had used the shared folders (thx @ gerdb for reporting) - Add ITexture::getSource which can be used to check where the last IVideoDriver::getTexture call found the texture. - Add IMeshTextureLoader interface and replace texture-loading algorithms in most meshloaders. diff --git a/include/IAttributes.h b/include/IAttributes.h index 79d689b4..6ddf571b 100644 --- a/include/IAttributes.h +++ b/include/IAttributes.h @@ -482,10 +482,10 @@ public: */ //! Adds an attribute as rectangle - virtual void addRect(const c8* attributeName, core::rect value) = 0; + virtual void addRect(const c8* attributeName, const core::rect& value) = 0; //! Sets an attribute as rectangle - virtual void setAttribute(const c8* attributeName, core::rect v) = 0; + virtual void setAttribute(const c8* attributeName, const core::rect& v) = 0; //! Gets an attribute as rectangle //! \param attributeName: Name of the attribute to get. @@ -498,7 +498,7 @@ public: virtual core::rect getAttributeAsRect(s32 index) = 0; //! Sets an attribute as rectangle - virtual void setAttribute(s32 index, core::rect v) = 0; + virtual void setAttribute(s32 index, const core::rect& v) = 0; /* @@ -508,10 +508,10 @@ public: */ //! Adds an attribute as dimension2d - virtual void addDimension2d(const c8* attributeName, core::dimension2d value) = 0; + virtual void addDimension2d(const c8* attributeName, const core::dimension2d& value) = 0; //! Sets an attribute as dimension2d - virtual void setAttribute(const c8* attributeName, core::dimension2d v) = 0; + virtual void setAttribute(const c8* attributeName, const core::dimension2d& v) = 0; //! Gets an attribute as dimension2d //! \param attributeName: Name of the attribute to get. @@ -524,7 +524,7 @@ public: virtual core::dimension2d getAttributeAsDimension2d(s32 index) = 0; //! Sets an attribute as dimension2d - virtual void setAttribute(s32 index, core::dimension2d v) = 0; + virtual void setAttribute(s32 index, const core::dimension2d& v) = 0; /* @@ -556,10 +556,10 @@ public: */ //! Adds an attribute as quaternion - virtual void addQuaternion(const c8* attributeName, core::quaternion v) = 0; + virtual void addQuaternion(const c8* attributeName, const core::quaternion& v) = 0; //! Sets an attribute as quaternion - virtual void setAttribute(const c8* attributeName, core::quaternion v) = 0; + virtual void setAttribute(const c8* attributeName, const core::quaternion& v) = 0; //! Gets an attribute as a quaternion //! \param attributeName: Name of the attribute to get. @@ -572,7 +572,7 @@ public: virtual core::quaternion getAttributeAsQuaternion(s32 index) = 0; //! Sets an attribute as quaternion - virtual void setAttribute(s32 index, core::quaternion v) = 0; + virtual void setAttribute(s32 index, const core::quaternion& v) = 0; /* diff --git a/source/Irrlicht/CAttributeImpl.h b/source/Irrlicht/CAttributeImpl.h index 5258ec07..115d0746 100644 --- a/source/Irrlicht/CAttributeImpl.h +++ b/source/Irrlicht/CAttributeImpl.h @@ -242,7 +242,7 @@ public: ValueF.push_back(value.Z); } - CNumbersAttribute(const char* name, core::rect value) : + CNumbersAttribute(const char* name, const core::rect& value) : ValueI(), ValueF(), Count(4), IsFloat(false) { Name = name; @@ -252,7 +252,7 @@ public: ValueI.push_back(value.LowerRightCorner.Y); } - CNumbersAttribute(const char* name, core::rect value) : + CNumbersAttribute(const char* name, const core::rect& value) : ValueI(), ValueF(), Count(4), IsFloat(true) { Name = name; @@ -262,7 +262,7 @@ public: ValueF.push_back(value.LowerRightCorner.Y); } - CNumbersAttribute(const char* name, core::matrix4 value) : + CNumbersAttribute(const char* name, const core::matrix4& value) : ValueI(), ValueF(), Count(16), IsFloat(true) { Name = name; @@ -271,7 +271,7 @@ public: ValueF.push_back(value(r,c)); } - CNumbersAttribute(const char* name, core::quaternion value) : + CNumbersAttribute(const char* name, const core::quaternion& value) : ValueI(), ValueF(), Count(4), IsFloat(true) { Name = name; @@ -318,7 +318,7 @@ public: ValueF.push_back(value.pointC.Z); } - CNumbersAttribute(const char* name, core::vector2df value) : + CNumbersAttribute(const char* name, const core::vector2df& value) : ValueI(), ValueF(), Count(2), IsFloat(true) { Name = name; @@ -326,7 +326,7 @@ public: ValueF.push_back(value.Y); } - CNumbersAttribute(const char* name, core::vector2di value) : + CNumbersAttribute(const char* name, const core::vector2di& value) : ValueI(), ValueF(), Count(2), IsFloat(false) { Name = name; @@ -334,7 +334,7 @@ public: ValueI.push_back(value.Y); } - CNumbersAttribute(const char* name, core::line2di value) : + CNumbersAttribute(const char* name, const core::line2di& value) : ValueI(), ValueF(), Count(4), IsFloat(false) { Name = name; @@ -344,7 +344,7 @@ public: ValueI.push_back(value.end.Y); } - CNumbersAttribute(const char* name, core::line2df value) : + CNumbersAttribute(const char* name, const core::line2df& value) : ValueI(), ValueF(), Count(4), IsFloat(true) { Name = name; @@ -366,7 +366,7 @@ public: ValueF.push_back(value.end.Z); } - CNumbersAttribute(const char* name, core::dimension2du value) : + CNumbersAttribute(const char* name, const core::dimension2du& value) : ValueI(), ValueF(), Count(2), IsFloat(false) { Name = name; @@ -375,7 +375,7 @@ public: } - CNumbersAttribute(const char* name, core::dimension2df value) : + CNumbersAttribute(const char* name, const core::dimension2df& value) : ValueI(), ValueF(), Count(2), IsFloat(true) { Name = name; @@ -832,7 +832,7 @@ public: //} } - virtual void setPosition(core::position2di v) _IRR_OVERRIDE_ + virtual void setPosition(const core::position2di& v) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -903,7 +903,7 @@ public: } } - virtual void setRect(core::rect value) _IRR_OVERRIDE_ + virtual void setRect(const core::rect& value) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -922,7 +922,7 @@ public: } } - virtual void setMatrix(core::matrix4 value) _IRR_OVERRIDE_ + virtual void setMatrix(const core::matrix4& value) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -941,7 +941,7 @@ public: } } - virtual void setQuaternion(core::quaternion value) + virtual void setQuaternion(const core::quaternion& value) { reset(); if (IsFloat) @@ -1031,7 +1031,7 @@ public: } } - virtual void setVector2d(core::vector2df v) _IRR_OVERRIDE_ + virtual void setVector2d(const core::vector2df& v) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -1046,7 +1046,7 @@ public: } } - virtual void setVector2d(core::vector2di v) + virtual void setVector2d(const core::vector2di& v) { reset(); if (IsFloat) @@ -1061,7 +1061,7 @@ public: } } - virtual void setLine2d(core::line2di v) _IRR_OVERRIDE_ + virtual void setLine2d(const core::line2di& v) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -1080,7 +1080,7 @@ public: } } - virtual void setLine2d(core::line2df v) _IRR_OVERRIDE_ + virtual void setLine2d(const core::line2df& v) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -1099,7 +1099,7 @@ public: } } - virtual void setDimension2d(core::dimension2du v) _IRR_OVERRIDE_ + virtual void setDimension2d(const core::dimension2du& v) _IRR_OVERRIDE_ { reset(); if (IsFloat) @@ -1332,7 +1332,7 @@ class CVector2DAttribute : public CNumbersAttribute { public: - CVector2DAttribute(const char* name, core::vector2df value) : CNumbersAttribute(name, value) {} + CVector2DAttribute(const char* name, const core::vector2df& value) : CNumbersAttribute(name, value) {} virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { @@ -1350,7 +1350,7 @@ class CPosition2DAttribute : public CNumbersAttribute { public: - CPosition2DAttribute(const char* name, core::position2di value) : CNumbersAttribute(name, value) {} + CPosition2DAttribute(const char* name, const core::position2di& value) : CNumbersAttribute(name, value) {} virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { @@ -1370,7 +1370,7 @@ class CRectAttribute : public CNumbersAttribute { public: - CRectAttribute(const char* name, core::rect value) : CNumbersAttribute(name, value) { } + CRectAttribute(const char* name, const core::rect& value) : CNumbersAttribute(name, value) { } virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { @@ -1389,7 +1389,7 @@ class CDimension2dAttribute : public CNumbersAttribute { public: - CDimension2dAttribute (const char* name, core::dimension2d value) : CNumbersAttribute(name, value) { } + CDimension2dAttribute (const char* name, const core::dimension2d& value) : CNumbersAttribute(name, value) { } virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { @@ -1407,7 +1407,7 @@ class CMatrixAttribute : public CNumbersAttribute { public: - CMatrixAttribute(const char* name, core::matrix4 value) : CNumbersAttribute(name, value) { } + CMatrixAttribute(const char* name, const core::matrix4& value) : CNumbersAttribute(name, value) { } virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { @@ -1430,7 +1430,7 @@ class CQuaternionAttribute : public CNumbersAttribute { public: - CQuaternionAttribute(const char* name, core::quaternion value) : CNumbersAttribute(name, value) { } + CQuaternionAttribute(const char* name, const core::quaternion& value) : CNumbersAttribute(name, value) { } virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { @@ -1514,7 +1514,7 @@ class CLine2dAttribute : public CNumbersAttribute { public: - CLine2dAttribute(const char* name, core::line2df value) : CNumbersAttribute(name, value) { } + CLine2dAttribute(const char* name, const core::line2df& value) : CNumbersAttribute(name, value) { } virtual E_ATTRIBUTE_TYPE getType() const _IRR_OVERRIDE_ { diff --git a/source/Irrlicht/CAttributes.cpp b/source/Irrlicht/CAttributes.cpp index 3ecf6044..26ded3be 100644 --- a/source/Irrlicht/CAttributes.cpp +++ b/source/Irrlicht/CAttributes.cpp @@ -390,7 +390,7 @@ core::position2di CAttributes::getAttributeAsPosition2d(const c8* attributeName, } //! Sets a attribute as rectangle -void CAttributes::setAttribute(const c8* attributeName, core::rect value) +void CAttributes::setAttribute(const c8* attributeName, const core::rect& value) { IAttribute* att = getAttributeP(attributeName); if (att) @@ -412,7 +412,7 @@ core::rect CAttributes::getAttributeAsRect(const c8* attributeName, const c } //! Sets a attribute as dimension2d -void CAttributes::setAttribute(const c8* attributeName, core::dimension2d value) +void CAttributes::setAttribute(const c8* attributeName, const core::dimension2d& value) { IAttribute* att = getAttributeP(attributeName); if (att) @@ -869,13 +869,13 @@ void CAttributes::addPosition2d(const c8* attributeName, const core::position2di } //! Adds an attribute as rectangle -void CAttributes::addRect(const c8* attributeName, core::rect value) +void CAttributes::addRect(const c8* attributeName, const core::rect& value) { Attributes.push_back(new CRectAttribute(attributeName, value)); } //! Adds an attribute as dimension2d -void CAttributes::addDimension2d(const c8* attributeName, core::dimension2d value) +void CAttributes::addDimension2d(const c8* attributeName, const core::dimension2d& value) { Attributes.push_back(new CDimension2dAttribute(attributeName, value)); } @@ -971,14 +971,14 @@ void CAttributes::setAttribute(s32 index, const core::position2di& v) } //! Sets a attribute as rectangle -void CAttributes::setAttribute(s32 index, core::rect v) +void CAttributes::setAttribute(s32 index, const core::rect& v) { if ((u32)index < Attributes.size()) Attributes[index]->setRect(v); } //! Sets a attribute as dimension2d -void CAttributes::setAttribute(s32 index, core::dimension2d v) +void CAttributes::setAttribute(s32 index, const core::dimension2d& v) { if ((u32)index < Attributes.size()) Attributes[index]->setDimension2d(v); @@ -1054,14 +1054,14 @@ void CAttributes::setAttribute(s32 index, const core::matrix4& v) //! Adds an attribute as quaternion -void CAttributes::addQuaternion(const c8* attributeName, core::quaternion v) +void CAttributes::addQuaternion(const c8* attributeName, const core::quaternion& v) { Attributes.push_back(new CQuaternionAttribute(attributeName, v)); } //! Sets an attribute as quaternion -void CAttributes::setAttribute(const c8* attributeName, core::quaternion v) +void CAttributes::setAttribute(const c8* attributeName, const core::quaternion& v) { IAttribute* att = getAttributeP(attributeName); if (att) @@ -1094,7 +1094,7 @@ core::quaternion CAttributes::getAttributeAsQuaternion(s32 index) } //! Sets an attribute as quaternion -void CAttributes::setAttribute(s32 index, core::quaternion v) +void CAttributes::setAttribute(s32 index, const core::quaternion& v) { if (index >= 0 && index < (s32)Attributes.size() ) Attributes[index]->setQuaternion(v); @@ -1333,7 +1333,7 @@ void CAttributes::setAttribute(s32 index, const core::line3df& v) } -//! Adds an attribute as user pointner +//! Adds an attribute as user pointer void CAttributes::addUserPointer(const c8* attributeName, void* userPointer) { Attributes.push_back(new CUserPointerAttribute(attributeName, userPointer)); diff --git a/source/Irrlicht/CAttributes.h b/source/Irrlicht/CAttributes.h index f231c0f2..87b4d118 100644 --- a/source/Irrlicht/CAttributes.h +++ b/source/Irrlicht/CAttributes.h @@ -447,10 +447,10 @@ public: */ //! Adds an attribute as rectangle - virtual void addRect(const c8* attributeName, core::rect value) _IRR_OVERRIDE_; + virtual void addRect(const c8* attributeName, const core::rect& value) _IRR_OVERRIDE_; //! Sets an attribute as rectangle - virtual void setAttribute(const c8* attributeName, core::rect v) _IRR_OVERRIDE_; + virtual void setAttribute(const c8* attributeName, const core::rect& v) _IRR_OVERRIDE_; //! Gets an attribute as rectangle //! \param attributeName: Name of the attribute to get. @@ -463,7 +463,7 @@ public: virtual core::rect getAttributeAsRect(s32 index) _IRR_OVERRIDE_; //! Sets an attribute as rectangle - virtual void setAttribute(s32 index, core::rect v) _IRR_OVERRIDE_; + virtual void setAttribute(s32 index, const core::rect& v) _IRR_OVERRIDE_; /* @@ -473,10 +473,10 @@ public: */ //! Adds an attribute as dimension2d - virtual void addDimension2d(const c8* attributeName, core::dimension2d value) _IRR_OVERRIDE_; + virtual void addDimension2d(const c8* attributeName, const core::dimension2d& value) _IRR_OVERRIDE_; //! Sets an attribute as dimension2d - virtual void setAttribute(const c8* attributeName, core::dimension2d v) _IRR_OVERRIDE_; + virtual void setAttribute(const c8* attributeName, const core::dimension2d& v) _IRR_OVERRIDE_; //! Gets an attribute as dimension2d //! \param attributeName: Name of the attribute to get. @@ -489,7 +489,7 @@ public: virtual core::dimension2d getAttributeAsDimension2d(s32 index) _IRR_OVERRIDE_; //! Sets an attribute as dimension2d - virtual void setAttribute(s32 index, core::dimension2d v) _IRR_OVERRIDE_; + virtual void setAttribute(s32 index, const core::dimension2d& v) _IRR_OVERRIDE_; /* @@ -523,10 +523,10 @@ public: */ //! Adds an attribute as quaternion - virtual void addQuaternion(const c8* attributeName, core::quaternion v) _IRR_OVERRIDE_; + virtual void addQuaternion(const c8* attributeName, const core::quaternion& v) _IRR_OVERRIDE_; //! Sets an attribute as quaternion - virtual void setAttribute(const c8* attributeName, core::quaternion v) _IRR_OVERRIDE_; + virtual void setAttribute(const c8* attributeName, const core::quaternion& v) _IRR_OVERRIDE_; //! Gets an attribute as a quaternion //! \param attributeName: Name of the attribute to get. @@ -539,7 +539,7 @@ public: virtual core::quaternion getAttributeAsQuaternion(s32 index) _IRR_OVERRIDE_; //! Sets an attribute as quaternion - virtual void setAttribute(s32 index, core::quaternion v) _IRR_OVERRIDE_; + virtual void setAttribute(s32 index, const core::quaternion& v) _IRR_OVERRIDE_; /* @@ -601,7 +601,7 @@ public: //! Adds an attribute as 3d triangle virtual void addTriangle3d(const c8* attributeName, const core::triangle3df& v) _IRR_OVERRIDE_; - //! Sets an attribute as 3d trianle + //! Sets an attribute as 3d triangle virtual void setAttribute(const c8* attributeName, const core::triangle3df& v) _IRR_OVERRIDE_; //! Gets an attribute as a 3d triangle @@ -702,7 +702,7 @@ public: */ - //! Adds an attribute as user pointner + //! Adds an attribute as user pointer virtual void addUserPointer(const c8* attributeName, void* userPointer) _IRR_OVERRIDE_; //! Sets an attribute as user pointer diff --git a/source/Irrlicht/IAttribute.h b/source/Irrlicht/IAttribute.h index 1d35db37..4f917777 100644 --- a/source/Irrlicht/IAttribute.h +++ b/source/Irrlicht/IAttribute.h @@ -76,18 +76,18 @@ public: virtual void setBool(bool boolValue) {}; virtual void setBinary(void* data, s32 maxLenght) {}; virtual void setVector(const core::vector3df& v) {}; - virtual void setPosition(core::position2di v) {}; - virtual void setRect(core::rect v) {}; - virtual void setQuaternion(core::quaternion v) {}; - virtual void setMatrix(core::matrix4 v) {}; + virtual void setPosition(const core::position2di& v) {}; + virtual void setRect(const core::rect& v) {}; + virtual void setQuaternion(const core::quaternion& v) {}; + virtual void setMatrix(const core::matrix4& v) {}; virtual void setTriangle(const core::triangle3df& v) {}; - virtual void setVector2d(core::vector2df v) {}; - virtual void setVector2d(core::vector2di v) {}; - virtual void setLine2d(core::line2df v) {}; - virtual void setLine2d(core::line2di v) {}; + virtual void setVector2d(const core::vector2df& v) {}; + virtual void setVector2d(const core::vector2di& v) {}; + virtual void setLine2d(const core::line2df& v) {}; + virtual void setLine2d(const core::line2di& v) {}; virtual void setLine3d(const core::line3df& v) {}; virtual void setLine3d(const core::line3di& v) {}; - virtual void setDimension2d(core::dimension2du v) {}; + virtual void setDimension2d(const core::dimension2du& v) {}; virtual void setBBox(const core::aabbox3d& v) {}; virtual void setPlane(const core::plane3df& v) {}; virtual void setUserPointer(void* v) {};