Add IVertexBuffer::setValue. Add comments.

Same as in IIndexBuffer. Needed as replacement for non const operator[] which can't be done for this interface (as type is dynamic).

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6344 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
cutealien
2022-04-20 10:38:26 +00:00
parent dd36699ad2
commit 57bcc52ca1
3 changed files with 34 additions and 7 deletions

View File

@ -21,6 +21,9 @@ namespace scene
//! Pointer to first element of vertex data
virtual void* getData() =0;
//! Same as getData() and real type returned is not always video::S3DVertex* but depends on type
virtual video::S3DVertex* pointer() =0;
virtual video::E_VERTEX_TYPE getType() const =0;
virtual void setType(video::E_VERTEX_TYPE vertexType) =0;
@ -30,17 +33,23 @@ namespace scene
//! Number of elements
virtual u32 size() const =0;
//! Add vertex to end. Note that depending on vertex type this will be one of the types derived from video::S3DVertex.
//! Add vertex to end.
//* Note that depending on vertex type reference has to be one of the types derived from video::S3DVertex. */
virtual void push_back(const video::S3DVertex &element) =0;
//! Set value at index.
/** Depending on vertex type reference has to be one of the types derived from video::S3DVertex.
Buffer must be already large enough. This is basically the non const version of operator [] */
virtual void setValue(u32 index, const video::S3DVertex &value) =0;
// Note that the reference can also be to one of the derived types
virtual video::S3DVertex& operator [](const u32 index) const =0;
virtual video::S3DVertex& getLast() =0;
virtual void set_used(u32 usedNow) =0;
virtual void reallocate(u32 new_size, bool canShrink=true) =0;
virtual u32 allocated_size() const =0;
//! Same as getData() - not sure why we got 2, should probably deprecate (and we don't always have video::S3DVertex*, so just confusing)
virtual video::S3DVertex* pointer() =0;
//! get the current hardware mapping hint
virtual E_HARDWARE_MAPPING getHardwareMappingHint() const =0;