OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 #ifndef GrBufferObj_DEFINED | 9 #ifndef GrBufferObj_DEFINED |
10 #define GrBufferObj_DEFINED | 10 #define GrBufferObj_DEFINED |
(...skipping 16 matching lines...) Expand all Loading... |
27 } | 27 } |
28 virtual ~GrBufferObj() { | 28 virtual ~GrBufferObj() { |
29 delete[] fDataPtr; | 29 delete[] fDataPtr; |
30 } | 30 } |
31 | 31 |
32 void access() { | 32 void access() { |
33 // cannot access the buffer if it is currently mapped | 33 // cannot access the buffer if it is currently mapped |
34 GrAlwaysAssert(!fMapped); | 34 GrAlwaysAssert(!fMapped); |
35 } | 35 } |
36 | 36 |
37 void setMapped(GrGLintptr offset, GrGLsizeiptr length) { | 37 void setMapped() { fMapped = true; } |
38 fMapped = true; | |
39 fMappedOffset = offset; | |
40 fMappedLength = length; | |
41 } | |
42 void resetMapped() { fMapped = false; } | 38 void resetMapped() { fMapped = false; } |
43 bool getMapped() const { return fMapped; } | 39 bool getMapped() const { return fMapped; } |
44 GrGLsizei getMappedOffset() const { return fMappedOffset; } | |
45 GrGLsizei getMappedLength() const { return fMappedLength; } | |
46 | 40 |
47 void setBound() { fBound = true; } | 41 void setBound() { fBound = true; } |
48 void resetBound() { fBound = false; } | 42 void resetBound() { fBound = false; } |
49 bool getBound() const { return fBound; } | 43 bool getBound() const { return fBound; } |
50 | 44 |
51 void allocate(GrGLsizeiptr size, const GrGLchar *dataPtr); | 45 void allocate(GrGLsizeiptr size, const GrGLchar *dataPtr); |
52 GrGLsizeiptr getSize() const { return fSize; } | 46 GrGLsizeiptr getSize() const { return fSize; } |
53 GrGLchar *getDataPtr() { return fDataPtr; } | 47 GrGLchar *getDataPtr() { return fDataPtr; } |
54 | 48 |
55 void setUsage(GrGLint usage) { fUsage = usage; } | 49 void setUsage(GrGLint usage) { fUsage = usage; } |
56 GrGLint getUsage() const { return fUsage; } | 50 GrGLint getUsage() const { return fUsage; } |
57 | 51 |
58 virtual void deleteAction() SK_OVERRIDE; | 52 virtual void deleteAction() SK_OVERRIDE; |
59 | 53 |
60 protected: | 54 protected: |
61 private: | 55 private: |
62 | 56 |
63 GrGLchar* fDataPtr; | 57 GrGLchar* fDataPtr; |
64 bool fMapped; // is the buffer object mapped via "glMapBuffer[
Range]"? | 58 bool fMapped; // is the buffer object mapped via "glMapBuffer"
? |
65 GrGLintptr fMappedOffset; // the offset of the buffer range that is mapped | |
66 GrGLsizeiptr fMappedLength; // the size of the buffer range that is mapped | |
67 bool fBound; // is the buffer object bound via "glBindBuffer"
? | 59 bool fBound; // is the buffer object bound via "glBindBuffer"
? |
68 GrGLsizeiptr fSize; // size in bytes | 60 GrGLsizeiptr fSize; // size in bytes |
69 GrGLint fUsage; // one of: GL_STREAM_DRAW, | 61 GrGLint fUsage; // one of: GL_STREAM_DRAW, |
70 // GL_STATIC_DRAW, | 62 // GL_STATIC_DRAW, |
71 // GL_DYNAMIC_DRAW | 63 // GL_DYNAMIC_DRAW |
72 | 64 |
73 typedef GrFakeRefObj INHERITED; | 65 typedef GrFakeRefObj INHERITED; |
74 }; | 66 }; |
75 | 67 |
76 #endif // GrBufferObj_DEFINED | 68 #endif // GrBufferObj_DEFINED |
OLD | NEW |