The IIndexBuffer property interface. More...

#include "murl_graph_i_index_buffer.h"

Inheritance diagram for Murl::Graph::IIndexBuffer:

Public Member Functions

virtual Bool SetIndexBufferAccessMode (IEnums::BufferAccessMode mode)=0
 Set the buffer access mode. More...
 
virtual IEnums::BufferAccessMode GetIndexBufferAccessMode () const =0
 Get the buffer access mode. More...
 
virtual Bool SetMaxNumberOfIndices (UInt32 maxNumberOfIndices, Bool preserveContents)=0
 Set the maximum number of indices the index buffer can hold. More...
 
virtual UInt32 GetMaxNumberOfIndices () const =0
 Get the maximum number of indices the index buffer can hold. More...
 
virtual Bool SetIndexType (IEnums::IndexType type)=0
 Set the data type of the indices stored in the buffer. More...
 
virtual IEnums::IndexType GetIndexType () const =0
 Get the data type of the indices stored in the buffer. More...
 
virtual UInt32 GetIndexByteSize () const =0
 Get the number of bytes of a single index element stored. More...
 
virtual void * GetIndexData ()=0
 Retrieve a mutable pointer to the index data stored in the buffer. More...
 
virtual const void * GetIndexData () const =0
 Retrieve a constant pointer to the index data stored in the buffer. More...
 
virtual Bool SetNumberOfIndices (UInt32 numberOfIndices)=0
 Set the actual number of indices currently used. More...
 
virtual Bool SetIndicesModified ()=0
 Mark the whole index buffer as modified. More...
 
virtual Bool SetIndicesModified (UInt32 firstIndex, UInt32 numberOfIndices)=0
 Mark a portion of the index buffer as modified. More...
 

Detailed Description

The IIndexBuffer property interface.

This interface provides properties common to a class representing an array of individual indices. Typically this is used in conjunction with a Graph::IVertexBuffer to represent an indexed mesh geometry, but there is no restriction to do so.

Member Function Documentation

◆ SetIndexBufferAccessMode()

virtual Bool Murl::Graph::IIndexBuffer::SetIndexBufferAccessMode ( IEnums::BufferAccessMode  mode)
pure virtual

Set the buffer access mode.

Parameters
modeThe access mode.
Returns
true if successful.

◆ GetIndexBufferAccessMode()

virtual IEnums::BufferAccessMode Murl::Graph::IIndexBuffer::GetIndexBufferAccessMode ( ) const
pure virtual

Get the buffer access mode.

Returns
The access mode.

◆ SetMaxNumberOfIndices()

virtual Bool Murl::Graph::IIndexBuffer::SetMaxNumberOfIndices ( UInt32  maxNumberOfIndices,
Bool  preserveContents 
)
pure virtual

Set the maximum number of indices the index buffer can hold.

Parameters
maxNumberOfIndicesThe maximum capacity.
preserveContentsIf true, existing contents will be copied; but existing indices beyond the new capacity are discarded.
Returns
true if successful.

◆ GetMaxNumberOfIndices()

virtual UInt32 Murl::Graph::IIndexBuffer::GetMaxNumberOfIndices ( ) const
pure virtual

Get the maximum number of indices the index buffer can hold.

Returns
The maximum capacity.

◆ SetIndexType()

virtual Bool Murl::Graph::IIndexBuffer::SetIndexType ( IEnums::IndexType  type)
pure virtual

Set the data type of the indices stored in the buffer.

Parameters
typeOne of the IEnums::IndexType members.
Returns
true if successful.

◆ GetIndexType()

virtual IEnums::IndexType Murl::Graph::IIndexBuffer::GetIndexType ( ) const
pure virtual

Get the data type of the indices stored in the buffer.

Returns
One of the IEnums::IndexType members.

◆ GetIndexByteSize()

virtual UInt32 Murl::Graph::IIndexBuffer::GetIndexByteSize ( ) const
pure virtual

Get the number of bytes of a single index element stored.

Returns
The number of bytes per index element.

◆ GetIndexData() [1/2]

virtual void* Murl::Graph::IIndexBuffer::GetIndexData ( )
pure virtual

Retrieve a mutable pointer to the index data stored in the buffer.

Returns
A mutable pointer to the data.

◆ GetIndexData() [2/2]

virtual const void* Murl::Graph::IIndexBuffer::GetIndexData ( ) const
pure virtual

Retrieve a constant pointer to the index data stored in the buffer.

Returns
A constant pointer to the data.

◆ SetNumberOfIndices()

virtual Bool Murl::Graph::IIndexBuffer::SetNumberOfIndices ( UInt32  numberOfIndices)
pure virtual

Set the actual number of indices currently used.

Parameters
numberOfIndicesThe current number of indices, in the range from 0 to GetMaxNumberOfIndices().
Returns
true if successful.

◆ SetIndicesModified() [1/2]

virtual Bool Murl::Graph::IIndexBuffer::SetIndicesModified ( )
pure virtual

Mark the whole index buffer as modified.

Returns
true if successful.

◆ SetIndicesModified() [2/2]

virtual Bool Murl::Graph::IIndexBuffer::SetIndicesModified ( UInt32  firstIndex,
UInt32  numberOfIndices 
)
pure virtual

Mark a portion of the index buffer as modified.

Parameters
firstIndexThe zero-based index of the first modified index value.
numberOfIndicesThe number of modified indices.
Returns
true if successful.

The documentation for this interface was generated from the following file:
  • murl_graph_i_index_buffer.h


Copyright © 2011-2024 Spraylight GmbH.