1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00
XFXFramework/include/Graphics/IndexBuffer.h
Tom Lint 7e74ae8683 Added System::Type
Added TypeInfo for all relevant types
Added comments
Updated DependencyProperty to work with System::Type
Fixed casing on PropertyMetadata
2013-07-12 21:30:13 +02:00

52 lines
1.5 KiB
C++

/*****************************************************************************
* IndexBuffer.h *
* *
* XFX::Graphics::IndexBuffer class definition file *
* Copyright (c) XFX Team. All Rights Reserved *
*****************************************************************************/
#ifndef _XFX_GRAPHICS_INDEXBUFFER_
#define _XFX_GRAPHICS_INDEXBUFFER_
#include "Enums.h"
#include "GraphicsResource.h"
namespace XFX
{
namespace Graphics
{
class GraphicsDevice;
/**
* Describes the rendering order of the vertices in a vertex buffer.
*/
class IndexBuffer : public GraphicsResource
{
private:
BufferUsage_t _usage;
int _indexCount;
IndexElementSize_t _elementSize;
protected:
void Dispose(bool disposing);
public:
IndexBuffer();
IndexBuffer(GraphicsDevice * const graphicsDevice, IndexElementSize_t indexElementSize, int indexCount, BufferUsage_t usage);
template <typename T>
void CopyData(int offsetInBytes, T data[], int startIndex, int elementCount, uint options, bool isSetting);
template <typename T>
void GetData(int offsetInBytes, T data[], int startIndex, int elementCount);
template <typename T>
void GetData(T data[], int startIndex, int elementCount);
static const Type& GetType();
template <typename T>
void SetData(int offsetInBytes, T data[], int startIndex, int elementCount);
template <typename T>
void SetData(T data[], int startIndex, int elementCount);
};
}
}
#endif //_XFX_GRAPHICS_INDEXBUFFER_