add CG imagedecoder (still needs encoding)

update some sample files to not use obsolete SkShaderExtras.h



git-svn-id: http://skia.googlecode.com/svn/trunk@46 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
reed@android.com 2008-12-23 16:06:51 +00:00
parent 76aa34bf8e
commit 0767e4742e
16 changed files with 241 additions and 20 deletions

View File

@ -10,7 +10,6 @@
#include "SkShader.h"
#include "SkUtils.h"
#include "SkXfermode.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -6,7 +6,6 @@
#include "SkRegion.h"
#include "SkShader.h"
#include "SkUtils.h"
#include "SkShaderExtras.h"
#include "Sk1DPathEffect.h"
#include "SkCornerPathEffect.h"
#include "SkPathMeasure.h"

View File

@ -13,7 +13,6 @@
#include "SkRegion.h"
#include "SkShader.h"
#include "SkUtils.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -10,7 +10,6 @@
#include "SkShader.h"
#include "SkUtils.h"
#include "SkXfermode.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -6,7 +6,6 @@
#include "SkRegion.h"
#include "SkShader.h"
#include "SkUtils.h"
#include "SkShaderExtras.h"
#include "Sk1DPathEffect.h"
#include "SkCornerPathEffect.h"
#include "SkPathMeasure.h"

View File

@ -10,7 +10,6 @@
#include "SkShader.h"
#include "SkUtils.h"
#include "SkXfermode.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -11,7 +11,6 @@
#include "SkRegion.h"
#include "SkShader.h"
#include "SkUtils.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -10,7 +10,6 @@
#include "SkShader.h"
#include "SkUtils.h"
#include "SkXfermode.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -10,7 +10,7 @@
#include "SkShader.h"
#include "SkUtils.h"
#include "SkXfermode.h"
#include "SkShaderExtras.h"
#include "SkComposeShader.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -13,7 +13,6 @@
#include "SkPath.h"
#include "SkRegion.h"
#include "SkShader.h"
#include "SkShaderExtras.h"
#include "SkTime.h"
#include "SkTypeface.h"
#include "SkUtils.h"

View File

@ -12,7 +12,6 @@
#include "SkRegion.h"
#include "SkShader.h"
#include "SkUtils.h"
#include "SkShaderExtras.h"
#include "SkColorPriv.h"
#include "SkColorFilter.h"
#include "SkTime.h"

View File

@ -6,7 +6,6 @@
#include "SkRegion.h"
#include "SkShader.h"
#include "SkUtils.h"
#include "SkShaderExtras.h"
#include "Sk1DPathEffect.h"
#include "SkCornerPathEffect.h"
#include "SkPathMeasure.h"

View File

@ -0,0 +1,127 @@
/* Copyright 2008, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
#include <Carbon/Carbon.h>
#include "SkImageDecoder.h"
#include "SkMovie.h"
#include "SkStream.h"
#include "SkTemplates.h"
static void malloc_release_proc(void* info, const void* data, size_t size) {
sk_free(info);
}
static CGDataProviderRef SkStreamToDataProvider(SkStream* stream) {
// TODO: use callbacks, so we don't have to load all the data into RAM
size_t len = stream->getLength();
void* data = sk_malloc_throw(len);
stream->read(data, len);
return CGDataProviderCreateWithData(data, data, len, malloc_release_proc);
}
static CGImageSourceRef SkStreamToCGImageSource(SkStream* stream) {
CGDataProviderRef data = SkStreamToDataProvider(stream);
CGImageSourceRef imageSrc = CGImageSourceCreateWithDataProvider(data, 0);
CGDataProviderRelease(data);
return imageSrc;
}
class SkImageDecoder_CG : public SkImageDecoder {
protected:
virtual bool onDecode(SkStream* stream, SkBitmap* bm,
SkBitmap::Config pref, Mode);
};
#define BITMAP_INFO (kCGBitmapByteOrder32Big | kCGImageAlphaPremultipliedLast)
bool SkImageDecoder_CG::onDecode(SkStream* stream, SkBitmap* bm,
SkBitmap::Config pref, Mode mode) {
CGImageSourceRef imageSrc = SkStreamToCGImageSource(stream);
if (NULL == imageSrc) {
return false;
}
SkAutoTCallVProc<const void, CFRelease> arsrc(imageSrc);
CGImageRef image = CGImageSourceCreateImageAtIndex(imageSrc, 0, NULL);
if (NULL == image) {
return false;
}
SkAutoTCallVProc<CGImage, CGImageRelease> arimage(image);
const int width = CGImageGetWidth(image);
const int height = CGImageGetHeight(image);
bm->setConfig(SkBitmap::kARGB_8888_Config, width, height);
if (SkImageDecoder::kDecodeBounds_Mode == mode) {
return true;
}
if (!this->allocPixelRef(bm, NULL)) {
return false;
}
bm->lockPixels();
bm->eraseColor(0);
CGColorSpaceRef cs = CGColorSpaceCreateDeviceRGB();
CGContextRef cg = CGBitmapContextCreate(bm->getPixels(), width, height,
8, bm->rowBytes(), cs, BITMAP_INFO);
CGContextDrawImage(cg, CGRectMake(0, 0, width, height), image);
CGContextRelease(cg);
CGColorSpaceRelease(cs);
bm->unlockPixels();
return true;
}
///////////////////////////////////////////////////////////////////////////////
SkImageDecoder* SkImageDecoder::Factory(SkStream* stream) {
return SkNEW(SkImageDecoder_CG);
}
bool SkImageDecoder::SupportsFormat(Format format) {
return true;
}
/////////////////////////////////////////////////////////////////////////
SkMovie* SkMovie::DecodeStream(SkStream* stream) {
return NULL;
}
/////////////////////////////////////////////////////////////////////////
#ifdef SK_SUPPORT_IMAGE_ENCODE
SkImageEncoder* SkImageEncoder::Create(Type t) {
#if 0
switch (t) {
case kJPEG_Type:
return SkImageEncoder_JPEG_Factory();
case kPNG_Type:
return SkImageEncoder_PNG_Factory();
default:
return NULL;
}
#else
return NULL;
#endif
}
#endif

View File

@ -11,7 +11,6 @@
0028847B0EFAB46A0083E387 /* libcore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884510EFAA35C0083E387 /* libcore.a */; };
002884BD0EFAB6A30083E387 /* libmaccore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884BC0EFAB69F0083E387 /* libmaccore.a */; };
004447A20EFC1DB400116F7C /* SkCreateCGImageRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 004447A10EFC1DB400116F7C /* SkCreateCGImageRef.cpp */; };
008D39120F0043260032662A /* SkFontHost_mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 008D39110F0043260032662A /* SkFontHost_mac.cpp */; };
0156F80407C56A3000C6122B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0156F80307C56A3000C6122B /* Foundation.framework */; };
01FC44D507BD3BB800D228F4 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01FC44D407BD3BB800D228F4 /* Quartz.framework */; };
8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */; };
@ -56,7 +55,6 @@
002884490EFAA35C0083E387 /* core.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = core.xcodeproj; path = ../core/core.xcodeproj; sourceTree = SOURCE_ROOT; };
002884B40EFAB69F0083E387 /* maccore.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = maccore.xcodeproj; path = ../maccore/maccore.xcodeproj; sourceTree = SOURCE_ROOT; };
004447A10EFC1DB400116F7C /* SkCreateCGImageRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkCreateCGImageRef.cpp; path = ../../src/utils/mac/SkCreateCGImageRef.cpp; sourceTree = SOURCE_ROOT; };
008D39110F0043260032662A /* SkFontHost_mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkFontHost_mac.cpp; path = ../../src/ports/SkFontHost_mac.cpp; sourceTree = SOURCE_ROOT; };
0156F80307C56A3000C6122B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
01FC44D407BD3BB800D228F4 /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = /System/Library/Frameworks/Quartz.framework; sourceTree = "<absolute>"; };
0867D6ABFE840B52C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -113,7 +111,6 @@
20286C29FDCF999611CA2CEA /* CICarbonSample */ = {
isa = PBXGroup;
children = (
008D39110F0043260032662A /* SkFontHost_mac.cpp */,
004447A10EFC1DB400116F7C /* SkCreateCGImageRef.cpp */,
20286C2AFDCF999611CA2CEA /* Sources */,
20286C2CFDCF999611CA2CEA /* Resources */,
@ -244,7 +241,6 @@
8D0C4E900486CD37000505A6 /* main.c in Sources */,
002884150EFA97F80083E387 /* test.cpp in Sources */,
004447A20EFC1DB400116F7C /* SkCreateCGImageRef.cpp in Sources */,
008D39120F0043260032662A /* SkFontHost_mac.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

View File

@ -11,6 +11,7 @@
002884A60EFAB5DE0083E387 /* SkThread_pthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884A30EFAB5DE0083E387 /* SkThread_pthread.cpp */; };
002884A70EFAB5DE0083E387 /* SkTime_Unix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884A40EFAB5DE0083E387 /* SkTime_Unix.cpp */; };
002884E10EFABFFC0083E387 /* SkGlobals_global.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 002884E00EFABFFC0083E387 /* SkGlobals_global.cpp */; };
007A7BEF0F01427100A2D6EE /* SkFontHost_mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7BEE0F01427100A2D6EE /* SkFontHost_mac.cpp */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
@ -18,6 +19,7 @@
002884A30EFAB5DE0083E387 /* SkThread_pthread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkThread_pthread.cpp; path = ../../src/ports/SkThread_pthread.cpp; sourceTree = SOURCE_ROOT; };
002884A40EFAB5DE0083E387 /* SkTime_Unix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkTime_Unix.cpp; path = ../../src/ports/SkTime_Unix.cpp; sourceTree = SOURCE_ROOT; };
002884E00EFABFFC0083E387 /* SkGlobals_global.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkGlobals_global.cpp; path = ../../src/ports/SkGlobals_global.cpp; sourceTree = SOURCE_ROOT; };
007A7BEE0F01427100A2D6EE /* SkFontHost_mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkFontHost_mac.cpp; path = ../../src/ports/SkFontHost_mac.cpp; sourceTree = SOURCE_ROOT; };
D2AAC046055464E500DB518D /* libmaccore.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libmaccore.a; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@ -49,6 +51,7 @@
002884A20EFAB5DE0083E387 /* SkOSFile_stdio.cpp */,
002884A30EFAB5DE0083E387 /* SkThread_pthread.cpp */,
002884A40EFAB5DE0083E387 /* SkTime_Unix.cpp */,
007A7BEE0F01427100A2D6EE /* SkFontHost_mac.cpp */,
);
name = Source;
sourceTree = "<group>";
@ -104,6 +107,7 @@
08FB7793FE84155DC02AAC07 /* Project object */ = {
isa = PBXProject;
buildConfigurationList = 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "maccore" */;
compatibilityVersion = "Xcode 2.4";
hasScannedForEncodings = 1;
mainGroup = 08FB7794FE84155DC02AAC07 /* maccore */;
projectDirPath = "";
@ -123,6 +127,7 @@
002884A60EFAB5DE0083E387 /* SkThread_pthread.cpp in Sources */,
002884A70EFAB5DE0083E387 /* SkTime_Unix.cpp in Sources */,
002884E10EFABFFC0083E387 /* SkGlobals_global.cpp in Sources */,
007A7BEF0F01427100A2D6EE /* SkFontHost_mac.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -156,10 +161,13 @@
1DEB91F008733DB70010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_ENABLE_CPP_EXCEPTIONS = NO;
GCC_ENABLE_CPP_RTTI = NO;
GCC_PREPROCESSOR_DEFINITIONS = (
SK_BUILD_FOR_MAC,
SK_DEBUG,
);
GCC_THREADSAFE_STATICS = NO;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
PREBINDING = NO;
@ -175,10 +183,13 @@
ppc,
i386,
);
GCC_ENABLE_CPP_EXCEPTIONS = NO;
GCC_ENABLE_CPP_RTTI = NO;
GCC_PREPROCESSOR_DEFINITIONS = (
SK_BUILD_FOR_MAC,
SK_RELEASE,
);
GCC_THREADSAFE_STATICS = NO;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
PREBINDING = NO;

View File

@ -29,7 +29,31 @@
00003CA40EFC235F000FF73A /* SkXMLParser_empty.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00003CA30EFC235F000FF73A /* SkXMLParser_empty.cpp */; };
0028847B0EFAB46A0083E387 /* libcore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884510EFAA35C0083E387 /* libcore.a */; };
002884BD0EFAB6A30083E387 /* libmaccore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884BC0EFAB69F0083E387 /* libmaccore.a */; };
00A41E3E0EFC30EC00C9CBEB /* SkFontHost_mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00A41E3D0EFC30EC00C9CBEB /* SkFontHost_mac.cpp */; };
0041CDDB0F00975E00695E8C /* SampleImageDir.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDDA0F00975E00695E8C /* SampleImageDir.cpp */; };
0041CDF00F009EB000695E8C /* SkImageDecoder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDEF0F009EB000695E8C /* SkImageDecoder.cpp */; };
0041CDF30F009ED100695E8C /* SkImageRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDF20F009ED100695E8C /* SkImageRef.cpp */; };
0041CDF60F009EED00695E8C /* SkImageRef_GlobalPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDF50F009EED00695E8C /* SkImageRef_GlobalPool.cpp */; };
0041CDFA0F009F0700695E8C /* SkImageRefPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDF90F009F0700695E8C /* SkImageRefPool.cpp */; };
0041CE350F00A12400695E8C /* SampleBitmapRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE1E0F00A12400695E8C /* SampleBitmapRect.cpp */; };
0041CE360F00A12400695E8C /* SampleCamera.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE1F0F00A12400695E8C /* SampleCamera.cpp */; };
0041CE370F00A12400695E8C /* SampleCircle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE200F00A12400695E8C /* SampleCircle.cpp */; };
0041CE380F00A12400695E8C /* SampleCull.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE220F00A12400695E8C /* SampleCull.cpp */; };
0041CE390F00A12400695E8C /* SampleDither.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE230F00A12400695E8C /* SampleDither.cpp */; };
0041CE3A0F00A12400695E8C /* SampleDrawLooper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE240F00A12400695E8C /* SampleDrawLooper.cpp */; };
0041CE3B0F00A12400695E8C /* SampleEmboss.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE250F00A12400695E8C /* SampleEmboss.cpp */; };
0041CE3C0F00A12400695E8C /* SampleEncode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE260F00A12400695E8C /* SampleEncode.cpp */; };
0041CE3D0F00A12400695E8C /* SampleFillType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE270F00A12400695E8C /* SampleFillType.cpp */; };
0041CE3E0F00A12400695E8C /* SampleFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE280F00A12400695E8C /* SampleFilter.cpp */; };
0041CE3F0F00A12400695E8C /* SampleFilter2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE290F00A12400695E8C /* SampleFilter2.cpp */; };
0041CE400F00A12400695E8C /* SampleFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2A0F00A12400695E8C /* SampleFontCache.cpp */; };
0041CE420F00A12400695E8C /* SampleImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2C0F00A12400695E8C /* SampleImage.cpp */; };
0041CE430F00A12400695E8C /* SampleLayers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2D0F00A12400695E8C /* SampleLayers.cpp */; };
0041CE440F00A12400695E8C /* SampleLines.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2E0F00A12400695E8C /* SampleLines.cpp */; };
0041CE450F00A12400695E8C /* SampleMeasure.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2F0F00A12400695E8C /* SampleMeasure.cpp */; };
0041CE470F00A12400695E8C /* SampleNinePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE310F00A12400695E8C /* SampleNinePatch.cpp */; };
0041CE480F00A12400695E8C /* SampleOverflow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE320F00A12400695E8C /* SampleOverflow.cpp */; };
0041CE4A0F00A12400695E8C /* SamplePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE340F00A12400695E8C /* SamplePatch.cpp */; };
007A7BE40F01424500A2D6EE /* SkImageDecoder_CG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7BE30F01424500A2D6EE /* SkImageDecoder_CG.cpp */; };
00A41E4B0EFC312F00C9CBEB /* SampleArc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */; };
0156F80407C56A3000C6122B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0156F80307C56A3000C6122B /* Foundation.framework */; };
01FC44D507BD3BB800D228F4 /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01FC44D407BD3BB800D228F4 /* Quartz.framework */; };
@ -106,7 +130,32 @@
00003CA30EFC235F000FF73A /* SkXMLParser_empty.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkXMLParser_empty.cpp; path = ../../src/ports/SkXMLParser_empty.cpp; sourceTree = SOURCE_ROOT; };
002884490EFAA35C0083E387 /* core.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = core.xcodeproj; path = ../core/core.xcodeproj; sourceTree = SOURCE_ROOT; };
002884B40EFAB69F0083E387 /* maccore.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = maccore.xcodeproj; path = ../maccore/maccore.xcodeproj; sourceTree = SOURCE_ROOT; };
00A41E3D0EFC30EC00C9CBEB /* SkFontHost_mac.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkFontHost_mac.cpp; path = ../../src/ports/SkFontHost_mac.cpp; sourceTree = SOURCE_ROOT; };
0041CDDA0F00975E00695E8C /* SampleImageDir.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleImageDir.cpp; path = ../../samplecode/SampleImageDir.cpp; sourceTree = SOURCE_ROOT; };
0041CDEF0F009EB000695E8C /* SkImageDecoder.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkImageDecoder.cpp; path = ../../src/images/SkImageDecoder.cpp; sourceTree = SOURCE_ROOT; };
0041CDF20F009ED100695E8C /* SkImageRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkImageRef.cpp; path = ../../src/images/SkImageRef.cpp; sourceTree = SOURCE_ROOT; };
0041CDF50F009EED00695E8C /* SkImageRef_GlobalPool.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkImageRef_GlobalPool.cpp; path = ../../src/images/SkImageRef_GlobalPool.cpp; sourceTree = SOURCE_ROOT; };
0041CDF90F009F0700695E8C /* SkImageRefPool.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkImageRefPool.cpp; path = ../../src/images/SkImageRefPool.cpp; sourceTree = SOURCE_ROOT; };
0041CE1E0F00A12400695E8C /* SampleBitmapRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleBitmapRect.cpp; path = ../../samplecode/SampleBitmapRect.cpp; sourceTree = SOURCE_ROOT; };
0041CE1F0F00A12400695E8C /* SampleCamera.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleCamera.cpp; path = ../../samplecode/SampleCamera.cpp; sourceTree = SOURCE_ROOT; };
0041CE200F00A12400695E8C /* SampleCircle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleCircle.cpp; path = ../../samplecode/SampleCircle.cpp; sourceTree = SOURCE_ROOT; };
0041CE210F00A12400695E8C /* SampleCode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SampleCode.h; path = ../../samplecode/SampleCode.h; sourceTree = SOURCE_ROOT; };
0041CE220F00A12400695E8C /* SampleCull.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleCull.cpp; path = ../../samplecode/SampleCull.cpp; sourceTree = SOURCE_ROOT; };
0041CE230F00A12400695E8C /* SampleDither.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleDither.cpp; path = ../../samplecode/SampleDither.cpp; sourceTree = SOURCE_ROOT; };
0041CE240F00A12400695E8C /* SampleDrawLooper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleDrawLooper.cpp; path = ../../samplecode/SampleDrawLooper.cpp; sourceTree = SOURCE_ROOT; };
0041CE250F00A12400695E8C /* SampleEmboss.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleEmboss.cpp; path = ../../samplecode/SampleEmboss.cpp; sourceTree = SOURCE_ROOT; };
0041CE260F00A12400695E8C /* SampleEncode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleEncode.cpp; path = ../../samplecode/SampleEncode.cpp; sourceTree = SOURCE_ROOT; };
0041CE270F00A12400695E8C /* SampleFillType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFillType.cpp; path = ../../samplecode/SampleFillType.cpp; sourceTree = SOURCE_ROOT; };
0041CE280F00A12400695E8C /* SampleFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFilter.cpp; path = ../../samplecode/SampleFilter.cpp; sourceTree = SOURCE_ROOT; };
0041CE290F00A12400695E8C /* SampleFilter2.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFilter2.cpp; path = ../../samplecode/SampleFilter2.cpp; sourceTree = SOURCE_ROOT; };
0041CE2A0F00A12400695E8C /* SampleFontCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFontCache.cpp; path = ../../samplecode/SampleFontCache.cpp; sourceTree = SOURCE_ROOT; };
0041CE2C0F00A12400695E8C /* SampleImage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleImage.cpp; path = ../../samplecode/SampleImage.cpp; sourceTree = SOURCE_ROOT; };
0041CE2D0F00A12400695E8C /* SampleLayers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleLayers.cpp; path = ../../samplecode/SampleLayers.cpp; sourceTree = SOURCE_ROOT; };
0041CE2E0F00A12400695E8C /* SampleLines.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleLines.cpp; path = ../../samplecode/SampleLines.cpp; sourceTree = SOURCE_ROOT; };
0041CE2F0F00A12400695E8C /* SampleMeasure.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleMeasure.cpp; path = ../../samplecode/SampleMeasure.cpp; sourceTree = SOURCE_ROOT; };
0041CE310F00A12400695E8C /* SampleNinePatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleNinePatch.cpp; path = ../../samplecode/SampleNinePatch.cpp; sourceTree = SOURCE_ROOT; };
0041CE320F00A12400695E8C /* SampleOverflow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleOverflow.cpp; path = ../../samplecode/SampleOverflow.cpp; sourceTree = SOURCE_ROOT; };
0041CE340F00A12400695E8C /* SamplePatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePatch.cpp; path = ../../samplecode/SamplePatch.cpp; sourceTree = SOURCE_ROOT; };
007A7BE30F01424500A2D6EE /* SkImageDecoder_CG.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkImageDecoder_CG.cpp; path = ../../src/ports/SkImageDecoder_CG.cpp; sourceTree = SOURCE_ROOT; };
00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleArc.cpp; path = ../../samplecode/SampleArc.cpp; sourceTree = SOURCE_ROOT; };
0156F80307C56A3000C6122B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
01FC44D407BD3BB800D228F4 /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = /System/Library/Frameworks/Quartz.framework; sourceTree = "<absolute>"; };
@ -140,6 +189,27 @@
00003C610EFC2287000FF73A /* samples */ = {
isa = PBXGroup;
children = (
0041CE1E0F00A12400695E8C /* SampleBitmapRect.cpp */,
0041CE1F0F00A12400695E8C /* SampleCamera.cpp */,
0041CE200F00A12400695E8C /* SampleCircle.cpp */,
0041CE210F00A12400695E8C /* SampleCode.h */,
0041CE220F00A12400695E8C /* SampleCull.cpp */,
0041CE230F00A12400695E8C /* SampleDither.cpp */,
0041CE240F00A12400695E8C /* SampleDrawLooper.cpp */,
0041CE250F00A12400695E8C /* SampleEmboss.cpp */,
0041CE260F00A12400695E8C /* SampleEncode.cpp */,
0041CE270F00A12400695E8C /* SampleFillType.cpp */,
0041CE280F00A12400695E8C /* SampleFilter.cpp */,
0041CE290F00A12400695E8C /* SampleFilter2.cpp */,
0041CE2A0F00A12400695E8C /* SampleFontCache.cpp */,
0041CE2C0F00A12400695E8C /* SampleImage.cpp */,
0041CE2D0F00A12400695E8C /* SampleLayers.cpp */,
0041CE2E0F00A12400695E8C /* SampleLines.cpp */,
0041CE2F0F00A12400695E8C /* SampleMeasure.cpp */,
0041CE310F00A12400695E8C /* SampleNinePatch.cpp */,
0041CE320F00A12400695E8C /* SampleOverflow.cpp */,
0041CE340F00A12400695E8C /* SamplePatch.cpp */,
0041CDDA0F00975E00695E8C /* SampleImageDir.cpp */,
00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */,
00003C620EFC22A8000FF73A /* SampleApp.cpp */,
00003C640EFC22A8000FF73A /* SamplePath.cpp */,
@ -205,9 +275,13 @@
20286C29FDCF999611CA2CEA /* CICarbonSample */ = {
isa = PBXGroup;
children = (
0041CDF90F009F0700695E8C /* SkImageRefPool.cpp */,
0041CDF50F009EED00695E8C /* SkImageRef_GlobalPool.cpp */,
0041CDF20F009ED100695E8C /* SkImageRef.cpp */,
0041CDEF0F009EB000695E8C /* SkImageDecoder.cpp */,
007A7BE30F01424500A2D6EE /* SkImageDecoder_CG.cpp */,
00003C6A0EFC22AD000FF73A /* views */,
00003C610EFC2287000FF73A /* samples */,
00A41E3D0EFC30EC00C9CBEB /* SkFontHost_mac.cpp */,
00003CA30EFC235F000FF73A /* SkXMLParser_empty.cpp */,
20286C2AFDCF999611CA2CEA /* Sources */,
20286C2CFDCF999611CA2CEA /* Resources */,
@ -365,8 +439,32 @@
00003CA00EFC233F000FF73A /* SkParseColor.cpp in Sources */,
00003CA10EFC233F000FF73A /* SkXMLParser.cpp in Sources */,
00003CA40EFC235F000FF73A /* SkXMLParser_empty.cpp in Sources */,
00A41E3E0EFC30EC00C9CBEB /* SkFontHost_mac.cpp in Sources */,
00A41E4B0EFC312F00C9CBEB /* SampleArc.cpp in Sources */,
0041CDDB0F00975E00695E8C /* SampleImageDir.cpp in Sources */,
0041CDF00F009EB000695E8C /* SkImageDecoder.cpp in Sources */,
0041CDF30F009ED100695E8C /* SkImageRef.cpp in Sources */,
0041CDF60F009EED00695E8C /* SkImageRef_GlobalPool.cpp in Sources */,
0041CDFA0F009F0700695E8C /* SkImageRefPool.cpp in Sources */,
0041CE350F00A12400695E8C /* SampleBitmapRect.cpp in Sources */,
0041CE360F00A12400695E8C /* SampleCamera.cpp in Sources */,
0041CE370F00A12400695E8C /* SampleCircle.cpp in Sources */,
0041CE380F00A12400695E8C /* SampleCull.cpp in Sources */,
0041CE390F00A12400695E8C /* SampleDither.cpp in Sources */,
0041CE3A0F00A12400695E8C /* SampleDrawLooper.cpp in Sources */,
0041CE3B0F00A12400695E8C /* SampleEmboss.cpp in Sources */,
0041CE3C0F00A12400695E8C /* SampleEncode.cpp in Sources */,
0041CE3D0F00A12400695E8C /* SampleFillType.cpp in Sources */,
0041CE3E0F00A12400695E8C /* SampleFilter.cpp in Sources */,
0041CE3F0F00A12400695E8C /* SampleFilter2.cpp in Sources */,
0041CE400F00A12400695E8C /* SampleFontCache.cpp in Sources */,
0041CE420F00A12400695E8C /* SampleImage.cpp in Sources */,
0041CE430F00A12400695E8C /* SampleLayers.cpp in Sources */,
0041CE440F00A12400695E8C /* SampleLines.cpp in Sources */,
0041CE450F00A12400695E8C /* SampleMeasure.cpp in Sources */,
0041CE480F00A12400695E8C /* SampleOverflow.cpp in Sources */,
0041CE4A0F00A12400695E8C /* SamplePatch.cpp in Sources */,
0041CE470F00A12400695E8C /* SampleNinePatch.cpp in Sources */,
007A7BE40F01424500A2D6EE /* SkImageDecoder_CG.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};