APEX Framework: CustomBufferIterator.h Source File

NVIDIA APEX

CustomBufferIterator.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2008-2017, NVIDIA CORPORATION.  All rights reserved.
00003  *
00004  * NVIDIA CORPORATION and its licensors retain all intellectual property
00005  * and proprietary rights in and to this software, related documentation
00006  * and any modifications thereto.  Any use, reproduction, disclosure or
00007  * distribution of this software and related documentation without an express
00008  * license agreement from NVIDIA CORPORATION is strictly prohibited.
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 } // end namespace nvidia::apex
00081 
00082 #endif // CUSTOM_BUFFER_ITERATOR_H

Generated on Fri Dec 15 2017 13:58:35
Copyright © 2012-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved.