emulator Opengl - number of supported vertex attributes

make the number of suppoted vertex attributes (by the codec)
common across the encoder and the decoder.

Change-Id: I699ef62821566cec0764982872adb92ebb8861e9
This commit is contained in:
Jacky Romano
2011-04-13 10:03:53 +03:00
committed by David 'Digit' Turner
parent e72ec4bfbd
commit 68367ae969
4 changed files with 22 additions and 9 deletions

View File

@@ -19,6 +19,7 @@
#include <assert.h>
#include <string.h>
#include "FixedBuffer.h"
#include "codec_defs.h"
class GLDecoderContextData {
public:
@@ -40,18 +41,29 @@ public:
LAST_LOCATION = 14
} PointerDataLocation;
void storePointerData(PointerDataLocation loc, void *data, size_t len) {
assert(loc < LAST_LOCATION);
GLDecoderContextData(int nLocations = CODEC_MAX_VERTEX_ATTRIBUTES) :
m_nLocations(nLocations)
{
m_pointerData = new FixedBuffer(m_nLocations);
}
~GLDecoderContextData() {
delete m_pointerData;
}
void storePointerData(PointerDataLocation loc, void *data, size_t len) {
assert(loc < m_nLocations);
m_pointerData[loc].alloc(len);
memcpy(m_pointerData[loc].ptr(), data, len);
}
void *pointerData(PointerDataLocation loc) {
assert(loc < LAST_LOCATION);
assert(loc < m_nLocations);
return m_pointerData[loc].ptr();
}
private:
FixedBuffer m_pointerData[LAST_LOCATION];
FixedBuffer *m_pointerData;
int m_nLocations;
};
#endif