【開発環境】
Macintosh Software Meeting in 湘南 2002」に参加された皆さん、ご苦労様でした!私のセッション「Carbon EventとHIViewの秘密」において、Mac OS X 10.2の新機能を解説するために用いたサンプルアプリケーションは、以下のURLに登録されています。プロジェクトとソースファイルが含まれていますので、ぜひ試してみてください。必要な開発環境と動作環境については、プロジェクトに添付されているドキュメントをご参照ください。
http://www.ottimo.co.jp/library/index.html#carbon
Apple社のtoolsサイトにCHUD(Computer Hardware Understanding Development kit )の最新バージョン v2.5.0が登録されました。今回からは、ReadMeドキュメントや変更点を記載したChangeLogドキュメントがちゃんと付属しています。加えて、旧版を削除するための「CHUDRemover」というアプリケーションも追加されました(アイコンが面白い)。ChangeLogドキュメントの記述を読んでみると、Sampling and Profiling Toolとして提供されている「Shikari」というアプリケーションの機能拡張とバグフィックスが、変更点の大半を占めているようです。
http://developer.apple.com/tools/debuggers.html
【テクニカルドキュメント】
今回登録されたドキュメントは、新版の「Handling Carbon Events 」ひとつだけです。Carbon EventとMac OS X 10.2で追加された新機能との関係が加筆されています。
「Handling Carbon Events 」(98ページPDF 412K)
http://developer.apple.com/techpubs/macosx/Carbon/oss/CarbonEventManager/Carbon_Event_Manager/index.html
また、QuickTimeサイトでは、PDFで供給されていた以下のドキュメントがHTMLドキュメントとして参照できるようになったことが紹介されています。
「Inside QuickTime: Virtual Reality」
「 Inside QuickTime: Interactive Movies」
「QuickTime Streaming Server Modules 」
http://developer.apple.com/techpubs/quicktime/qtdevdocs/RM/newsframe.htm
11月10日までに発表されたテックノートはひとつもありませんでした。
http://developer.apple.com/technotes/indexes/whatsnew0.html
テクニカルQ&Aの方は、新規に9つの内容が登録されました。「QDSwapPort」では、GetPort()とSetPort()を、新APIのQDSwapPort()に置き換える手法が解説されています。これを読むと、Mac OS X 10.2環境でのGetPort()とSetPort()の見境無い使用は、無駄なCPUパワーを使う可能性が高いようです。このQ&Aでは、GetPort()とSetPort()のペアを、特定のケースについては、QDSwapPort()に置き換えるように推奨しています。「Quartz 2D Interpolation」では、Quartz 2Dで画像(ImageRef)表示する場合の画質補完の調整方法が解説されています。また「QuickDraw Text Anti-Aliasing using Quartz 2D」では、QuickDrawでのテキスト描画において、Quartz 2DのAnti-Aliasing機能を使うか使わないかを切り替える方法が解説されています。
QA1203「Using cmPathBased profile locations on Mac OS X」
QA1182「Why does logging keep my Printer Module from working?」
QA1128「QDSwapPort」
QA1206「 Video Output Components - Implementing QTVideoOutputGetIndSoundOutput on Mac OS X」
QA1193「QuickDraw Text Anti-Aliasing using Quartz 2D」
QA1186「Quartz 2D Interpolation」
QA1207「Documentation updater for Project Builder shipping with Mac OS X 10.2」
QA1205「Getting the name of a profile」
QA1204「Setting Sequence Grabber Sound Input Device Driver Parameters」
http://developer.apple.com/qa/indexes/whatsnew0.html
【サンプルソースコード】
前回から11月10日の期間中、Apple社のSample Codeサイトには16のサンプルソースコードが登録されました。なかでも、HID Manager関連のサンプルソースコードが大量に登録されています。
「UIElementInspector」(Accessibility関連)
「StyleFlatteningSample」(Text関連)
「RoundTransparentWindow」(Cocoa関連)
「HID Utilities Source」(HID Manager関連)
「CFPrefsDumper」(Core Foundation関連)
「CFPreferences」(Core Foundation関連)
「CFPrefDockItems」(Core Foundation関連)
「CDROMSample」( CD ROM関連)
「VendorSpecificType00」(Disks関連)
「HID Config Save」(HIDevices関連)
「HID Explorer」(HID Manager関連)
「HID Manager Basics」(HID Manager関連)
「HID Utilities Source」(HID Manager関連)
「Cocoa With Carbon or CPP」(Cocoa関連)
「IOPrintSuperClasses」(IOKit関連)
「vrmovies」(QuickTime関連)
http://developer.apple.com/samplecode/
HIDとは「Human Interface Device」の略で、USB機器へアクセスするための方法を提供しています。対象となるUSB機器は、Keyord、Joysticks、Audio devices、Non-Apple displaysなどで、ディバイスドライバの上層部に位置し、開発者がより簡単にUSB周辺機器をコントロールできるように配慮します。昔で言うところの、Game SproketsのInput Sproketを思い出していただくと理解しやすいかもしれません。HID Managerのサンプルソースコードが登録されたのは初めてではありませんが、今回のバージョンで、すべてのサンプルソースコードがMac OS X 10.2に対応したもようです。HID Managerに関するドキュメントは、以下のURLに登録されていますので、一度参照してみてください。
http://developer.apple.com/techpubs/macosx/Darwin/IOKit/DeviceInterfaces/HID/hid.pdf
【デベロップメント SDK】
今回、Apple社のSDKサイトに登録された目玉は「Image Capture SDK 2.0」です。今まで提供されていた「Image Capture SDK 1.0」では、デジタルカメラからの画像取り込み方法のみが提供されていました。今回の新バージョンにより、やっとスキャナからの画像の取り込み方法が判明したわけです。SDKには、ドキュメントだけでなく新しいサンプルソースコードも含まれています。ちょっと調べてみましたが、本当に基本的な「スキャナとの接続とそのコントロール」を受け持つAPIが提供されているだけで、プリスキャニングエリアや各種設定コントロールを備えた「取り込みモジュール」(パレットウィンドウ)を提供しているわけではないようです(ちょっとがっかり)。それから、Mac OS 8/9用のUSB開発キットの新バージョンも登録されました。
「Image Capture SDK 2.0」
「Universal Serial Bus (USB) DDK」
http://developer.apple.com/sdk/
copyright 2002 Ottimo, Inc. All rights reserved
無断転載・引用禁止
Contact us: koike@ottimo.co.jp