comparison dstep/coreservices/carboncore/Gestalt.d @ 11:07194b026fa4

Added bindings to a couple of frameworks, new license + some other things
author Jacob Carlborg <doob@me.com>
date Sat, 01 Aug 2009 15:03:28 +0200
parents
children
comparison
equal deleted inserted replaced
10:27e00625790b 11:07194b026fa4
1 /**
2 * Copyright: Copyright (c) 2009 Jacob Carlborg.
3 * Authors: Jacob Carlborg
4 * Version: Initial created: Jul 22, 2009
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
6 */
7 module dstep.coreservices.carboncore.Gestalt;
8
9 //import dstep.AvailabilityMacros;
10 import dstep.coreservices.carboncore.MacTypes;
11 import dstep.coreservices.carboncore.MixedMode;
12 import dstep.internal.Version;
13 import dstep.objc.bridge.TypeEncoding;
14
15 alias SelectorFunctionProcPtr SelectorFunctionUPP;
16
17 extern (C)
18 {
19 alias short function (uint, SInt32*) SelectorFunctionProcPtr;
20 }
21
22 // This is needed otherwise the enums will fail compiling with gdc
23 version (GNU)
24 {
25 private
26 {
27 const __gestaltAddressingModeAttr = getOSType!("addr");
28 const __gestaltAFPClient = getOSType!("afps");
29 const __gestaltAliasMgrAttr = getOSType!("alis");
30 const __gestaltAppearanceAttr = getOSType!("appr");
31 const __gestaltAppearanceVersion = getOSType!("apvr");
32 const __gestaltArbitorAttr = getOSType!("arb ");
33 const __gestaltAppleScriptVersion = getOSType!("ascv");
34 const __gestaltAppleScriptAttr = getOSType!("ascr");
35 const __gestaltATAAttr = getOSType!("ata ");
36 const __gestaltATalkVersion = getOSType!("atkv");
37 const __gestaltAppleTalkVersion = getOSType!("atlk");
38 const __gestaltAUXVersion = getOSType!("a/ux");
39 const __gestaltMacOSCompatibilityBoxAttr = getOSType!("bbox");
40 const __gestaltBusClkSpeed = getOSType!("bclk");
41 const __gestaltBusClkSpeedMHz = getOSType!("bclm");
42 const __gestaltCloseViewAttr = getOSType!("BSDa");
43 const __gestaltCarbonVersion = getOSType!("cbon");
44 const __gestaltCFMAttr = getOSType!("cfrg");
45 const __gestaltProcessorCacheLineSize = getOSType!("csiz");
46 const __gestaltCollectionMgrVersion = getOSType!("cltn");
47 const __gestaltColorMatchingAttr = getOSType!("cmta");
48 const __gestaltColorMatchingVersion = getOSType!("cmtc");
49 const __gestaltControlMgrVersion = getOSType!("cmvr");
50 const __gestaltControlMgrAttr = getOSType!("cntl");
51 const __gestaltConnMgrAttr = getOSType!("conn");
52 const __gestaltColorPickerVersion = getOSType!("cpkr");
53 const __gestaltColorPicker = getOSType!("cpkr");
54 const __gestaltComponentMgr = getOSType!("cpnt");
55 const __gestaltComponentPlatform = getOSType!("copl");
56 const __gestaltNativeCPUtype = getOSType!("cput");
57 const __gestaltNativeCPUfamily = getOSType!("cpuf");
58 const __gestaltCPU486 = getOSType!("i486");
59 const __gestaltCPUPentium = getOSType!("i586");
60 const __gestaltCPUPentiumPro = getOSType!("i5pr");
61 const __gestaltCPUPentiumII = getOSType!("i5ii");
62 const __gestaltCPUX86 = getOSType!("ixxx");
63 const __gestaltCPUPentium4 = getOSType!("i5iv");
64 const __gestaltCRMAttr = getOSType!("crm ");
65 const __gestaltControlStripVersion = getOSType!("csvr");
66 const __gestaltCountOfCPUs = getOSType!("cpus");
67 const __gestaltCTBVersion = getOSType!("ctbv");
68 const __gestaltDBAccessMgrAttr = getOSType!("dbac");
69 const __gestaltDiskCacheSize = getOSType!("dcsz");
70 const __gestaltSDPFindVersion = getOSType!("dfnd");
71 const __gestaltDictionaryMgrAttr = getOSType!("dict");
72 const __gestaltDITLExtAttr = getOSType!("ditl");
73 const __gestaltDialogMgrAttr = getOSType!("dlog");
74 const __gestaltDesktopPicturesAttr = getOSType!("dkpx");
75 const __gestaltDisplayMgrVers = getOSType!("dplv");
76 const __gestaltDisplayMgrAttr = getOSType!("dply");
77 const __gestaltDragMgrAttr = getOSType!("drag");
78 const __gestaltDrawSprocketVersion = getOSType!("dspv");
79 const __gestaltDigitalSignatureVersion = getOSType!("dsig");
80 const __gestaltDTPFeatures = getOSType!("dtpf");
81 const __gestaltDTPInfo = getOSType!("dtpx");
82 const __gestaltEasyAccessAttr = getOSType!("easy");
83 const __gestaltEditionMgrAttr = getOSType!("edtn");
84 const __gestaltAppleEventsAttr = getOSType!("evnt");
85 const __gestaltExtensionTableVersion = getOSType!("etbl");
86 const __gestaltFBCIndexingState = getOSType!("fbci");
87 const __gestaltFBCVersion = getOSType!("fbcv");
88 const __gestaltFileMappingAttr = getOSType!("flmp");
89 const __gestaltFloppyAttr = getOSType!("flpy");
90 const __gestaltFinderAttr = getOSType!("fndr");
91 const __gestaltFindFolderAttr = getOSType!("fold");
92 const __gestaltFindFolderRedirectionAttr = getOSType!("fole");
93 const __gestaltFontMgrAttr = getOSType!("font");
94 const __gestaltFPUType = getOSType!("fpu ");
95 const __gestaltFSAttr = getOSType!("fs ");
96 const __gestaltAdminFeaturesFlagsAttr = getOSType!("fred");
97 const __gestaltFSMVersion = getOSType!("fsm ");
98 const __gestaltFXfrMgrAttr = getOSType!("fxfr");
99 const __gestaltGraphicsAttr = getOSType!("gfxa");
100 const __gestaltGraphicsVersion = getOSType!("grfx");
101 const __gestaltHardwareAttr = getOSType!("hdwr");
102 const __gestaltHelpMgrAttr = getOSType!("help");
103 const __gestaltHardwareVendorCode = getOSType!("hrad");
104 const __gestaltHardwareVendorApple = getOSType!("Appl");
105 const __gestaltCompressionMgr = getOSType!("icmp");
106 const __gestaltIconUtilitiesAttr = getOSType!("icon");
107 const __gestaltInternalDisplay = getOSType!("idsp");
108 const __gestaltKeyboardType = getOSType!("kbd ");
109 const __gestaltUDFSupport = getOSType!("kudf");
110 const __gestaltLowMemorySize = getOSType!("lmem");
111 const __gestaltLogicalRAMSize = getOSType!("lram");
112 const __gestaltMachineType = getOSType!("mach");
113 const __gestaltSMPMailerVersion = getOSType!("malr");
114 const __gestaltMediaBay = getOSType!("mbeh");
115 const __gestaltMessageMgrVersion = getOSType!("mess");
116 const __gestaltMenuMgrAttr = getOSType!("menu");
117 const __gestaltMultipleUsersState = getOSType!("mfdr");
118 const __gestaltMachineIcon = getOSType!("micn");
119 const __gestaltMiscAttr = getOSType!("misc");
120 const __gestaltMixedModeVersion = getOSType!("mixd");
121 const __gestaltMixedModeAttr = getOSType!("mixd");
122 const __gestaltQuickTimeConferencing = getOSType!("mtlk");
123 const __gestaltMemoryMapAttr = getOSType!("mmap");
124 const __gestaltMMUType = getOSType!("mmu ");
125 const __gestaltUserVisibleMachineName = getOSType!("mnam");
126 const __gestaltMPCallableAPIsAttr = getOSType!("mpsc");
127 const __gestaltStdNBPAttr = getOSType!("nlup");
128 const __gestaltNotificationMgrAttr = getOSType!("nmgr");
129 const __gestaltNameRegistryVersion = getOSType!("nreg");
130 const __gestaltNuBusSlotCount = getOSType!("nubs");
131 const __gestaltOCEToolboxVersion = getOSType!("ocet");
132 const __gestaltOCEToolboxAttr = getOSType!("oceu");
133 const __gestaltOpenFirmwareInfo = getOSType!("opfw");
134 const __gestaltOSAttr = getOSType!("os ");
135 const __gestaltOSTable = getOSType!("ostt");
136 const __gestaltOpenTptNetworkSetup = getOSType!("otcf");
137 const __gestaltOpenTptNetworkSetupVersion = getOSType!("otcv");
138 const __gestaltOpenTptRemoteAccess = getOSType!("otra");
139 const __gestaltOpenTptRemoteAccessVersion = getOSType!("otrv");
140 const __gestaltOpenTptVersions = getOSType!("otvr");
141 const __gestaltOpenTpt = getOSType!("otan");
142 const __gestaltPCCard = getOSType!("pccd");
143 const __gestaltProcClkSpeed = getOSType!("pclk");
144 const __gestaltProcClkSpeedMHz = getOSType!("mclk");
145 const __gestaltPCXAttr = getOSType!("pcxg");
146 const __gestaltLogicalPageSize = getOSType!("pgsz");
147 const __gestaltScreenCaptureMain = getOSType!("pic1");
148 const __gestaltScreenCaptureDir = getOSType!("pic2");
149 const __gestaltGXPrintingMgrVersion = getOSType!("pmgr");
150 const __gestaltPopupAttr = getOSType!("pop!");
151 const __gestaltPowerMgrAttr = getOSType!("powr");
152 const __gestaltPowerMgrVers = getOSType!("pwrv");
153 const __gestaltPPCToolboxAttr = getOSType!("ppc ");
154 const __gestaltPowerPCProcessorFeatures = getOSType!("ppcf");
155 const __gestaltProcessorType = getOSType!("proc");
156 const __gestaltSDPPromptVersion = getOSType!("prpv");
157 const __gestaltParityAttr = getOSType!("prty");
158 const __gestaltQD3DVersion = getOSType!("q3v ");
159 const __gestaltQD3DViewer = getOSType!("q3vc");
160 const __gestaltQuickdrawVersion = getOSType!("qd ");
161 const __gestaltQD3D = getOSType!("qd3d");
162 const __gestaltGXVersion = getOSType!("qdgx");
163 const __gestaltQuickdrawFeatures = getOSType!("qdrw");
164 const __gestaltQDTextVersion = getOSType!("qdtx");
165 const __gestaltQDTextFeatures = getOSType!("qdtf");
166 const __gestaltQuickTimeConferencingInfo = getOSType!("qtci");
167 const __gestaltQuickTimeVersion = getOSType!("qtim");
168 const __gestaltQuickTime = getOSType!("qtim");
169 const __gestaltQuickTimeFeatures = getOSType!("qtrs");
170 const __gestaltQuickTimeStreamingFeatures = getOSType!("qtsf");
171 const __gestaltQuickTimeStreamingVersion = getOSType!("qtst");
172 const __gestaltQuickTimeThreadSafeFeaturesAttr = getOSType!("qtth");
173 const __gestaltQTVRMgrAttr = getOSType!("qtvr");
174 const __gestaltQTVRMgrVers = getOSType!("qtvv");
175 const __gestaltPhysicalRAMSize = getOSType!("ram ");
176 const __gestaltPhysicalRAMSizeInMegabytes = getOSType!("ramm");
177 const __gestaltRBVAddr = getOSType!("rbv ");
178 const __gestaltROMSize = getOSType!("rom ");
179 const __gestaltROMVersion = getOSType!("romv");
180 const __gestaltResourceMgrAttr = getOSType!("rsrc");
181 const __gestaltResourceMgrBugFixesAttrs = getOSType!("rmbg");
182 const __gestaltRealtimeMgrAttr = getOSType!("rtmr");
183 const __gestaltSafeOFAttr = getOSType!("safe");
184 const __gestaltSCCReadAddr = getOSType!("sccr");
185 const __gestaltSCCWriteAddr = getOSType!("sccw");
186 const __gestaltScrapMgrAttr = getOSType!("scra");
187 const __gestaltScriptMgrVersion = getOSType!("scri");
188 const __gestaltScriptCount = getOSType!("scr#");
189 const __gestaltSCSI = getOSType!("scsi");
190 const __gestaltControlStripAttr = getOSType!("sdev");
191 const __gestaltSDPStandardDirectoryVersion = getOSType!("sdvr");
192 const __gestaltSerialAttr = getOSType!("ser ");
193 const __gestaltShutdownAttributes = getOSType!("shut");
194 const __gestaltNuBusConnectors = getOSType!("sltc");
195 const __gestaltSlotAttr = getOSType!("slot");
196 const __gestaltFirstSlotNumber = getOSType!("slt1");
197 const __gestaltSoundAttr = getOSType!("snd ");
198 const __gestaltSplitOSAttr = getOSType!("spos");
199 const __gestaltSMPSPSendLetterVersion = getOSType!("spsl");
200 const __gestaltSpeechRecognitionAttr = getOSType!("srta");
201 const __gestaltSpeechRecognitionVersion = getOSType!("srtb");
202 const __gestaltSoftwareVendorCode = getOSType!("srad");
203 const __gestaltSoftwareVendorApple = getOSType!("Appl");
204 const __gestaltSoftwareVendorLicensee = getOSType!("Lcns");
205 const __gestaltStandardFileAttr = getOSType!("stdf");
206 const __gestaltSysArchitecture = getOSType!("sysa");
207 const __gestaltSystemUpdateVersion = getOSType!("sysu");
208 const __gestaltSystemVersion = getOSType!("sysv");
209 const __gestaltSystemVersionMajor = getOSType!("sys1");
210 const __gestaltSystemVersionMinor = getOSType!("sys2");
211 const __gestaltSystemVersionBugFix = getOSType!("sys3");
212 const __gestaltToolboxTable = getOSType!("tbtt");
213 const __gestaltTextEditVersion = getOSType!("te ");
214 const __gestaltTEAttr = getOSType!("teat");
215 const __gestaltTeleMgrAttr = getOSType!("tele");
216 const __gestaltTermMgrAttr = getOSType!("term");
217 const __gestaltThreadMgrAttr = getOSType!("thds");
218 const __gestaltTimeMgrVersion = getOSType!("tmgr");
219 const __gestaltTSMTEVersion = getOSType!("tmTV");
220 const __gestaltTSMTEAttr = getOSType!("tmTE");
221 const __gestaltAVLTreeAttr = getOSType!("tree");
222 const __gestaltALMAttr = getOSType!("trip");
223 const __gestaltTSMgrVersion = getOSType!("tsmv");
224 const __gestaltTSMgrAttr = getOSType!("tsma");
225 const __gestaltSpeechAttr = getOSType!("ttsc");
226 const __gestaltTVAttr = getOSType!("tv ");
227 const __gestaltATSUVersion = getOSType!("uisv");
228 const __gestaltATSUFeatures = getOSType!("uisf");
229 const __gestaltUSBAttr = getOSType!("usb ");
230 const __gestaltUSBVersion = getOSType!("usbv");
231 const __gestaltVersion = getOSType!("vers");
232 const __gestaltVIA1Addr = getOSType!("via1");
233 const __gestaltVIA2Addr = getOSType!("via2");
234 const __gestaltVMAttr = getOSType!("vm ");
235 const __gestaltVMInfoType = getOSType!("vmin");
236 const __gestaltVMBackingStoreFileRefNum = getOSType!("vmbs");
237 const __gestaltALMVers = getOSType!("walk");
238 const __gestaltWindowMgrAttr = getOSType!("wind");
239 const __gestaltX86Features = getOSType!("x86f");
240 const __gestaltX86AdditionalFeatures = getOSType!("x86a");
241 const __gestaltTranslationAttr = getOSType!("xlat");
242 const __gestaltExtToolboxTable = getOSType!("xttt");
243 const __gestaltUSBPrinterSharingVersion = getOSType!("zak ");
244 const __gestaltUSBPrinterSharingAttr = getOSType!("zak ");
245 const __gestaltWorldScriptIIVersion = getOSType!("doub");
246 const __gestaltWorldScriptIIAttr = getOSType!("wsat");
247 }
248 }
249
250 enum
251 {
252 gestaltAddressingModeAttr = getOSType!("addr"),
253 gestalt32BitAddressing = 0,
254 gestalt32BitSysZone = 1,
255 gestalt32BitCapable = 2
256 }
257
258 static if (D_LP64)
259 {
260 enum : long
261 {
262 gestaltAFPClient = getOSType!("afps"),
263 gestaltAFPClientVersionMask = 0x0000FFFF,
264 gestaltAFPClient3_5 = 0x0001,
265 gestaltAFPClient3_6 = 0x0002,
266 gestaltAFPClient3_6_1 = 0x0003,
267 gestaltAFPClient3_6_2 = 0x0004,
268 gestaltAFPClient3_6_3 = 0x0005,
269 gestaltAFPClient3_7 = 0x0006,
270 gestaltAFPClient3_7_2 = 0x0007,
271 gestaltAFPClient3_8 = 0x0008,
272 gestaltAFPClient3_8_1 = 0x0009,
273 gestaltAFPClient3_8_3 = 0x000A,
274 gestaltAFPClient3_8_4 = 0x000B,
275 gestaltAFPClientAttributeMask = 0xFFFF0000L,
276 gestaltAFPClientCfgRsrc = 16,
277 gestaltAFPClientSupportsIP = 29,
278 gestaltAFPClientVMUI = 30,
279 gestaltAFPClientMultiReq = 31
280 }
281 }
282
283 else
284 {
285 enum
286 {
287 gestaltAFPClient = getOSType!("afps"),
288 gestaltAFPClientVersionMask = 0x0000FFFF,
289 gestaltAFPClient3_5 = 0x0001,
290 gestaltAFPClient3_6 = 0x0002,
291 gestaltAFPClient3_6_1 = 0x0003,
292 gestaltAFPClient3_6_2 = 0x0004,
293 gestaltAFPClient3_6_3 = 0x0005,
294 gestaltAFPClient3_7 = 0x0006,
295 gestaltAFPClient3_7_2 = 0x0007,
296 gestaltAFPClient3_8 = 0x0008,
297 gestaltAFPClient3_8_1 = 0x0009,
298 gestaltAFPClient3_8_3 = 0x000A,
299 gestaltAFPClient3_8_4 = 0x000B,
300 gestaltAFPClientAttributeMask = 0xFFFF0000,
301 gestaltAFPClientCfgRsrc = 16,
302 gestaltAFPClientSupportsIP = 29,
303 gestaltAFPClientVMUI = 30,
304 gestaltAFPClientMultiReq = 31
305 }
306 }
307
308
309 enum
310 {
311 gestaltAliasMgrAttr = getOSType!("alis"),
312 gestaltAliasMgrPresent = 0,
313 gestaltAliasMgrSupportsRemoteAppletalk = 1,
314 gestaltAliasMgrSupportsAOCEKeychain = 2,
315 gestaltAliasMgrResolveAliasFileWithMountOptions = 3,
316 gestaltAliasMgrFollowsAliasesWhenResolving = 4,
317 gestaltAliasMgrSupportsExtendedCalls = 5,
318 gestaltAliasMgrSupportsFSCalls = 6,
319 gestaltAliasMgrPrefersPath = 7,
320 gestaltAliasMgrRequiresAccessors = 8
321 }
322
323 enum
324 {
325 gestaltAppearanceAttr = getOSType!("appr"),
326 gestaltAppearanceExists = 0,
327 gestaltAppearanceCompatMode = 1
328 }
329
330 enum
331 {
332 gestaltAppearanceVersion = getOSType!("apvr")
333 }
334
335 enum
336 {
337 gestaltArbitorAttr = getOSType!("arb "),
338 gestaltSerialArbitrationExists = 0
339 }
340
341 enum
342 {
343 gestaltAppleScriptVersion = getOSType!("ascv")
344 }
345
346 enum
347 {
348 gestaltAppleScriptAttr = getOSType!("ascr"),
349 gestaltAppleScriptPresent = 0,
350 gestaltAppleScriptPowerPCSupport = 1
351 }
352
353 enum
354 {
355 gestaltATAAttr = getOSType!("ata "),
356 gestaltATAPresent = 0
357 }
358
359 enum
360 {
361 gestaltATalkVersion = getOSType!("atkv")
362 }
363
364 enum
365 {
366 gestaltAppleTalkVersion = getOSType!("atlk")
367 }
368
369 enum
370 {
371 gestaltAUXVersion = getOSType!("a/ux")
372 }
373
374 enum
375 {
376 gestaltMacOSCompatibilityBoxAttr = getOSType!("bbox"),
377 gestaltMacOSCompatibilityBoxPresent = 0,
378 gestaltMacOSCompatibilityBoxHasSerial = 1,
379 gestaltMacOSCompatibilityBoxless = 2
380 }
381
382 enum
383 {
384 gestaltBusClkSpeed = getOSType!("bclk")
385 }
386
387 enum
388 {
389 gestaltBusClkSpeedMHz = getOSType!("bclm")
390 }
391
392 enum
393 {
394 gestaltCloseViewAttr = getOSType!("BSDa"),
395 gestaltCloseViewEnabled = 0,
396 gestaltCloseViewDisplayMgrFriendly = 1
397 }
398
399 enum
400 {
401 gestaltCarbonVersion = getOSType!("cbon")
402 }
403
404 enum
405 {
406 gestaltCFMAttr = getOSType!("cfrg"),
407 gestaltCFMPresent = 0,
408 gestaltCFMPresentMask = 0x0001,
409 gestaltCFM99Present = 2,
410 gestaltCFM99PresentMask = 0x0004
411 }
412
413 enum
414 {
415 gestaltProcessorCacheLineSize = getOSType!("csiz")
416 }
417
418 enum
419 {
420 gestaltCollectionMgrVersion = getOSType!("cltn")
421 }
422
423 enum
424 {
425 gestaltColorMatchingAttr = getOSType!("cmta"),
426 gestaltHighLevelMatching = 0,
427 gestaltColorMatchingLibLoaded = 1
428 }
429
430 enum
431 {
432 gestaltColorMatchingVersion = getOSType!("cmtc"),
433 gestaltColorSync10 = 0x0100,
434 gestaltColorSync11 = 0x0110,
435 gestaltColorSync104 = 0x0104,
436 gestaltColorSync105 = 0x0105,
437 gestaltColorSync20 = 0x0200,
438 gestaltColorSync21 = 0x0210,
439 gestaltColorSync211 = 0x0211,
440 gestaltColorSync212 = 0x0212,
441 gestaltColorSync213 = 0x0213,
442 gestaltColorSync25 = 0x0250,
443 gestaltColorSync26 = 0x0260,
444 gestaltColorSync261 = 0x0261,
445 gestaltColorSync30 = 0x0300
446 }
447
448 enum
449 {
450 gestaltControlMgrVersion = getOSType!("cmvr")
451 }
452
453 enum
454 {
455 gestaltControlMgrAttr = getOSType!("cntl"),
456 gestaltControlMgrPresent = (1L << 0),
457 gestaltControlMgrPresentBit = 0,
458 gestaltControlMsgPresentMask = (1L << gestaltControlMgrPresentBit)
459 }
460
461 enum
462 {
463 gestaltConnMgrAttr = getOSType!("conn"),
464 gestaltConnMgrPresent = 0,
465 gestaltConnMgrCMSearchFix = 1,
466 gestaltConnMgrErrorString = 2,
467 gestaltConnMgrMultiAsyncIO = 3
468 }
469
470 enum
471 {
472 gestaltColorPickerVersion = getOSType!("cpkr"),
473 gestaltColorPicker = getOSType!("cpkr")
474 }
475
476 enum
477 {
478 gestaltComponentMgr = getOSType!("cpnt"),
479 gestaltComponentPlatform = getOSType!("copl")
480 }
481
482 enum
483 {
484 gestaltNativeCPUtype = getOSType!("cput"),
485 gestaltNativeCPUfamily = getOSType!("cpuf"),
486 gestaltCPU68000 = 0,
487 gestaltCPU68010 = 1,
488 gestaltCPU68020 = 2,
489 gestaltCPU68030 = 3,
490 gestaltCPU68040 = 4,
491 gestaltCPU601 = 0x0101,
492 gestaltCPU603 = 0x0103,
493 gestaltCPU604 = 0x0104,
494 gestaltCPU603e = 0x0106,
495 gestaltCPU603ev = 0x0107,
496 gestaltCPU750 = 0x0108,
497 gestaltCPU604e = 0x0109,
498 gestaltCPU604ev = 0x010A,
499 gestaltCPUG4 = 0x010C,
500 gestaltCPUG47450 = 0x0110
501 }
502
503 enum
504 {
505 gestaltCPUApollo = 0x0111,
506 gestaltCPUG47447 = 0x0112,
507 gestaltCPU750FX = 0x0120,
508 gestaltCPU970 = 0x0139,
509 gestaltCPU970FX = 0x013C,
510 gestaltCPU970MP = 0x0144
511 }
512
513 enum
514 {
515 gestaltCPU486 = getOSType!("i486"),
516 gestaltCPUPentium = getOSType!("i586"),
517 gestaltCPUPentiumPro = getOSType!("i5pr"),
518 gestaltCPUPentiumII = getOSType!("i5ii"),
519 gestaltCPUX86 = getOSType!("ixxx"),
520 gestaltCPUPentium4 = getOSType!("i5iv")
521 }
522
523 enum
524 {
525 gestaltCRMAttr = getOSType!("crm "),
526 gestaltCRMPresent = 0,
527 gestaltCRMPersistentFix = 1,
528 gestaltCRMToolRsrcCalls = 2
529 }
530
531 enum
532 {
533 gestaltControlStripVersion = getOSType!("csvr")
534 }
535
536 enum
537 {
538 gestaltCountOfCPUs = getOSType!("cpus")
539 }
540
541 enum
542 {
543 gestaltCTBVersion = getOSType!("ctbv")
544 }
545
546 enum
547 {
548 gestaltDBAccessMgrAttr = getOSType!("dbac"),
549 gestaltDBAccessMgrPresent = 0
550 }
551
552 enum
553 {
554 gestaltDiskCacheSize = getOSType!("dcsz")
555 }
556
557 enum
558 {
559 gestaltSDPFindVersion = getOSType!("dfnd")
560 }
561
562 enum
563 {
564 gestaltDictionaryMgrAttr = getOSType!("dict"),
565 gestaltDictionaryMgrPresent = 0
566 }
567
568 enum
569 {
570 gestaltDITLExtAttr = getOSType!("ditl"),
571 gestaltDITLExtPresent = 0,
572 gestaltDITLExtSupportsIctb = 1
573 }
574
575 enum
576 {
577 gestaltDialogMgrAttr = getOSType!("dlog"),
578 gestaltDialogMgrPresent = (1L << 0),
579 gestaltDialogMgrPresentBit = 0,
580 gestaltDialogMgrHasAquaAlertBit = 2,
581 gestaltDialogMgrPresentMask = (1L << gestaltDialogMgrPresentBit),
582 gestaltDialogMgrHasAquaAlertMask = (1L << gestaltDialogMgrHasAquaAlertBit),
583 gestaltDialogMsgPresentMask = gestaltDialogMgrPresentMask
584 }
585
586 enum
587 {
588 gestaltDesktopPicturesAttr = getOSType!("dkpx"),
589 gestaltDesktopPicturesInstalled = 0,
590 gestaltDesktopPicturesDisplayed = 1
591 }
592
593 enum
594 {
595 gestaltDisplayMgrVers = getOSType!("dplv")
596 }
597
598 enum
599 {
600 gestaltDisplayMgrAttr = getOSType!("dply"),
601 gestaltDisplayMgrPresent = 0,
602 gestaltDisplayMgrCanSwitchMirrored = 2,
603 gestaltDisplayMgrSetDepthNotifies = 3,
604 gestaltDisplayMgrCanConfirm = 4,
605 gestaltDisplayMgrColorSyncAware = 5,
606 gestaltDisplayMgrGeneratesProfiles = 6,
607 gestaltDisplayMgrSleepNotifies = 7
608 }
609
610 enum
611 {
612 gestaltDragMgrAttr = getOSType!("drag"),
613 gestaltDragMgrPresent = 0,
614 gestaltDragMgrFloatingWind = 1,
615 gestaltPPCDragLibPresent = 2,
616 gestaltDragMgrHasImageSupport = 3,
617 gestaltCanStartDragInFloatWindow = 4,
618 gestaltSetDragImageUpdates = 5
619 }
620
621 enum
622 {
623 gestaltDrawSprocketVersion = getOSType!("dspv")
624 }
625
626 enum
627 {
628 gestaltDigitalSignatureVersion = getOSType!("dsig")
629 }
630
631 enum
632 {
633 gestaltDTPFeatures = getOSType!("dtpf"),
634 kDTPThirdPartySupported = 0x00000004
635 }
636
637 enum
638 {
639 gestaltDTPInfo = getOSType!("dtpx")
640 }
641
642 enum
643 {
644 gestaltEasyAccessAttr = getOSType!("easy"),
645 gestaltEasyAccessOff = 0,
646 gestaltEasyAccessOn = 1,
647 gestaltEasyAccessSticky = 2,
648 gestaltEasyAccessLocked = 3
649 }
650
651 enum
652 {
653 gestaltEditionMgrAttr = getOSType!("edtn"),
654 gestaltEditionMgrPresent = 0,
655 gestaltEditionMgrTranslationAware = 1
656 }
657
658 enum
659 {
660 gestaltAppleEventsAttr = getOSType!("evnt"),
661 gestaltAppleEventsPresent = 0,
662 gestaltScriptingSupport = 1,
663 gestaltOSLInSystem = 2,
664 gestaltSupportsApplicationURL = 4
665 }
666
667 enum
668 {
669 gestaltExtensionTableVersion = getOSType!("etbl")
670 }
671
672 enum
673 {
674 gestaltFBCIndexingState = getOSType!("fbci"),
675 gestaltFBCindexingSafe = 0,
676 gestaltFBCindexingCritical = 1
677 }
678
679 enum
680 {
681 gestaltFBCVersion = getOSType!("fbcv"),
682 gestaltFBCCurrentVersion = 0x0011,
683 gestaltOSXFBCCurrentVersion = 0x0100
684 }
685
686 enum
687 {
688 gestaltFileMappingAttr = getOSType!("flmp"),
689 gestaltFileMappingPresent = 0,
690 gestaltFileMappingMultipleFilesFix = 1
691 }
692
693 enum
694 {
695 gestaltFloppyAttr = getOSType!("flpy"),
696 gestaltFloppyIsMFMOnly = 0,
697 gestaltFloppyIsManualEject = 1,
698 gestaltFloppyUsesDiskInPlace = 2
699 }
700
701 enum
702 {
703 gestaltFinderAttr = getOSType!("fndr"),
704 gestaltFinderDropEvent = 0,
705 gestaltFinderMagicPlacement = 1,
706 gestaltFinderCallsAEProcess = 2,
707 gestaltOSLCompliantFinder = 3,
708 gestaltFinderSupports4GBVolumes = 4,
709 gestaltFinderHasClippings = 6,
710 gestaltFinderFullDragManagerSupport = 7,
711 gestaltFinderFloppyRootComments = 8,
712 gestaltFinderLargeAndNotSavedFlavorsOK = 9,
713 gestaltFinderUsesExtensibleFolderManager = 10,
714 gestaltFinderUnderstandsRedirectedDesktopFolder = 11
715 }
716
717 enum
718 {
719 gestaltFindFolderAttr = getOSType!("fold"),
720 gestaltFindFolderPresent = 0,
721 gestaltFolderDescSupport = 1,
722 gestaltFolderMgrFollowsAliasesWhenResolving = 2,
723 gestaltFolderMgrSupportsExtendedCalls = 3,
724 gestaltFolderMgrSupportsDomains = 4,
725 gestaltFolderMgrSupportsFSCalls = 5
726 }
727
728 enum
729 {
730 gestaltFindFolderRedirectionAttr = getOSType!("fole")
731 }
732
733 enum
734 {
735 gestaltFontMgrAttr = getOSType!("font"),
736 gestaltOutlineFonts = 0
737 }
738
739 enum
740 {
741 gestaltFPUType = getOSType!("fpu "),
742 gestaltNoFPU = 0,
743 gestalt68881 = 1,
744 gestalt68882 = 2,
745 gestalt68040FPU = 3
746 }
747
748 enum
749 {
750 gestaltFSAttr = getOSType!("fs "),
751 gestaltFullExtFSDispatching = 0,
752 gestaltHasFSSpecCalls = 1,
753 gestaltHasFileSystemManager = 2,
754 gestaltFSMDoesDynamicLoad = 3,
755 gestaltFSSupports4GBVols = 4,
756 gestaltFSSupports2TBVols = 5,
757 gestaltHasExtendedDiskInit = 6,
758 gestaltDTMgrSupportsFSM = 7,
759 gestaltFSNoMFSVols = 8,
760 gestaltFSSupportsHFSPlusVols = 9,
761 gestaltFSIncompatibleDFA82 = 10
762 }
763
764 enum
765 {
766 gestaltFSSupportsDirectIO = 11
767 }
768
769 enum
770 {
771 gestaltHasHFSPlusAPIs = 12,
772 gestaltMustUseFCBAccessors = 13,
773 gestaltFSUsesPOSIXPathsForConversion = 14,
774 gestaltFSSupportsExclusiveLocks = 15,
775 gestaltFSSupportsHardLinkDetection = 16,
776 gestaltFSAllowsConcurrentAsyncIO = 17
777 }
778
779 enum
780 {
781 gestaltAdminFeaturesFlagsAttr = getOSType!("fred"),
782 gestaltFinderUsesSpecialOpenFoldersFile = 0
783 }
784
785 enum
786 {
787 gestaltFSMVersion = getOSType!("fsm ")
788 }
789
790 enum
791 {
792 gestaltFXfrMgrAttr = getOSType!("fxfr"),
793 gestaltFXfrMgrPresent = 0,
794 gestaltFXfrMgrMultiFile = 1,
795 gestaltFXfrMgrErrorString = 2,
796 gestaltFXfrMgrAsync = 3
797 }
798
799 enum
800 {
801 gestaltGraphicsAttr = getOSType!("gfxa"),
802 gestaltGraphicsIsDebugging = 0x00000001,
803 gestaltGraphicsIsLoaded = 0x00000002,
804 gestaltGraphicsIsPowerPC = 0x00000004
805 }
806
807 enum
808 {
809 gestaltGraphicsVersion = getOSType!("grfx"),
810 gestaltCurrentGraphicsVersion = 0x00010200
811 }
812
813 enum
814 {
815 gestaltHardwareAttr = getOSType!("hdwr"),
816 gestaltHasVIA1 = 0,
817 gestaltHasVIA2 = 1,
818 gestaltHasASC = 3,
819 gestaltHasSCC = 4,
820 gestaltHasSCSI = 7,
821 gestaltHasSoftPowerOff = 19,
822 gestaltHasSCSI961 = 21,
823 gestaltHasSCSI962 = 22,
824 gestaltHasUniversalROM = 24,
825 gestaltHasEnhancedLtalk = 30
826 }
827
828 enum
829 {
830 gestaltHelpMgrAttr = getOSType!("help"),
831 gestaltHelpMgrPresent = 0,
832 gestaltHelpMgrExtensions = 1,
833 gestaltAppleGuideIsDebug = 30,
834 gestaltAppleGuidePresent = 31
835 }
836
837 enum
838 {
839 gestaltHardwareVendorCode = getOSType!("hrad"),
840 gestaltHardwareVendorApple = getOSType!("Appl")
841 }
842
843 enum
844 {
845 gestaltCompressionMgr = getOSType!("icmp")
846 }
847
848 enum
849 {
850 gestaltIconUtilitiesAttr = getOSType!("icon"),
851 gestaltIconUtilitiesPresent = 0,
852 gestaltIconUtilitiesHas48PixelIcons = 1,
853 gestaltIconUtilitiesHas32BitIcons = 2,
854 gestaltIconUtilitiesHas8BitDeepMasks = 3,
855 gestaltIconUtilitiesHasIconServices = 4
856 }
857
858 enum
859 {
860 gestaltInternalDisplay = getOSType!("idsp")
861 }
862
863 enum
864 {
865 gestaltKeyboardType = getOSType!("kbd "),
866 gestaltMacKbd = 1,
867 gestaltMacAndPad = 2,
868 gestaltMacPlusKbd = 3,
869 gestaltUnknownThirdPartyKbd = 3,
870 gestaltExtADBKbd = 4,
871 gestaltStdADBKbd = 5,
872 gestaltPrtblADBKbd = 6,
873 gestaltPrtblISOKbd = 7,
874 gestaltStdISOADBKbd = 8,
875 gestaltExtISOADBKbd = 9,
876 gestaltADBKbdII = 10,
877 gestaltADBISOKbdII = 11,
878 gestaltPwrBookADBKbd = 12,
879 gestaltPwrBookISOADBKbd = 13,
880 gestaltAppleAdjustKeypad = 14,
881 gestaltAppleAdjustADBKbd = 15,
882 gestaltAppleAdjustISOKbd = 16,
883 gestaltJapanAdjustADBKbd = 17,
884 gestaltPwrBkExtISOKbd = 20,
885 gestaltPwrBkExtJISKbd = 21,
886 gestaltPwrBkExtADBKbd = 24,
887 gestaltPS2Keyboard = 27,
888 gestaltPwrBkSubDomKbd = 28,
889 gestaltPwrBkSubISOKbd = 29,
890 gestaltPwrBkSubJISKbd = 30,
891 gestaltPortableUSBANSIKbd = 37,
892 gestaltPortableUSBISOKbd = 38,
893 gestaltPortableUSBJISKbd = 39,
894 gestaltThirdPartyANSIKbd = 40,
895 gestaltThirdPartyISOKbd = 41,
896 gestaltThirdPartyJISKbd = 42,
897 gestaltPwrBkEKDomKbd = 195,
898 gestaltPwrBkEKISOKbd = 196,
899 gestaltPwrBkEKJISKbd = 197,
900 gestaltUSBCosmoANSIKbd = 198,
901 gestaltUSBCosmoISOKbd = 199,
902 gestaltUSBCosmoJISKbd = 200,
903 gestaltPwrBk99JISKbd = 201,
904 gestaltUSBAndyANSIKbd = 204,
905 gestaltUSBAndyISOKbd = 205,
906 gestaltUSBAndyJISKbd = 206
907 }
908
909 enum
910 {
911 gestaltPortable2001ANSIKbd = 202,
912 gestaltPortable2001ISOKbd = 203,
913 gestaltPortable2001JISKbd = 207
914 }
915
916 enum
917 {
918 gestaltUSBProF16ANSIKbd = 34,
919 gestaltUSBProF16ISOKbd = 35,
920 gestaltUSBProF16JISKbd = 36,
921 gestaltProF16ANSIKbd = 31,
922 gestaltProF16ISOKbd = 32,
923 gestaltProF16JISKbd = 33
924 }
925
926 enum
927 {
928 gestaltUDFSupport = getOSType!("kudf")
929 }
930
931 enum
932 {
933 gestaltLowMemorySize = getOSType!("lmem")
934 }
935
936 enum
937 {
938 gestaltLogicalRAMSize = getOSType!("lram")
939 }
940
941 enum
942 {
943 gestaltMachineType = getOSType!("mach"),
944 gestaltClassic = 1,
945 gestaltMacXL = 2,
946 gestaltMac512KE = 3,
947 gestaltMacPlus = 4,
948 gestaltMacSE = 5,
949 gestaltMacII = 6,
950 gestaltMacIIx = 7,
951 gestaltMacIIcx = 8,
952 gestaltMacSE030 = 9,
953 gestaltPortable = 10,
954 gestaltMacIIci = 11,
955 gestaltPowerMac8100_120 = 12,
956 gestaltMacIIfx = 13,
957 gestaltMacClassic = 17,
958 gestaltMacIIsi = 18,
959 gestaltMacLC = 19,
960 gestaltMacQuadra900 = 20,
961 gestaltPowerBook170 = 21,
962 gestaltMacQuadra700 = 22,
963 gestaltClassicII = 23,
964 gestaltPowerBook100 = 24,
965 gestaltPowerBook140 = 25,
966 gestaltMacQuadra950 = 26,
967 gestaltMacLCIII = 27,
968 gestaltPerforma450 = gestaltMacLCIII,
969 gestaltPowerBookDuo210 = 29,
970 gestaltMacCentris650 = 30,
971 gestaltPowerBookDuo230 = 32,
972 gestaltPowerBook180 = 33,
973 gestaltPowerBook160 = 34,
974 gestaltMacQuadra800 = 35,
975 gestaltMacQuadra650 = 36,
976 gestaltMacLCII = 37,
977 gestaltPowerBookDuo250 = 38,
978 gestaltAWS9150_80 = 39,
979 gestaltPowerMac8100_110 = 40,
980 gestaltAWS8150_110 = gestaltPowerMac8100_110,
981 gestaltPowerMac5200 = 41,
982 gestaltPowerMac5260 = gestaltPowerMac5200,
983 gestaltPerforma5300 = gestaltPowerMac5200,
984 gestaltPowerMac6200 = 42,
985 gestaltPerforma6300 = gestaltPowerMac6200,
986 gestaltMacIIvi = 44,
987 gestaltMacIIvm = 45,
988 gestaltPerforma600 = gestaltMacIIvm,
989 gestaltPowerMac7100_80 = 47,
990 gestaltMacIIvx = 48,
991 gestaltMacColorClassic = 49,
992 gestaltPerforma250 = gestaltMacColorClassic,
993 gestaltPowerBook165c = 50,
994 gestaltMacCentris610 = 52,
995 gestaltMacQuadra610 = 53,
996 gestaltPowerBook145 = 54,
997 gestaltPowerMac8100_100 = 55,
998 gestaltMacLC520 = 56,
999 gestaltAWS9150_120 = 57,
1000 gestaltPowerMac6400 = 58,
1001 gestaltPerforma6400 = gestaltPowerMac6400,
1002 gestaltPerforma6360 = gestaltPerforma6400,
1003 gestaltMacCentris660AV = 60,
1004 gestaltMacQuadra660AV = gestaltMacCentris660AV,
1005 gestaltPerforma46x = 62,
1006 gestaltPowerMac8100_80 = 65,
1007 gestaltAWS8150_80 = gestaltPowerMac8100_80,
1008 gestaltPowerMac9500 = 67,
1009 gestaltPowerMac9600 = gestaltPowerMac9500,
1010 gestaltPowerMac7500 = 68,
1011 gestaltPowerMac7600 = gestaltPowerMac7500,
1012 gestaltPowerMac8500 = 69,
1013 gestaltPowerMac8600 = gestaltPowerMac8500,
1014 gestaltAWS8550 = gestaltPowerMac7500,
1015 gestaltPowerBook180c = 71,
1016 gestaltPowerBook520 = 72,
1017 gestaltPowerBook520c = gestaltPowerBook520,
1018 gestaltPowerBook540 = gestaltPowerBook520,
1019 gestaltPowerBook540c = gestaltPowerBook520,
1020 gestaltPowerMac5400 = 74,
1021 gestaltPowerMac6100_60 = 75,
1022 gestaltAWS6150_60 = gestaltPowerMac6100_60,
1023 gestaltPowerBookDuo270c = 77,
1024 gestaltMacQuadra840AV = 78,
1025 gestaltPerforma550 = 80,
1026 gestaltPowerBook165 = 84,
1027 gestaltPowerBook190 = 85,
1028 gestaltMacTV = 88,
1029 gestaltMacLC475 = 89,
1030 gestaltPerforma47x = gestaltMacLC475,
1031 gestaltMacLC575 = 92,
1032 gestaltMacQuadra605 = 94,
1033 gestaltMacQuadra630 = 98,
1034 gestaltMacLC580 = 99,
1035 gestaltPerforma580 = gestaltMacLC580,
1036 gestaltPowerMac6100_66 = 100,
1037 gestaltAWS6150_66 = gestaltPowerMac6100_66,
1038 gestaltPowerBookDuo280 = 102,
1039 gestaltPowerBookDuo280c = 103,
1040 gestaltPowerMacLC475 = 104,
1041 gestaltPowerMacPerforma47x = gestaltPowerMacLC475,
1042 gestaltPowerMacLC575 = 105,
1043 gestaltPowerMacPerforma57x = gestaltPowerMacLC575,
1044 gestaltPowerMacQuadra630 = 106,
1045 gestaltPowerMacLC630 = gestaltPowerMacQuadra630,
1046 gestaltPowerMacPerforma63x = gestaltPowerMacQuadra630,
1047 gestaltPowerMac7200 = 108,
1048 gestaltPowerMac7300 = 109,
1049 gestaltPowerMac7100_66 = 112,
1050 gestaltPowerBook150 = 115,
1051 gestaltPowerMacQuadra700 = 116,
1052 gestaltPowerMacQuadra900 = 117,
1053 gestaltPowerMacQuadra950 = 118,
1054 gestaltPowerMacCentris610 = 119,
1055 gestaltPowerMacCentris650 = 120,
1056 gestaltPowerMacQuadra610 = 121,
1057 gestaltPowerMacQuadra650 = 122,
1058 gestaltPowerMacQuadra800 = 123,
1059 gestaltPowerBookDuo2300 = 124,
1060 gestaltPowerBook500PPCUpgrade = 126,
1061 gestaltPowerBook5300 = 128,
1062 gestaltPowerBook1400 = 310,
1063 gestaltPowerBook3400 = 306,
1064 gestaltPowerBook2400 = 307,
1065 gestaltPowerBookG3Series = 312,
1066 gestaltPowerBookG3 = 313,
1067 gestaltPowerBookG3Series2 = 314,
1068 gestaltPowerMacNewWorld = 406,
1069 gestaltPowerMacG3 = 510,
1070 gestaltPowerMac5500 = 512,
1071 gestalt20thAnniversary = gestaltPowerMac5500,
1072 gestaltPowerMac6500 = 513,
1073 gestaltPowerMac4400_160 = 514,
1074 gestaltPowerMac4400 = 515,
1075 gestaltMacOSCompatibility = 1206
1076 }
1077
1078 enum
1079 {
1080 gestaltQuadra605 = gestaltMacQuadra605,
1081 gestaltQuadra610 = gestaltMacQuadra610,
1082 gestaltQuadra630 = gestaltMacQuadra630,
1083 gestaltQuadra650 = gestaltMacQuadra650,
1084 gestaltQuadra660AV = gestaltMacQuadra660AV,
1085 gestaltQuadra700 = gestaltMacQuadra700,
1086 gestaltQuadra800 = gestaltMacQuadra800,
1087 gestaltQuadra840AV = gestaltMacQuadra840AV,
1088 gestaltQuadra900 = gestaltMacQuadra900,
1089 gestaltQuadra950 = gestaltMacQuadra950
1090 }
1091
1092 enum
1093 {
1094 kMachineNameStrID = -16395
1095 }
1096
1097 enum
1098 {
1099 gestaltSMPMailerVersion = getOSType!("malr")
1100 }
1101
1102 enum
1103 {
1104 gestaltMediaBay = getOSType!("mbeh"),
1105 gestaltMBLegacy = 0,
1106 gestaltMBSingleBay = 1,
1107 gestaltMBMultipleBays = 2
1108 }
1109
1110 enum
1111 {
1112 gestaltMessageMgrVersion = getOSType!("mess")
1113 }
1114
1115 enum
1116 {
1117 gestaltMenuMgrAttr = getOSType!("menu"),
1118 gestaltMenuMgrPresent = (1L << 0),
1119 gestaltMenuMgrPresentBit = 0,
1120 gestaltMenuMgrAquaLayoutBit = 1,
1121 gestaltMenuMgrMultipleItemsWithCommandIDBit = 2,
1122 gestaltMenuMgrRetainsIconRefBit = 3,
1123 gestaltMenuMgrSendsMenuBoundsToDefProcBit = 4,
1124 gestaltMenuMgrMoreThanFiveMenusDeepBit = 5,
1125 gestaltMenuMgrCGImageMenuTitleBit = 6,
1126 gestaltMenuMgrPresentMask = (1L << gestaltMenuMgrPresentBit),
1127 gestaltMenuMgrAquaLayoutMask = (1L << gestaltMenuMgrAquaLayoutBit),
1128 gestaltMenuMgrMultipleItemsWithCommandIDMask = (1L << gestaltMenuMgrMultipleItemsWithCommandIDBit),
1129 gestaltMenuMgrRetainsIconRefMask = (1L << gestaltMenuMgrRetainsIconRefBit),
1130 gestaltMenuMgrSendsMenuBoundsToDefProcMask = (1L << gestaltMenuMgrSendsMenuBoundsToDefProcBit),
1131 gestaltMenuMgrMoreThanFiveMenusDeepMask = (1L << gestaltMenuMgrMoreThanFiveMenusDeepBit),
1132 gestaltMenuMgrCGImageMenuTitleMask = (1L << gestaltMenuMgrCGImageMenuTitleBit)
1133 }
1134
1135 enum
1136 {
1137 gestaltMultipleUsersState = getOSType!("mfdr")
1138 }
1139
1140 enum
1141 {
1142 gestaltMachineIcon = getOSType!("micn")
1143 }
1144
1145 enum
1146 {
1147 gestaltMiscAttr = getOSType!("misc"),
1148 gestaltScrollingThrottle = 0,
1149 gestaltSquareMenuBar = 2
1150 }
1151
1152 enum
1153 {
1154 gestaltMixedModeVersion = getOSType!("mixd")
1155 }
1156
1157 enum
1158 {
1159 gestaltMixedModeAttr = getOSType!("mixd"),
1160 gestaltMixedModePowerPC = 0,
1161 gestaltPowerPCAware = 0,
1162 gestaltMixedModeCFM68K = 1,
1163 gestaltMixedModeCFM68KHasTrap = 2,
1164 gestaltMixedModeCFM68KHasState = 3
1165 }
1166
1167 enum
1168 {
1169 gestaltQuickTimeConferencing = getOSType!("mtlk")
1170 }
1171
1172 enum
1173 {
1174 gestaltMemoryMapAttr = getOSType!("mmap"),
1175 gestaltMemoryMapSparse = 0
1176 }
1177
1178 enum
1179 {
1180 gestaltMMUType = getOSType!("mmu "),
1181 gestaltNoMMU = 0,
1182 gestaltAMU = 1,
1183 gestalt68851 = 2,
1184 gestalt68030MMU = 3,
1185 gestalt68040MMU = 4,
1186 gestaltEMMU1 = 5
1187 }
1188
1189 enum
1190 {
1191 gestaltUserVisibleMachineName = getOSType!("mnam")
1192 }
1193
1194 enum
1195 {
1196 gestaltMPCallableAPIsAttr = getOSType!("mpsc"),
1197 gestaltMPFileManager = 0,
1198 gestaltMPDeviceManager = 1,
1199 gestaltMPTrapCalls = 2
1200 }
1201
1202 enum
1203 {
1204 gestaltStdNBPAttr = getOSType!("nlup"),
1205 gestaltStdNBPPresent = 0,
1206 gestaltStdNBPSupportsAutoPosition = 1
1207 }
1208
1209 enum
1210 {
1211 gestaltNotificationMgrAttr = getOSType!("nmgr"),
1212 gestaltNotificationPresent = 0
1213 }
1214
1215 enum
1216 {
1217 gestaltNameRegistryVersion = getOSType!("nreg")
1218 }
1219
1220 enum
1221 {
1222 gestaltNuBusSlotCount = getOSType!("nubs")
1223 }
1224
1225 enum
1226 {
1227 gestaltOCEToolboxVersion = getOSType!("ocet"),
1228 gestaltOCETB = 0x0102,
1229 gestaltSFServer = 0x0100
1230 }
1231
1232 enum
1233 {
1234 gestaltOCEToolboxAttr = getOSType!("oceu"),
1235 gestaltOCETBPresent = 0x01,
1236 gestaltOCETBAvailable = 0x02,
1237 gestaltOCESFServerAvailable = 0x04,
1238 gestaltOCETBNativeGlueAvailable = 0x10
1239 }
1240
1241 enum
1242 {
1243 gestaltOpenFirmwareInfo = getOSType!("opfw")
1244 }
1245
1246 enum
1247 {
1248 gestaltOSAttr = getOSType!("os "),
1249 gestaltSysZoneGrowable = 0,
1250 gestaltLaunchCanReturn = 1,
1251 gestaltLaunchFullFileSpec = 2,
1252 gestaltLaunchControl = 3,
1253 gestaltTempMemSupport = 4,
1254 gestaltRealTempMemory = 5,
1255 gestaltTempMemTracked = 6,
1256 gestaltIPCSupport = 7,
1257 gestaltSysDebuggerSupport = 8,
1258 gestaltNativeProcessMgrBit = 19,
1259 gestaltAltivecRegistersSwappedCorrectlyBit = 20
1260 }
1261
1262 enum
1263 {
1264 gestaltOSTable = getOSType!("ostt")
1265 }
1266
1267 enum
1268 {
1269 gestaltOpenTptNetworkSetup = getOSType!("otcf"),
1270 gestaltOpenTptNetworkSetupLegacyImport = 0,
1271 gestaltOpenTptNetworkSetupLegacyExport = 1,
1272 gestaltOpenTptNetworkSetupSupportsMultihoming = 2
1273 }
1274
1275 enum
1276 {
1277 gestaltOpenTptNetworkSetupVersion = getOSType!("otcv")
1278 }
1279
1280 enum
1281 {
1282 gestaltOpenTptRemoteAccess = getOSType!("otra"),
1283 gestaltOpenTptRemoteAccessPresent = 0,
1284 gestaltOpenTptRemoteAccessLoaded = 1,
1285 gestaltOpenTptRemoteAccessClientOnly = 2,
1286 gestaltOpenTptRemoteAccessPServer = 3,
1287 gestaltOpenTptRemoteAccessMPServer = 4,
1288 gestaltOpenTptPPPPresent = 5,
1289 gestaltOpenTptARAPPresent = 6
1290 }
1291
1292 enum
1293 {
1294 gestaltOpenTptRemoteAccessVersion = getOSType!("otrv")
1295 }
1296
1297 enum
1298 {
1299 gestaltOpenTptVersions = getOSType!("otvr")
1300 }
1301
1302 enum
1303 {
1304 gestaltOpenTpt = getOSType!("otan"),
1305 gestaltOpenTptPresentMask = 0x00000001,
1306 gestaltOpenTptLoadedMask = 0x00000002,
1307 gestaltOpenTptAppleTalkPresentMask = 0x00000004,
1308 gestaltOpenTptAppleTalkLoadedMask = 0x00000008,
1309 gestaltOpenTptTCPPresentMask = 0x00000010,
1310 gestaltOpenTptTCPLoadedMask = 0x00000020,
1311 gestaltOpenTptIPXSPXPresentMask = 0x00000040,
1312 gestaltOpenTptIPXSPXLoadedMask = 0x00000080,
1313 gestaltOpenTptPresentBit = 0,
1314 gestaltOpenTptLoadedBit = 1,
1315 gestaltOpenTptAppleTalkPresentBit = 2,
1316 gestaltOpenTptAppleTalkLoadedBit = 3,
1317 gestaltOpenTptTCPPresentBit = 4,
1318 gestaltOpenTptTCPLoadedBit = 5,
1319 gestaltOpenTptIPXSPXPresentBit = 6,
1320 gestaltOpenTptIPXSPXLoadedBit = 7
1321 }
1322
1323 enum
1324 {
1325 gestaltPCCard = getOSType!("pccd"),
1326 gestaltCardServicesPresent = 0,
1327 gestaltPCCardFamilyPresent = 1,
1328 gestaltPCCardHasPowerControl = 2,
1329 gestaltPCCardSupportsCardBus = 3
1330 }
1331
1332 enum
1333 {
1334 gestaltProcClkSpeed = getOSType!("pclk")
1335 }
1336
1337 enum
1338 {
1339 gestaltProcClkSpeedMHz = getOSType!("mclk")
1340 }
1341
1342 enum
1343 {
1344 gestaltPCXAttr = getOSType!("pcxg"),
1345 gestaltPCXHas8and16BitFAT = 0,
1346 gestaltPCXHasProDOS = 1,
1347 gestaltPCXNewUI = 2,
1348 gestaltPCXUseICMapping = 3
1349 }
1350
1351 enum
1352 {
1353 gestaltLogicalPageSize = getOSType!("pgsz")
1354 }
1355
1356 enum
1357 {
1358 gestaltScreenCaptureMain = getOSType!("pic1"),
1359 gestaltScreenCaptureDir = getOSType!("pic2")
1360 }
1361
1362 enum
1363 {
1364 gestaltGXPrintingMgrVersion = getOSType!("pmgr")
1365 }
1366
1367 enum
1368 {
1369 gestaltPopupAttr = getOSType!("pop!"),
1370 gestaltPopupPresent = 0
1371 }
1372
1373 enum
1374 {
1375 gestaltPowerMgrAttr = getOSType!("powr"),
1376 gestaltPMgrExists = 0,
1377 gestaltPMgrCPUIdle = 1,
1378 gestaltPMgrSCC = 2,
1379 gestaltPMgrSound = 3,
1380 gestaltPMgrDispatchExists = 4,
1381 gestaltPMgrSupportsAVPowerStateAtSleepWake = 5
1382 }
1383
1384 enum
1385 {
1386 gestaltPowerMgrVers = getOSType!("pwrv")
1387 }
1388
1389 enum
1390 {
1391 gestaltPPCToolboxAttr = getOSType!("ppc "),
1392 gestaltPPCToolboxPresent = 0x0000,
1393 gestaltPPCSupportsRealTime = 0x1000,
1394 gestaltPPCSupportsIncoming = 0x0001,
1395 gestaltPPCSupportsOutGoing = 0x0002,
1396 gestaltPPCSupportsTCP_IP = 0x0004,
1397 gestaltPPCSupportsIncomingAppleTalk = 0x0010,
1398 gestaltPPCSupportsIncomingTCP_IP = 0x0020,
1399 gestaltPPCSupportsOutgoingAppleTalk = 0x0100,
1400 gestaltPPCSupportsOutgoingTCP_IP = 0x0200
1401 }
1402
1403 enum
1404 {
1405 gestaltPowerPCProcessorFeatures = getOSType!("ppcf"),
1406 gestaltPowerPCHasGraphicsInstructions = 0,
1407 gestaltPowerPCHasSTFIWXInstruction = 1,
1408 gestaltPowerPCHasSquareRootInstructions = 2,
1409 gestaltPowerPCHasDCBAInstruction = 3,
1410 gestaltPowerPCHasVectorInstructions = 4,
1411 gestaltPowerPCHasDataStreams = 5,
1412 gestaltPowerPCHas64BitSupport = 6,
1413 gestaltPowerPCHasDCBTStreams = 7,
1414 gestaltPowerPCASArchitecture = 8,
1415 gestaltPowerPCIgnoresDCBST = 9
1416 }
1417
1418 enum
1419 {
1420 gestaltProcessorType = getOSType!("proc"),
1421 gestalt68000 = 1,
1422 gestalt68010 = 2,
1423 gestalt68020 = 3,
1424 gestalt68030 = 4,
1425 gestalt68040 = 5
1426 }
1427
1428 enum
1429 {
1430 gestaltSDPPromptVersion = getOSType!("prpv")
1431 }
1432
1433 enum
1434 {
1435 gestaltParityAttr = getOSType!("prty"),
1436 gestaltHasParityCapability = 0,
1437 gestaltParityEnabled = 1
1438 }
1439
1440 enum
1441 {
1442 gestaltQD3DVersion = getOSType!("q3v ")
1443 }
1444
1445 enum
1446 {
1447 gestaltQD3DViewer = getOSType!("q3vc"),
1448 gestaltQD3DViewerPresent = 0
1449 }
1450
1451 enum
1452 {
1453 gestaltQuickdrawVersion = getOSType!("qd "),
1454 gestaltOriginalQD = 0x0000,
1455 gestalt8BitQD = 0x0100,
1456 gestalt32BitQD = 0x0200,
1457 gestalt32BitQD11 = 0x0201,
1458 gestalt32BitQD12 = 0x0220,
1459 gestalt32BitQD13 = 0x0230,
1460 gestaltAllegroQD = 0x0250,
1461 gestaltMacOSXQD = 0x0300
1462 }
1463
1464 enum
1465 {
1466 gestaltQD3D = getOSType!("qd3d"),
1467 gestaltQD3DPresent = 0
1468 }
1469
1470 enum
1471 {
1472 gestaltGXVersion = getOSType!("qdgx")
1473 }
1474
1475 enum
1476 {
1477 gestaltQuickdrawFeatures = getOSType!("qdrw"),
1478 gestaltHasColor = 0,
1479 gestaltHasDeepGWorlds = 1,
1480 gestaltHasDirectPixMaps = 2,
1481 gestaltHasGrayishTextOr = 3,
1482 gestaltSupportsMirroring = 4,
1483 gestaltQDHasLongRowBytes = 5
1484 }
1485
1486 enum
1487 {
1488 gestaltQDTextVersion = getOSType!("qdtx"),
1489 gestaltOriginalQDText = 0x0000,
1490 gestaltAllegroQDText = 0x0100,
1491 gestaltMacOSXQDText = 0x0200
1492 }
1493
1494 enum
1495 {
1496 gestaltQDTextFeatures = getOSType!("qdtf"),
1497 gestaltWSIISupport = 0,
1498 gestaltSbitFontSupport = 1,
1499 gestaltAntiAliasedTextAvailable = 2,
1500 gestaltOFA2available = 3,
1501 gestaltCreatesAliasFontRsrc = 4,
1502 gestaltNativeType1FontSupport = 5,
1503 gestaltCanUseCGTextRendering = 6
1504 }
1505
1506 enum
1507 {
1508 gestaltQuickTimeConferencingInfo = getOSType!("qtci")
1509 }
1510
1511 enum
1512 {
1513 gestaltQuickTimeVersion = getOSType!("qtim"),
1514 gestaltQuickTime = getOSType!("qtim")
1515 }
1516
1517 enum
1518 {
1519 gestaltQuickTimeFeatures = getOSType!("qtrs"),
1520 gestaltPPCQuickTimeLibPresent = 0
1521 }
1522
1523 enum
1524 {
1525 gestaltQuickTimeStreamingFeatures = getOSType!("qtsf")
1526 }
1527
1528 enum
1529 {
1530 gestaltQuickTimeStreamingVersion = getOSType!("qtst")
1531 }
1532
1533 enum
1534 {
1535 gestaltQuickTimeThreadSafeFeaturesAttr = getOSType!("qtth"),
1536 gestaltQuickTimeThreadSafeICM = 0,
1537 gestaltQuickTimeThreadSafeMovieToolbox = 1,
1538 gestaltQuickTimeThreadSafeMovieImport = 2,
1539 gestaltQuickTimeThreadSafeMovieExport = 3,
1540 gestaltQuickTimeThreadSafeGraphicsImport = 4,
1541 gestaltQuickTimeThreadSafeGraphicsExport = 5,
1542 gestaltQuickTimeThreadSafeMoviePlayback = 6
1543 }
1544
1545 enum
1546 {
1547 gestaltQTVRMgrAttr = getOSType!("qtvr"),
1548 gestaltQTVRMgrPresent = 0,
1549 gestaltQTVRObjMoviesPresent = 1,
1550 gestaltQTVRCylinderPanosPresent = 2,
1551 gestaltQTVRCubicPanosPresent = 3
1552 }
1553
1554 enum
1555 {
1556 gestaltQTVRMgrVers = getOSType!("qtvv")
1557 }
1558
1559 enum
1560 {
1561 gestaltPhysicalRAMSize = getOSType!("ram ")
1562 }
1563
1564 enum
1565 {
1566 gestaltPhysicalRAMSizeInMegabytes = getOSType!("ramm")
1567 }
1568
1569 enum
1570 {
1571 gestaltRBVAddr = getOSType!("rbv ")
1572 }
1573
1574 enum
1575 {
1576 gestaltROMSize = getOSType!("rom ")
1577 }
1578
1579 enum
1580 {
1581 gestaltROMVersion = getOSType!("romv")
1582 }
1583
1584 enum
1585 {
1586 gestaltResourceMgrAttr = getOSType!("rsrc"),
1587 gestaltPartialRsrcs = 0,
1588 gestaltHasResourceOverrides = 1
1589 }
1590
1591 enum
1592 {
1593 gestaltResourceMgrBugFixesAttrs = getOSType!("rmbg"),
1594 gestaltRMForceSysHeapRolledIn = 0,
1595 gestaltRMFakeAppleMenuItemsRolledIn = 1,
1596 gestaltSanityCheckResourceFiles = 2,
1597 gestaltSupportsFSpResourceFileAlreadyOpenBit = 3,
1598 gestaltRMSupportsFSCalls = 4,
1599 gestaltRMTypeIndexOrderingReverse = 8
1600 }
1601
1602 enum
1603 {
1604 gestaltRealtimeMgrAttr = getOSType!("rtmr"),
1605 gestaltRealtimeMgrPresent = 0
1606 }
1607
1608 enum
1609 {
1610 gestaltSafeOFAttr = getOSType!("safe"),
1611 gestaltVMZerosPagesBit = 0,
1612 gestaltInitHeapZerosOutHeapsBit = 1,
1613 gestaltNewHandleReturnsZeroedMemoryBit = 2,
1614 gestaltNewPtrReturnsZeroedMemoryBit = 3,
1615 gestaltFileAllocationZeroedBlocksBit = 4
1616 }
1617
1618 enum
1619 {
1620 gestaltSCCReadAddr = getOSType!("sccr")
1621 }
1622
1623 enum
1624 {
1625 gestaltSCCWriteAddr = getOSType!("sccw")
1626 }
1627
1628 enum
1629 {
1630 gestaltScrapMgrAttr = getOSType!("scra"),
1631 gestaltScrapMgrTranslationAware = 0
1632 }
1633
1634 enum
1635 {
1636 gestaltScriptMgrVersion = getOSType!("scri")
1637 }
1638
1639 enum
1640 {
1641 gestaltScriptCount = getOSType!("scr#")
1642 }
1643
1644 enum
1645 {
1646 gestaltSCSI = getOSType!("scsi"),
1647 gestaltAsyncSCSI = 0,
1648 gestaltAsyncSCSIINROM = 1,
1649 gestaltSCSISlotBoot = 2,
1650 gestaltSCSIPollSIH = 3
1651 }
1652
1653 enum
1654 {
1655 gestaltControlStripAttr = getOSType!("sdev"),
1656 gestaltControlStripExists = 0,
1657 gestaltControlStripVersionFixed = 1,
1658 gestaltControlStripUserFont = 2,
1659 gestaltControlStripUserHotKey = 3
1660 }
1661
1662 enum
1663 {
1664 gestaltSDPStandardDirectoryVersion = getOSType!("sdvr")
1665 }
1666
1667 enum
1668 {
1669 gestaltSerialAttr = getOSType!("ser "),
1670 gestaltHasGPIaToDCDa = 0,
1671 gestaltHasGPIaToRTxCa = 1,
1672 gestaltHasGPIbToDCDb = 2,
1673 gestaltHidePortA = 3,
1674 gestaltHidePortB = 4,
1675 gestaltPortADisabled = 5,
1676 gestaltPortBDisabled = 6
1677 }
1678
1679 enum
1680 {
1681 gestaltShutdownAttributes = getOSType!("shut"),
1682 gestaltShutdownHassdOnBootVolUnmount = 0
1683 }
1684
1685 enum
1686 {
1687 gestaltNuBusConnectors = getOSType!("sltc")
1688 }
1689
1690 enum
1691 {
1692 gestaltSlotAttr = getOSType!("slot"),
1693 gestaltSlotMgrExists = 0,
1694 gestaltNuBusPresent = 1,
1695 gestaltSESlotPresent = 2,
1696 gestaltSE30SlotPresent = 3,
1697 gestaltPortableSlotPresent = 4
1698 }
1699
1700 enum
1701 {
1702 gestaltFirstSlotNumber = getOSType!("slt1")
1703 }
1704
1705 enum
1706 {
1707 gestaltSoundAttr = getOSType!("snd "),
1708 gestaltStereoCapability = 0,
1709 gestaltStereoMixing = 1,
1710 gestaltSoundIOMgrPresent = 3,
1711 gestaltBuiltInSoundInput = 4,
1712 gestaltHasSoundInputDevice = 5,
1713 gestaltPlayAndRecord = 6,
1714 gestalt16BitSoundIO = 7,
1715 gestaltStereoInput = 8,
1716 gestaltLineLevelInput = 9,
1717 gestaltSndPlayDoubleBuffer = 10,
1718 gestaltMultiChannels = 11,
1719 gestalt16BitAudioSupport = 12
1720 }
1721
1722 enum
1723 {
1724 gestaltSplitOSAttr = getOSType!("spos"),
1725 gestaltSplitOSBootDriveIsNetworkVolume = 0,
1726 gestaltSplitOSAware = 1,
1727 gestaltSplitOSEnablerVolumeIsDifferentFromBootVolume = 2,
1728 gestaltSplitOSMachineNameSetToNetworkNameTemp = 3,
1729 gestaltSplitOSMachineNameStartupDiskIsNonPersistent = 5
1730 }
1731
1732 enum
1733 {
1734 gestaltSMPSPSendLetterVersion = getOSType!("spsl")
1735 }
1736
1737 enum
1738 {
1739 gestaltSpeechRecognitionAttr = getOSType!("srta"),
1740 gestaltDesktopSpeechRecognition = 1,
1741 gestaltTelephoneSpeechRecognition = 2
1742 }
1743
1744 enum
1745 {
1746 gestaltSpeechRecognitionVersion = getOSType!("srtb")
1747 }
1748
1749 enum
1750 {
1751 gestaltSoftwareVendorCode = getOSType!("srad"),
1752 gestaltSoftwareVendorApple = getOSType!("Appl"),
1753 gestaltSoftwareVendorLicensee = getOSType!("Lcns")
1754 }
1755
1756 enum
1757 {
1758 gestaltStandardFileAttr = getOSType!("stdf"),
1759 gestaltStandardFile58 = 0,
1760 gestaltStandardFileTranslationAware = 1,
1761 gestaltStandardFileHasColorIcons = 2,
1762 gestaltStandardFileUseGenericIcons = 3,
1763 gestaltStandardFileHasDynamicVolumeAllocation = 4
1764 }
1765
1766 enum
1767 {
1768 gestaltSysArchitecture = getOSType!("sysa"),
1769 gestalt68k = 1,
1770 gestaltPowerPC = 2,
1771 gestaltIntel = 10
1772 }
1773
1774 enum
1775 {
1776 gestaltSystemUpdateVersion = getOSType!("sysu")
1777 }
1778
1779 enum
1780 {
1781 gestaltSystemVersion = getOSType!("sysv"),
1782 gestaltSystemVersionMajor = getOSType!("sys1"),
1783 gestaltSystemVersionMinor = getOSType!("sys2"),
1784 gestaltSystemVersionBugFix = getOSType!("sys3")
1785 }
1786
1787 enum
1788 {
1789 gestaltToolboxTable = getOSType!("tbtt")
1790 }
1791
1792 enum
1793 {
1794 gestaltTextEditVersion = getOSType!("te "),
1795 gestaltTE1 = 1,
1796 gestaltTE2 = 2,
1797 gestaltTE3 = 3,
1798 gestaltTE4 = 4,
1799 gestaltTE5 = 5
1800 }
1801
1802 enum
1803 {
1804 gestaltTE6 = 6
1805 }
1806
1807 enum
1808 {
1809 gestaltTEAttr = getOSType!("teat"),
1810 gestaltTEHasGetHiliteRgn = 0,
1811 gestaltTESupportsInlineInput = 1,
1812 gestaltTESupportsTextObjects = 2,
1813 gestaltTEHasWhiteBackground = 3
1814 }
1815
1816 enum
1817 {
1818 gestaltTeleMgrAttr = getOSType!("tele"),
1819 gestaltTeleMgrPresent = 0,
1820 gestaltTeleMgrPowerPCSupport = 1,
1821 gestaltTeleMgrSoundStreams = 2,
1822 gestaltTeleMgrAutoAnswer = 3,
1823 gestaltTeleMgrIndHandset = 4,
1824 gestaltTeleMgrSilenceDetect = 5,
1825 gestaltTeleMgrNewTELNewSupport = 6
1826 }
1827
1828 enum
1829 {
1830 gestaltTermMgrAttr = getOSType!("term"),
1831 gestaltTermMgrPresent = 0,
1832 gestaltTermMgrErrorString = 2
1833 }
1834
1835 enum
1836 {
1837 gestaltThreadMgrAttr = getOSType!("thds"),
1838 gestaltThreadMgrPresent = 0,
1839 gestaltSpecificMatchSupport = 1,
1840 gestaltThreadsLibraryPresent = 2
1841 }
1842
1843 enum
1844 {
1845 gestaltTimeMgrVersion = getOSType!("tmgr"),
1846 gestaltStandardTimeMgr = 1,
1847 gestaltRevisedTimeMgr = 2,
1848 gestaltExtendedTimeMgr = 3,
1849 gestaltNativeTimeMgr = 4
1850 }
1851
1852 enum
1853 {
1854 gestaltTSMTEVersion = getOSType!("tmTV"),
1855 gestaltTSMTE1 = 0x0100,
1856 gestaltTSMTE15 = 0x0150,
1857 gestaltTSMTE152 = 0x0152
1858 }
1859
1860 enum
1861 {
1862 gestaltTSMTEAttr = getOSType!("tmTE"),
1863 gestaltTSMTEPresent = 0,
1864 gestaltTSMTE = 0
1865 }
1866
1867 enum
1868 {
1869 gestaltAVLTreeAttr = getOSType!("tree"),
1870 gestaltAVLTreePresentBit = 0,
1871 gestaltAVLTreeSupportsHandleBasedTreeBit = 1,
1872 gestaltAVLTreeSupportsTreeLockingBit = 2
1873 }
1874
1875 enum
1876 {
1877 gestaltALMAttr = getOSType!("trip"),
1878 gestaltALMPresent = 0,
1879 gestaltALMHasSFGroup = 1,
1880 gestaltALMHasCFMSupport = 2,
1881 gestaltALMHasRescanNotifiers = 3
1882 }
1883
1884 enum
1885 {
1886 gestaltALMHasSFLocation = gestaltALMHasSFGroup
1887 }
1888
1889 enum
1890 {
1891 gestaltTSMgrVersion = getOSType!("tsmv"),
1892 gestaltTSMgr15 = 0x0150,
1893 gestaltTSMgr20 = 0x0200,
1894 gestaltTSMgr22 = 0x0220,
1895 gestaltTSMgr23 = 0x0230
1896 }
1897
1898 enum
1899 {
1900 gestaltTSMgrAttr = getOSType!("tsma"),
1901 gestaltTSMDisplayMgrAwareBit = 0,
1902 gestaltTSMdoesTSMTEBit = 1
1903 }
1904
1905 enum
1906 {
1907 gestaltSpeechAttr = getOSType!("ttsc"),
1908 gestaltSpeechMgrPresent = 0,
1909 gestaltSpeechHasPPCGlue = 1
1910 }
1911
1912 enum
1913 {
1914 gestaltTVAttr = getOSType!("tv "),
1915 gestaltHasTVTuner = 0,
1916 gestaltHasSoundFader = 1,
1917 gestaltHasHWClosedCaptioning = 2,
1918 gestaltHasIRRemote = 3,
1919 gestaltHasVidDecoderScaler = 4,
1920 gestaltHasStereoDecoder = 5,
1921 gestaltHasSerialFader = 6,
1922 gestaltHasFMTuner = 7,
1923 gestaltHasSystemIRFunction = 8,
1924 gestaltIRDisabled = 9,
1925 gestaltINeedIRPowerOffConfirm = 10,
1926 gestaltHasZoomedVideo = 11
1927 }
1928
1929 enum
1930 {
1931 gestaltATSUVersion = getOSType!("uisv"),
1932 gestaltOriginalATSUVersion = (1 << 16),
1933 gestaltATSUUpdate1 = (2 << 16),
1934 gestaltATSUUpdate2 = (3 << 16),
1935 gestaltATSUUpdate3 = (4 << 16),
1936 gestaltATSUUpdate4 = (5 << 16),
1937 gestaltATSUUpdate5 = (6 << 16),
1938 gestaltATSUUpdate6 = (7 << 16),
1939 gestaltATSUUpdate7 = (8 << 16)
1940 }
1941
1942 enum
1943 {
1944 gestaltATSUFeatures = getOSType!("uisf"),
1945 gestaltATSUTrackingFeature = 0x00000001,
1946 gestaltATSUMemoryFeature = 0x00000001,
1947 gestaltATSUFallbacksFeature = 0x00000001,
1948 gestaltATSUGlyphBoundsFeature = 0x00000001,
1949 gestaltATSULineControlFeature = 0x00000001,
1950 gestaltATSULayoutCreateAndCopyFeature = 0x00000001,
1951 gestaltATSULayoutCacheClearFeature = 0x00000001,
1952 gestaltATSUTextLocatorUsageFeature = 0x00000002,
1953 gestaltATSULowLevelOrigFeatures = 0x00000004,
1954 gestaltATSUFallbacksObjFeatures = 0x00000008,
1955 gestaltATSUIgnoreLeadingFeature = 0x00000008,
1956 gestaltATSUByCharacterClusterFeature = 0x00000010,
1957 gestaltATSUAscentDescentControlsFeature = 0x00000010,
1958 gestaltATSUHighlightInactiveTextFeature = 0x00000010,
1959 gestaltATSUPositionToCursorFeature = 0x00000010,
1960 gestaltATSUBatchBreakLinesFeature = 0x00000010,
1961 gestaltATSUTabSupportFeature = 0x00000010,
1962 gestaltATSUDirectAccess = 0x00000010,
1963 gestaltATSUDecimalTabFeature = 0x00000020,
1964 gestaltATSUBiDiCursorPositionFeature = 0x00000020,
1965 gestaltATSUNearestCharLineBreakFeature = 0x00000020,
1966 gestaltATSUHighlightColorControlFeature = 0x00000020,
1967 gestaltATSUUnderlineOptionsStyleFeature = 0x00000020,
1968 gestaltATSUStrikeThroughStyleFeature = 0x00000020,
1969 gestaltATSUDropShadowStyleFeature = 0x00000020
1970 }
1971
1972 enum
1973 {
1974 gestaltUSBAttr = getOSType!("usb "),
1975 gestaltUSBPresent = 0,
1976 gestaltUSBHasIsoch = 1
1977 }
1978
1979 enum
1980 {
1981 gestaltUSBVersion = getOSType!("usbv")
1982 }
1983
1984 enum
1985 {
1986 gestaltVersion = getOSType!("vers"),
1987 gestaltValueImplementedVers = 5
1988 }
1989
1990 enum
1991 {
1992 gestaltVIA1Addr = getOSType!("via1")
1993 }
1994
1995 enum
1996 {
1997 gestaltVIA2Addr = getOSType!("via2")
1998 }
1999
2000 enum
2001 {
2002 gestaltVMAttr = getOSType!("vm "),
2003 gestaltVMPresent = 0,
2004 gestaltVMHasLockMemoryForOutput = 1,
2005 gestaltVMFilemappingOn = 3,
2006 gestaltVMHasPagingControl = 4
2007 }
2008
2009 enum
2010 {
2011 gestaltVMInfoType = getOSType!("vmin"),
2012 gestaltVMInfoSizeStorageType = 0,
2013 gestaltVMInfoSizeType = 1,
2014 gestaltVMInfoSimpleType = 2,
2015 gestaltVMInfoNoneType = 3
2016 }
2017
2018 enum
2019 {
2020 gestaltVMBackingStoreFileRefNum = getOSType!("vmbs")
2021 }
2022
2023 enum
2024 {
2025 gestaltALMVers = getOSType!("walk")
2026 }
2027
2028 enum
2029 {
2030 gestaltWindowMgrAttr = getOSType!("wind"),
2031 gestaltWindowMgrPresent = (1L << 0),
2032 gestaltWindowMgrPresentBit = 0,
2033 gestaltExtendedWindowAttributes = 1,
2034 gestaltExtendedWindowAttributesBit = 1,
2035 gestaltHasFloatingWindows = 2,
2036 gestaltHasFloatingWindowsBit = 2,
2037 gestaltHasWindowBuffering = 3,
2038 gestaltHasWindowBufferingBit = 3,
2039 gestaltWindowLiveResizeBit = 4,
2040 gestaltWindowMinimizeToDockBit = 5,
2041 gestaltHasWindowShadowsBit = 6,
2042 gestaltSheetsAreWindowModalBit = 7,
2043 gestaltFrontWindowMayBeHiddenBit = 8,
2044 gestaltWindowMgrPresentMask = (1L << gestaltWindowMgrPresentBit),
2045 gestaltExtendedWindowAttributesMask = (1L << gestaltExtendedWindowAttributesBit),
2046 gestaltHasFloatingWindowsMask = (1L << gestaltHasFloatingWindowsBit),
2047 gestaltHasWindowBufferingMask = (1L << gestaltHasWindowBufferingBit),
2048 gestaltWindowLiveResizeMask = (1L << gestaltWindowLiveResizeBit),
2049 gestaltWindowMinimizeToDockMask = (1L << gestaltWindowMinimizeToDockBit),
2050 gestaltHasWindowShadowsMask = (1L << gestaltHasWindowShadowsBit),
2051 gestaltSheetsAreWindowModalMask = (1L << gestaltSheetsAreWindowModalBit),
2052 gestaltFrontWindowMayBeHiddenMask = (1L << gestaltFrontWindowMayBeHiddenBit)
2053 }
2054
2055 enum
2056 {
2057 gestaltHasSingleWindowModeBit = 8,
2058 gestaltHasSingleWindowModeMask = (1L << gestaltHasSingleWindowModeBit)
2059 }
2060
2061 enum
2062 {
2063 gestaltX86Features = getOSType!("x86f"),
2064 gestaltX86HasFPU = 0,
2065 gestaltX86HasVME = 1,
2066 gestaltX86HasDE = 2,
2067 gestaltX86HasPSE = 3,
2068 gestaltX86HasTSC = 4,
2069 gestaltX86HasMSR = 5,
2070 gestaltX86HasPAE = 6,
2071 gestaltX86HasMCE = 7,
2072 gestaltX86HasCX8 = 8,
2073 gestaltX86HasAPIC = 9,
2074 gestaltX86HasSEP = 11,
2075 gestaltX86HasMTRR = 12,
2076 gestaltX86HasPGE = 13,
2077 gestaltX86HasMCA = 14,
2078 gestaltX86HasCMOV = 15,
2079 gestaltX86HasPAT = 16,
2080 gestaltX86HasPSE36 = 17,
2081 gestaltX86HasPSN = 18,
2082 gestaltX86HasCLFSH = 19,
2083 gestaltX86Serviced20 = 20,
2084 gestaltX86HasDS = 21,
2085 gestaltX86ResACPI = 22,
2086 gestaltX86HasMMX = 23,
2087 gestaltX86HasFXSR = 24,
2088 gestaltX86HasSSE = 25,
2089 gestaltX86HasSSE2 = 26,
2090 gestaltX86HasSS = 27,
2091 gestaltX86HasHTT = 28,
2092 gestaltX86HasTM = 29
2093 }
2094
2095 enum
2096 {
2097 gestaltX86AdditionalFeatures = getOSType!("x86a"),
2098 gestaltX86HasSSE3 = 0,
2099 gestaltX86HasMONITOR = 3,
2100 gestaltX86HasDSCPL = 4,
2101 gestaltX86HasVMX = 5,
2102 gestaltX86HasSMX = 6,
2103 gestaltX86HasEST = 7,
2104 gestaltX86HasTM2 = 8,
2105 gestaltX86HasSupplementalSSE3 = 9,
2106 gestaltX86HasCID = 10,
2107 gestaltX86HasCX16 = 13,
2108 gestaltX86HasxTPR = 14
2109 }
2110
2111 enum
2112 {
2113 gestaltTranslationAttr = getOSType!("xlat"),
2114 gestaltTranslationMgrExists = 0,
2115 gestaltTranslationMgrHintOrder = 1,
2116 gestaltTranslationPPCAvail = 2,
2117 gestaltTranslationGetPathAPIAvail = 3
2118 }
2119
2120 enum
2121 {
2122 gestaltExtToolboxTable = getOSType!("xttt")
2123 }
2124
2125 static if (D_LP64)
2126 {
2127 enum : long
2128 {
2129 gestaltUSBPrinterSharingVersion = getOSType!("zak "),
2130 gestaltUSBPrinterSharingVersionMask = 0x0000FFFF,
2131 gestaltUSBPrinterSharingAttr = getOSType!("zak "),
2132 gestaltUSBPrinterSharingAttrMask = 0xFFFF0000L,
2133 gestaltUSBPrinterSharingAttrRunning = 0x80000000L,
2134 gestaltUSBPrinterSharingAttrBooted = 0x40000000
2135 }
2136 }
2137
2138 else
2139 {
2140 enum
2141 {
2142 gestaltUSBPrinterSharingVersion = getOSType!("zak "),
2143 gestaltUSBPrinterSharingVersionMask = 0x0000FFFF,
2144 gestaltUSBPrinterSharingAttr = getOSType!("zak "),
2145 gestaltUSBPrinterSharingAttrMask = 0xFFFF0000,
2146 gestaltUSBPrinterSharingAttrRunning = 0x80000000,
2147 gestaltUSBPrinterSharingAttrBooted = 0x40000000
2148 }
2149 }
2150
2151 enum
2152 {
2153 gestaltWorldScriptIIVersion = getOSType!("doub"),
2154 gestaltWorldScriptIIAttr = getOSType!("wsat"),
2155 gestaltWSIICanPrintWithoutPrGeneralBit = 0
2156 }
2157
2158 extern (C)
2159 {
2160 short Gestalt (uint selector, SInt32* response);
2161 short NewGestaltValue (uint selector, int newValue);
2162 short ReplaceGestaltValue (uint selector, int replacementValue);
2163 short SetGestaltValue (uint selector, int newValue);
2164 short DeleteGestaltValue (uint selector);
2165 SelectorFunctionUPP NewSelectorFunctionUPP (SelectorFunctionProcPtr userRoutine);
2166 void DisposeSelectorFunctionUPP (SelectorFunctionUPP userUPP);
2167 short InvokeSelectorFunctionUPP (uint selector, SInt32* response, SelectorFunctionUPP userUPP);
2168 }