+#ifdef SK_DEVELOPER
+void GrLayerCache::writeLayersToDisk(const SkString& dirName) {
+
+ if (fAtlas) {
+ GrTexture* atlasTexture = fAtlas->getTexture();
+ if (NULL != atlasTexture) {
+ SkString fileName(dirName);
+ fileName.append("\\atlas.png");
+
+ atlasTexture->surfacePriv().savePixels(fileName.c_str());
+ }
+ }
+
+ SkTDynamicHash<GrCachedLayer, GrCachedLayer::Key>::Iter iter(&fLayerHash);
+ for (; !iter.done(); ++iter) {
+ GrCachedLayer* layer = &(*iter);
+
+ if (layer->isAtlased() || !layer->texture()) {
+ continue;
+ }
+
+ SkString fileName(dirName);
+ fileName.appendf("\\%d-%d.png", layer->fKey.pictureID(), layer->fKey.start());
+
+ layer->texture()->surfacePriv().savePixels(fileName.c_str());
+ }
+}
+#endif