aboutsummaryrefslogtreecommitdiffstats
path: root/src/native/d3d/D3dVertexBuffer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/native/d3d/D3dVertexBuffer.hpp')
-rw-r--r--src/native/d3d/D3dVertexBuffer.hpp153
1 files changed, 0 insertions, 153 deletions
diff --git a/src/native/d3d/D3dVertexBuffer.hpp b/src/native/d3d/D3dVertexBuffer.hpp
deleted file mode 100644
index 01ad8d6..0000000
--- a/src/native/d3d/D3dVertexBuffer.hpp
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * $RCSfile$
- *
- * Copyright 2000-2008 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- *
- * $Revision$
- * $Date$
- * $State$
- */
-
-#if !defined(D3DVERTEXBUFFER_H)
-#define D3DVERTEXBUFFER_H
-
-#include "StdAfx.h"
-
-class D3dCtx;
-
-class D3dVertexBuffer;
-
-typedef D3dVertexBuffer* LPD3DVERTEXBUFFER;
-typedef vector<LPD3DVERTEXBUFFER> D3dVertexBufferVector;
-
-//ISSUE 135 iterator for D3dVertexBuffer
-typedef vector<LPD3DVERTEXBUFFER>::iterator ITER_LPD3DVERTEXBUFFER;
-
-class D3dVertexBuffer {
-public:
-
- // Actual buffer memory to hold all the vertices
- LPDIRECT3DVERTEXBUFFER9 buffer;
-
- // Indexed buffer for rendering IndexedGeometry
- LPDIRECT3DINDEXBUFFER9 indexBuffer;
-
- // D3D type of this Vertex Buffer
- D3DPRIMITIVETYPE primitiveType;
-
- // Length of following numVertices array allocate
- UINT numVerticesLen;
-
- // Store the number of vertices for each strip
- USHORT *numVertices;
-
- // It true when QuadArray is used or
- // indexGeometry is used.
- BOOL isIndexPrimitive;
-
- // If D3DUSAGE_POINTS flag is used to
- // create this VertexBuffer
- BOOL isPointFlagUsed;
-
- // Flexible vertex format for this VB
- DWORD vertexFormat;
-
- // Stride of each vertex in the buffer
- // compute from above vertexFormat
- UINT stride;
-
- UINT numCoorTexSupported;
-
-
-
-
- // Number of strips used for StripGeometryArray
- // For each strip i the number of vertex is
- // numVertices[i]
- UINT stripLen;
-
- // Point to next overflow VB when size > VB limit
- LPD3DVERTEXBUFFER nextVB;
-
- // content that this buffer belongs, only the first node set this one.
- D3dCtx *ctx;
-
- // vcount is the number of vertex that this buffer
- // can hold. vcount*stride is always equal to
- // current VB size
- UINT vcount;
-
- // indexCount is the number of index that this buffer
- // can hold. indexCount*indexSize is always equal to
- // current index VB size.
- UINT indexCount;
-
- // Vertex count of all VBs link by nextVB,
- // only the first node need to remember this info.
- // The other overflow buffer always set it to zero.
- DWORD totalVertexCount;
-
- // Same as above, except for indexBuffer
- DWORD totalIndexCount;
-
- // This is a list of VB remember by D3dCtx
- // so that it can release() all surface when canvas resize
- // Only the header D3dVertexBuffer contains non-null entry
- LPD3DVERTEXBUFFER next;
- LPD3DVERTEXBUFFER previous;
-
- // Pointer back to the GeometryArrayRetained pVertexBuffers
- // This is used to remove itself from pVertexBuffers table
- // when ctx destroy
- D3dVertexBufferVector* vbVector;
-
- // Last texture coordinate position =
- // (i) textureCoordSetMap[pass] if executeVA()
- // (ii) texCoordSetMapOffset[pass] if execute() or buildGA()
- // (iii) TEX_EYE_LINEAR/TEX_SPHERE_MAP/TEX_OBJ_LINEAR/TEX_REFLECT_MAP
- // if automatic texture generation is used
- // This is used for VertexBuffer to know whether Texture
- // coordinate need to copy or not in case texture unit swap
- // or texture unit change from automatic texture generation
- // to use coordinate index specifies by user.
- int texCoordPosition[D3DDP_MAXTEXCOORD];
-
- // Max vertex limit allow for this primitive type
- // This is used for display list optimization without
- // recompute it again.
- int maxVertexLimit;
-
- D3dVertexBuffer();
- ~D3dVertexBuffer();
-
- VOID release();
- VOID render(D3dCtx *d3dCtx);
- BOOL initializeNumVertices(int len);
- VOID addStride(int len);
- VOID addStrides(jint stripLen, jint *strips);
- VOID appendStrides(jint stripLen, USHORT *strips);
-};
-
-
-#endif