Add GrSTAllocator subclass, hide cons in GrTAllocator that takes ptr

Review URL: http://codereview.appspot.com/5147045/


git-svn-id: http://skia.googlecode.com/svn/trunk@2355 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/src/GrInOrderDrawBuffer.h b/gpu/src/GrInOrderDrawBuffer.h
index 122be53..3d1ec8c 100644
--- a/gpu/src/GrInOrderDrawBuffer.h
+++ b/gpu/src/GrInOrderDrawBuffer.h
@@ -144,13 +144,22 @@
 
     void pushState();
     void pushClip();
+    
+    enum {
+        kDrawPreallocCnt         = 8,
+        kStatePreallocCnt        = 8,
+        kClipPreallocCnt         = 8,
+        kClearPreallocCnt        = 4,
+        kGeoPoolStatePreAllocCnt = 4,
+    };
 
     const GrGpu*                    fGpu;
-    GrTAllocator<Draw>              fDraws;
-    GrTAllocator<SavedDrawState>    fStates;
-    GrTAllocator<Clear>             fClears;
 
-    GrTAllocator<GrClip>            fClips;
+    GrSTAllocator<kDrawPreallocCnt, Draw>               fDraws;
+    GrSTAllocator<kStatePreallocCnt, SavedDrawState>    fStates;
+    GrSTAllocator<kClearPreallocCnt, Clear>             fClears;
+    GrSTAllocator<kClipPreallocCnt, GrClip>             fClips;
+    
     bool                            fClipSet;
 
     GrVertexLayout                  fLastRectVertexLayout;
@@ -162,14 +171,6 @@
 
     GrIndexBufferAllocPool&         fIndexPool;
 
-    enum {
-        kDrawPreallocCnt         = 8,
-        kStatePreallocCnt        = 8,
-        kClipPreallocCnt         = 8,
-        kClearPreallocCnt        = 4,
-        kGeoPoolStatePreAllocCnt = 4,
-    };
-
     struct GeometryPoolState {
         const GrVertexBuffer*           fPoolVertexBuffer;
         int                             fPoolStartVertex;
@@ -183,11 +184,6 @@
     };
     SkSTArray<kGeoPoolStatePreAllocCnt, GeometryPoolState> fGeoPoolStateStack;
 
-    SkAlignedSTStorage<kDrawPreallocCnt, Draw>              fDrawStorage;
-    SkAlignedSTStorage<kStatePreallocCnt, SavedDrawState>   fStateStorage;
-    SkAlignedSTStorage<kClipPreallocCnt, GrClip>            fClipStorage;
-    SkAlignedSTStorage<kClearPreallocCnt, Clear>            fClearStorage;
-
     typedef GrDrawTarget INHERITED;
 };