Add SkSTArray, hide stack storage cons in SkTArray, unify SkTArray init logic
Review URL: http://codereview.appspot.com/5127044/
git-svn-id: http://skia.googlecode.com/svn/trunk@2342 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/src/GrInOrderDrawBuffer.h b/gpu/src/GrInOrderDrawBuffer.h
index f0b5c9e..122be53 100644
--- a/gpu/src/GrInOrderDrawBuffer.h
+++ b/gpu/src/GrInOrderDrawBuffer.h
@@ -161,6 +161,15 @@
GrVertexBufferAllocPool& fVertexPool;
GrIndexBufferAllocPool& fIndexPool;
+
+ enum {
+ kDrawPreallocCnt = 8,
+ kStatePreallocCnt = 8,
+ kClipPreallocCnt = 8,
+ kClearPreallocCnt = 4,
+ kGeoPoolStatePreAllocCnt = 4,
+ };
+
struct GeometryPoolState {
const GrVertexBuffer* fPoolVertexBuffer;
int fPoolStartVertex;
@@ -172,23 +181,12 @@
size_t fUsedPoolVertexBytes;
size_t fUsedPoolIndexBytes;
};
- SkTArray<GeometryPoolState> fGeoPoolStateStack;
-
-
- enum {
- kDrawPreallocCnt = 8,
- kStatePreallocCnt = 8,
- kClipPreallocCnt = 8,
- kClearPreallocCnt = 4,
- kGeoPoolStatePreAllocCnt = 4,
- };
+ SkSTArray<kGeoPoolStatePreAllocCnt, GeometryPoolState> fGeoPoolStateStack;
SkAlignedSTStorage<kDrawPreallocCnt, Draw> fDrawStorage;
SkAlignedSTStorage<kStatePreallocCnt, SavedDrawState> fStateStorage;
SkAlignedSTStorage<kClipPreallocCnt, GrClip> fClipStorage;
SkAlignedSTStorage<kClearPreallocCnt, Clear> fClearStorage;
- SkAlignedSTStorage<kGeoPoolStatePreAllocCnt,
- GeometryPoolState> fGeoStackStorage;
typedef GrDrawTarget INHERITED;
};