Irrlicht 3D Engine
Loading...
Searching...
No Matches
IIndexBuffer.h
Go to the documentation of this file.
1// Copyright (C) 2008-2012 Nikolaus Gebhardt
2// This file is part of the "Irrlicht Engine".
3// For conditions of distribution and use, see copyright notice in irrlicht.h
4
5#ifndef __I_INDEX_BUFFER_H_INCLUDED__
6#define __I_INDEX_BUFFER_H_INCLUDED__
7
8#include "IReferenceCounted.h"
9#include "irrArray.h"
10
11#include "SVertexIndex.h"
12
13namespace irr
14{
15
16namespace video
17{
18
19}
20
21namespace scene
22{
23
24 class IIndexBuffer : public virtual IReferenceCounted
25 {
26 public:
27
28 virtual void* getData() =0;
29
30 virtual video::E_INDEX_TYPE getType() const =0;
31 virtual void setType(video::E_INDEX_TYPE IndexType) =0;
32
33 virtual u32 stride() const =0;
34
35 virtual u32 size() const =0;
36 virtual void push_back (const u32 &element) =0;
37 virtual u32 operator [](u32 index) const =0;
38 virtual u32 getLast() =0;
39 virtual void setValue(u32 index, u32 value) =0;
40 virtual void set_used(u32 usedNow) =0;
41 virtual void reallocate(u32 new_size) =0;
42 virtual u32 allocated_size() const=0;
43
44 virtual void* pointer() =0;
45
48
50 virtual void setHardwareMappingHint( E_HARDWARE_MAPPING NewMappingHint ) =0;
51
53 virtual void setDirty() = 0;
54
56
57 virtual u32 getChangedID() const = 0;
58 };
59
60
61} // end namespace scene
62} // end namespace irr
63
64#endif
65
IReferenceCounted()
Constructor.
virtual u32 size() const =0
virtual u32 getLast()=0
virtual void setDirty()=0
flags the meshbuffer as changed, reloads hardware buffers
virtual void * pointer()=0
virtual E_HARDWARE_MAPPING getHardwareMappingHint() const =0
get the current hardware mapping hint
virtual void * getData()=0
virtual void push_back(const u32 &element)=0
virtual void reallocate(u32 new_size)=0
virtual u32 getChangedID() const =0
Get the currently used ID for identification of changes.
virtual void setHardwareMappingHint(E_HARDWARE_MAPPING NewMappingHint)=0
set the hardware mapping hint, for driver
virtual video::E_INDEX_TYPE getType() const =0
virtual void setType(video::E_INDEX_TYPE IndexType)=0
virtual void set_used(u32 usedNow)=0
virtual u32 allocated_size() const =0
virtual void setValue(u32 index, u32 value)=0
virtual u32 operator[](u32 index) const =0
virtual u32 stride() const =0
All scene management can be found in this namespace: Mesh loading, special scene nodes like octrees a...
The video namespace contains classes for accessing the video driver. All 2d and 3d rendering is done ...
Everything in the Irrlicht Engine can be found in this namespace.
Definition aabbox3d.h:13
unsigned int u32
32 bit unsigned variable.
Definition irrTypes.h:58