| Index: src/core/SkTileGrid.h
|
| diff --git a/src/core/SkTileGrid.h b/src/core/SkTileGrid.h
|
| index ea473fb6d0cf85aba67cf0567027a6a8ee5fc82d..163efa5571c813f5a4c10c3b897dfaa8daa4cb34 100644
|
| --- a/src/core/SkTileGrid.h
|
| +++ b/src/core/SkTileGrid.h
|
| @@ -33,12 +33,7 @@ public:
|
| kStackAllocationTileCount = 1024
|
| };
|
|
|
| - typedef void* (*SkTileGridNextDatumFunctionPtr)(
|
| - const SkTDArray<void*>** tileData,
|
| - SkAutoSTArray<kStackAllocationTileCount, int>& tileIndices);
|
| -
|
| - SkTileGrid(int xTileCount, int yTileCount, const SkTileGridFactory::TileGridInfo& info,
|
| - SkTileGridNextDatumFunctionPtr nextDatumFunction);
|
| + SkTileGrid(int xTileCount, int yTileCount, const SkTileGridFactory::TileGridInfo& info);
|
|
|
| virtual ~SkTileGrid();
|
|
|
| @@ -85,62 +80,8 @@ private:
|
| SkTDArray<void*>* fTileData;
|
| int fInsertionCount;
|
| SkIRect fGridBounds;
|
| - SkTileGridNextDatumFunctionPtr fNextDatumFunction;
|
|
|
| typedef SkBBoxHierarchy INHERITED;
|
| };
|
|
|
| -/**
|
| - * Generic implementation for SkTileGridNextDatumFunctionPtr. user code may instantiate
|
| - * this template to get a valid SkTileGridNextDatumFunction implementation
|
| - *
|
| - * Returns the next element of tileData[i][tileIndices[i]] for all i and advances
|
| - * tileIndices[] past them. The order in which data are returned by successive
|
| - * calls to this method must reflect the order in which the were originally
|
| - * recorded into the tile grid.
|
| - *
|
| - * \param tileData array of pointers to arrays of tile data
|
| - * \param tileIndices per-tile data indices, indices are incremented for tiles that contain
|
| - * the next datum.
|
| - * \tparam T a type to which it is safe to cast a datum and that has an operator <
|
| - * such that 'a < b' is true if 'a' was inserted into the tile grid before 'b'.
|
| - */
|
| -template <typename T>
|
| -void* SkTileGridNextDatum(const SkTDArray<void*>** tileData,
|
| - SkAutoSTArray<SkTileGrid::kStackAllocationTileCount, int>& tileIndices) {
|
| - T* minVal = NULL;
|
| - int tileCount = tileIndices.count();
|
| - int minIndex = tileCount;
|
| - int maxIndex = 0;
|
| - // Find the next Datum; track where it's found so we reduce the size of the second loop.
|
| - for (int tile = 0; tile < tileCount; ++tile) {
|
| - int pos = tileIndices[tile];
|
| - if (pos != SkTileGrid::kTileFinished) {
|
| - T* candidate = (T*)(*tileData[tile])[pos];
|
| - if (NULL == minVal || (*candidate) < (*minVal)) {
|
| - minVal = candidate;
|
| - minIndex = tile;
|
| - maxIndex = tile;
|
| - } else if (!((*minVal) < (*candidate))) {
|
| - // We don't require operator==; if !(candidate<minVal) && !(minVal<candidate),
|
| - // candidate==minVal and we have to add this tile to the range searched.
|
| - maxIndex = tile;
|
| - }
|
| - }
|
| - }
|
| - // Increment indices past the next datum
|
| - if (minVal != NULL) {
|
| - for (int tile = minIndex; tile <= maxIndex; ++tile) {
|
| - int pos = tileIndices[tile];
|
| - if (pos != SkTileGrid::kTileFinished && (*tileData[tile])[pos] == minVal) {
|
| - if (++(tileIndices[tile]) >= tileData[tile]->count()) {
|
| - tileIndices[tile] = SkTileGrid::kTileFinished;
|
| - }
|
| - }
|
| - }
|
| - return minVal;
|
| - }
|
| - return NULL;
|
| -}
|
| -
|
| #endif
|
|
|