Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef CUSTOM_BUFFER_ITERATOR_H
00013 #define CUSTOM_BUFFER_ITERATOR_H
00014
00020 #include "RenderMesh.h"
00021
00022 namespace nvidia
00023 {
00024 namespace apex
00025 {
00026
00027 PX_PUSH_PACK_DEFAULT
00028
00032 class CustomBufferIterator
00033 {
00034 public:
00040 virtual void* getVertex(uint32_t triangleIndex, uint32_t vertexIndex) const = 0;
00041
00047 virtual int32_t getAttributeIndex(const char* attributeName) const = 0;
00048
00057 virtual void* getVertexAttribute(uint32_t triangleIndex, uint32_t vertexIndex, const char* attributeName, RenderDataFormat::Enum& outFormat) const = 0;
00058
00070 virtual void* getVertexAttribute(uint32_t triangleIndex, uint32_t vertexIndex, uint32_t attributeIndex, RenderDataFormat::Enum& outFormat, const char*& outName) const = 0;
00071
00072 protected:
00073 CustomBufferIterator() {}
00074 virtual ~CustomBufferIterator() {}
00075 };
00076
00077 PX_POP_PACK
00078
00079 }
00080 }
00081
00082 #endif // CUSTOM_BUFFER_ITERATOR_H