]> gitweb @ CieloNegro.org - bindings-CarbonCore.git/blob - Bindings/CoreServices/CarbonCore/Files.hsc
4d0de36401da2e3d235303c630e0b477a1cb10c9
[bindings-CarbonCore.git] / Bindings / CoreServices / CarbonCore / Files.hsc
1 {- -*- coding: utf-8 -*- -}
2 #include <bindings.dsl.h>
3 #include <CoreServices/CoreServices.h>
4
5 module Bindings.CoreServices.CarbonCore.Files where
6 #strict_import
7 import Bindings.CoreServices.CarbonCore.MacTypes
8
9 #starttype struct HFSUniStr255
10 #  field       length , <UInt16>
11 #  array_field unicode, <UniChar>
12 #stoptype
13 #synonym_t ConstHFSUniStr255Param, Ptr <HFSUniStr255>
14
15 #num kFSFileSecurityRemoveACL
16
17 #num fsCurPerm
18 #num fsRdPerm
19 #num fsWrPerm
20 #num fsRdWrPerm
21 #num fsRdWrShPerm
22
23 #num fsRdAccessPerm
24 #num fsWrAccessPerm
25 #num fsRdDenyPerm
26 #num fsWrDenyPerm
27
28 #num fsRtParID
29 #num fsRtDirID
30
31 #num fsAtMark
32 #num fsFromStart
33 #num fsFromLEOF
34 #num fsFromMark
35
36 #num kFSAllowConcurrentAsyncIOBit
37 #num kFSAllowConcurrentAsyncIOMask
38 #num kFSPleaseCacheBit
39 #num kFSPleaseCacheMask
40 #num kFSNoCacheBit
41 #num kFSNoCacheMask
42 #num kFSRdVerifyBit
43 #num kFSRdVerifyMask
44 #num kFSForceReadBit
45 #num kFSForceReadMask
46 #num kFSNewLineBit
47 #num kFSNewLineMask
48 #num kFSNewLineCharMask
49
50 #num fsSBPartialName
51 #num fsSBFullName
52 #num fsSBFlAttrib
53 #num fsSBFlFndrInfo
54 #num fsSBFlLgLen
55 #num fsSBFlPyLen
56 #num fsSBFlRLgLen
57 #num fsSBFlRPyLen
58 #num fsSBFlCrDat
59 #num fsSBFlMdDat
60 #num fsSBFlBkDat
61 #num fsSBFlXFndrInfo
62 #num fsSBFlParID
63 #num fsSBNegate
64 #num fsSBDrUsrWds
65 #num fsSBDrNmFls
66 #num fsSBDrCrDat
67 #num fsSBDrMdDat
68 #num fsSBDrBkDat
69 #num fsSBDrFndrInfo
70 #num fsSBDrParID
71 #num fsSBNodeID
72 #num fsSBAttributeModDate
73 #num fsSBAccessDate
74 #num fsSBPermissions
75 #num fsSBSkipPackageContents
76 #num fsSBSkipHiddenItems
77 #num fsSBUserID
78 #num fsSBGroupID
79
80 #num fsSBPartialNameBit
81 #num fsSBFullNameBit
82 #num fsSBFlAttribBit
83 #num fsSBFlFndrInfoBit
84 #num fsSBFlLgLenBit
85 #num fsSBFlPyLenBit
86 #num fsSBFlRLgLenBit
87 #num fsSBFlRPyLenBit
88 #num fsSBFlCrDatBit
89 #num fsSBFlMdDatBit
90 #num fsSBFlBkDatBit
91 #num fsSBFlXFndrInfoBit
92 #num fsSBFlParIDBit
93 #num fsSBNegateBit
94 #num fsSBDrUsrWdsBit
95 #num fsSBDrNmFlsBit
96 #num fsSBDrCrDatBit
97 #num fsSBDrMdDatBit
98 #num fsSBDrBkDatBit
99 #num fsSBDrFndrInfoBit
100 #num fsSBDrParIDBit
101 #num fsSBNodeIDBit
102 #num fsSBAttributeModDateBit
103 #num fsSBAccessDateBit
104 #num fsSBPermissionsBit
105 #num fsSBSkipPackageContentsBit
106 #num fsSBSkipHiddenItemsBit
107 #num fsSBUserIDBit
108 #num fsSBGroupIDBit
109
110 #num bLimitFCBs
111 #num bLocalWList
112 #num bNoMiniFndr
113 #num bNoVNEdit
114 #num bNoLclSync
115 #num bTrshOffLine
116 #num bNoSwitchTo
117 #num bNoDeskItems
118 #num bNoBootBlks
119 #num bAccessCntl
120 #num bNoSysDir
121 #num bHasExtFSVol
122 #num bHasOpenDeny
123 #num bHasCopyFile
124 #num bHasMoveRename
125 #num bHasDesktopMgr
126 #num bHasShortName
127 #num bHasFolderLock
128 #num bHasPersonalAccessPrivileges
129 #num bHasUserGroupList
130 #num bHasCatSearch
131 #num bHasFileIDs
132 #num bHasBTreeMgr
133 #num bHasBlankAccessPrivileges
134 #num bSupportsAsyncRequests
135 #num bSupportsTrashVolumeCache
136
137 #num bHasDirectIO
138
139 #num bIsEjectable
140 #num bSupportsHFSPlusAPIs
141 #num bSupportsFSCatalogSearch
142 #num bSupportsFSExchangeObjects
143 #num bSupports2TBFiles
144 #num bSupportsLongNames
145 #num bSupportsMultiScriptNames
146 #num bSupportsNamedForks
147 #num bSupportsSubtreeIterators
148 #num bL2PCanMapFileBlocks
149 #num bParentModDateChanges
150 #num bAncestorModDateChanges
151 #num bSupportsSymbolicLinks
152 #num bIsAutoMounted
153 #num bAllowCDiDataHandler
154 #num bSupportsExclusiveLocks
155 #num bSupportsJournaling
156 #num bNoVolumeSizes
157 #num bIsOnInternalBus
158 #num bIsCaseSensitive
159 #num bIsCasePreserving
160 #num bDoNotDisplay
161 #num bIsRemovable
162 #num bNoRootTimes
163 #num bIsOnExternalBus
164 #num bSupportsExtendedFileSecurity
165
166 #num kWidePosOffsetBit
167 #num kUseWidePositioning
168 #num kMaximumBlocksIn4GB
169
170 #num fsUnixPriv
171
172 #num kNoUserAuthentication
173 #num kPassword
174 #num kEncryptPassword
175 #num kTwoWayEncryptPassword
176
177 #num knoUser
178 #num kadministratorUser
179
180 #num knoGroup
181
182 #synonym_t  FSVolumeRefNum, <SInt16>
183 #integral_t FSIORefNum
184
185 #num kFSInvalidVolumeRefNum
186
187 #starttype struct FSRef
188 #  array_field hidden, <UInt8>
189 #stoptype
190 #synonym_t FSRefPtr, Ptr <FSRef>
191
192 #opaque_t  __FSFileSecurity
193 #synonym_t FSFileSecurityRef, Ptr <__FSFileSecurity>
194
195 #starttype struct CatPositionRec
196 #  field       initialize, <SInt16>
197 #  array_field priv      , <SInt16>
198 #stoptype
199
200 #if __LP64__
201 #  starttype struct FSSpec
202 #    array_field hidden, <UInt8>
203 #  stoptype
204 #else
205 #  starttype struct FSSpec
206 #    field vRefNum, <FSVolumeRefNum>
207 #    field parID  , <SInt32>
208 #    field name   , <StrFileName>
209 #  stoptype
210 #endif
211 #synonym_t FSSpecPtr     , Ptr <FSSpec>
212 #synonym_t FSSpecHandle  , Ptr <FSSpecPtr>
213 #synonym_t FSSpecArrayPtr, <FSSpecPtr>
214 #synonym_t ConstFSSpecPtr, Ptr <FSSpec>
215
216 #if __LP64__
217 #  synonym_t ParmBlkPtr, Ptr ()
218 #else
219 #  synonym_t ParmBlkPtr, Ptr <ParamBlockRec>
220 #endif
221
222 #callback  IOCompletionProcPtr, <ParmBlkPtr> -> IO ()
223 #synonym_t IOCompletionUPP    , <IOCompletionProcPtr>
224
225 #if !__LP64__
226 #  starttype struct IOParam
227 #    field qLink       , <QElemPtr>
228 #    field qType       , <SInt16>
229 #    field ioTrap      , <SInt16>
230 #    field ioCmdAddr   , <Ptr>
231 #    field ioCompletion, <IOCompletionUPP>
232 #    field ioResult    , <OSErr>
233 #    field ioNamePtr   , <StringPtr>
234 #    field ioVRefNum   , <FSVolumeRefNum>
235 #    field ioRefNum    , <FSIORefNum>
236 #    field ioVersNum   , <SInt8>
237 #    field ioPermssn   , <SInt8>
238 #    field ioMisc      , <Ptr>
239 #    field ioBuffer    , <Ptr>
240 #    field ioReqCount  , <SInt32>
241 #    field ioActCount  , <SInt32>
242 #    field ioPosMode   , <SInt16>
243 #    field ioPosOffset , <SInt32>
244 #  stoptype
245 #  synonym_t IOParamPtr, Ptr <IOParam>
246
247 #  starttype struct FileParam
248 #    field qLink       , <QElemPtr>
249 #    field qType       , <SInt16>
250 #    field ioTrap      , <SInt16>
251 #    field ioCmdAddr   , <Ptr>
252 #    field ioCompletion, <IOCompletionUPP>
253 #    field ioResult    , <OSErr>
254 #    field ioNamePtr   , <StringPtr>
255 #    field ioVRefNum   , <FSVolumeRefNum>
256 #    field ioFRefNum   , <FSIORefNum>
257 #    field ioFVersNum  , <SInt8>
258 #    field filler1     , <SInt8>
259 #    field ioFDirIndex , <SInt16>
260 #    field ioFlAttrib  , <SInt8>
261 #    field ioFlVersNum , <SInt8>
262 #    field ioFlFndrInfo, <FInfo>
263 #    field ioFlNum     , <UInt32>
264 #    field ioFlStBlk   , <UInt16>
265 #    field ioFlLgLen   , <SInt32>
266 #    field ioFlPyLen   , <SInt32>
267 #    field ioFlRStBlk  , <UInt16>
268 #    field ioFlRLgLen  , <SInt32>
269 #    field ioFlRPyLen  , <SInt32>
270 #    field ioFlCrDat   , <UInt32>
271 #    field ioFlMdDat   , <UInt32>
272 #  stoptype
273 #  synonym_t FileParamPtr, Ptr <FileParam>
274
275 #  starttype struct VolumeParam
276 #    field qLink       , <QElemPtr>
277 #    field qType       , <SInt16>
278 #    field ioTrap      , <SInt16>
279 #    field ioCmdAddr   , <Ptr>
280 #    field ioCompletion, <IOCompletionUPP>
281 #    field ioResult    , <OSErr>
282 #    field ioNamePtr   , <StringPtr>
283 #    field ioVRefNum   , <FSVolumeRefNum>
284 #    field filler2     , <UInt32>
285 #    field ioVolIndex  , <SInt16>
286 #    field ioVCrDate   , <UInt32>
287 #    field ioVLsBkUp   , <UInt32>
288 #    field ioVAtrb     , <UInt16>
289 #    field ioVNmFls    , <UInt16>
290 #    field ioVDirSt    , <UInt16>
291 #    field ioVBlLn     , <SInt16>
292 #    field ioVNmAlBlks , <UInt16>
293 #    field ioVAlBlkSiz , <UInt32>
294 #    field ioVClpSiz   , <UInt32>
295 #    field ioAlBlSt    , <UInt16>
296 #    field ioVNxtFNum  , <UInt32>
297 #    field ioVFrBlk    , <UInt16>
298 #  stoptype
299 #  synonym_t VolumeParamPtr, Ptr <VolumeParam>
300
301 #  starttype struct CntrlParam
302 #    field qLink       , <QElemPtr>
303 #    field qType       , <SInt16>
304 #    field ioTrap      , <SInt16>
305 #    field ioCmdAddr   , <Ptr>
306 #    field ioCompletion, <IOCompletionUPP>
307 #    field ioResult    , <OSErr>
308 #    field ioNamePtr   , <StringPtr>
309 #    field ioVRefNum   , <FSVolumeRefNum>
310 #    field ioCRefNum   , <FSIORefNum>
311 #    field csCode      , <SInt16>
312 #    array_field csParam, <SInt16>
313 #  stoptype
314 #  synonym_t CntrlParamPtr, Ptr <CntrlParamPtr>
315
316 #  starttype struct SlotDevParam
317 #    field qLink       , <QElemPtr>
318 #    field qType       , <SInt16>
319 #    field ioTrap      , <SInt16>
320 #    field ioCmdAddr   , <Ptr>
321 #    field ioCompletion, <IOCompletionUPP>
322 #    field ioResult    , <OSErr>
323 #    field ioNamePtr   , <StringPtr>
324 #    field ioVRefNum   , <FSVolumeRefNum>
325 #    field ioSRefNum   , <FSIORefNum>
326 #    field ioSVersNum  , <SInt8>
327 #    field ioSPermssn  , <SInt8>
328 #    field ioSMix      , <Ptr>
329 #    field ioSFlags    , <SInt16>
330 #    field ioSlot      , <SInt8>
331 #    field ioID        , <SInt8>
332 #  stoptype
333 #  synonym_t SlotDevParamPtr, Ptr <SlotDevParam>
334
335 #  starttype struct MultiDevParam
336 #    field qLink       , <QElemPtr>
337 #    field qType       , <SInt16>
338 #    field ioTrap      , <SInt16>
339 #    field ioCmdAddr   , <Ptr>
340 #    field ioCompletion, <IOCompletionUPP>
341 #    field ioResult    , <OSErr>
342 #    field ioNamePtr   , <StringPtr>
343 #    field ioVRefNum   , <FSVolumeRefNum>
344 #    field ioMRefNum   , <FSIORefNum>
345 #    field ioMVersNum  , <SInt8>
346 #    field ioMPermssn  , <SInt8>
347 #    field ioMMix      , <Ptr>
348 #    field ioMFlags    , <SInt16>
349 #    field ioSEBlkPtr  , <Ptr>
350 #  stoptype
351 #  synonym_t MultiDevParamPtr, Ptr <MultiDevParam>
352
353 #  starttype union ParamBlockRec
354 #    union_field ioParam      , <IOParam>
355 #    union_field fileParam    , <FileParam>
356 #    union_field volumeParam  , <VolumeParam>
357 #    union_field cntrlParam   , <CntrlParam>
358 #    union_field slotDevParam , <SlotDevParam>
359 #    union_field multiDevParam, <MultiDevParam>
360 #  stoptype
361
362 #  starttype struct HFileInfo
363 #    field qLink       , <QElemPtr>
364 #    field qType       , <SInt16>
365 #    field ioTrap      , <SInt16>
366 #    field ioCmdAddr   , <Ptr>
367 #    field ioCompletion, <IOCompletionUPP>
368 #    field ioResult    , <OSErr>
369 #    field ioNamePtr   , <StringPtr>
370 #    field ioVRefNum   , <FSVolumeRefNum>
371 #    field ioFRefNum   , <FSIORefNum>
372 #    field ioFVersNum  , <SInt8>
373 #    field filler1     , <SInt8>
374 #    field ioFDirIndex , <SInt16>
375 #    field ioFlAttrib  , <SInt8>
376 #    field ioACUser    , <SInt8>
377 #    field ioFlFndrInfo, <FInfo>
378 #    field ioDirID     , <SInt32>
379 #    field ioFlStBlk   , <UInt16>
380 #    field ioFlLgLen   , <SInt32>
381 #    field ioFlPyLen   , <SInt32>
382 #    field ioFlRStBlk  , <UInt16>
383 #    field ioFlRLgLen  , <SInt32>
384 #    field ioFlRPyLen  , <SInt32>
385 #    field ioFlCrDat   , <UInt32>
386 #    field ioFlMdDat   , <UInt32>
387 #    field ioFlBkDat   , <UInt32>
388 #    field ioFlXFndrInfo, <FXInfo>
389 #    field ioFlParID   , <SInt32>
390 #    field ioFlClpSiz  , <SInt32>
391 #  stoptype
392
393 #  starttype struct DirInfo
394 #    field qLink       , <QElemPtr>
395 #    field qType       , <SInt16>
396 #    field ioTrap      , <SInt16>
397 #    field ioCmdAddr   , <Ptr>
398 #    field ioCompletion, <IOCompletionUPP>
399 #    field ioResult    , <OSErr>
400 #    field ioNamePtr   , <StringPtr>
401 #    field ioVRefNum   , <FSVolumeRefNum>
402 #    field ioFRefNum   , <FSIORefNum>
403 #    field ioFVersNum  , <SInt8>
404 #    field filler1     , <SInt8>
405 #    field ioFDirIndex , <SInt16>
406 #    field ioFlAttrib  , <SInt8>
407 #    field ioACUser    , <SInt8>
408 #    field ioDrUsrWds  , <DInfo>
409 #    field ioDrDirID   , <SInt32>
410 #    field ioDrNmFls   , <UInt16>
411 #    array_field filler3, <SInt16>
412 #    field ioDrCrDat   , <UInt32>
413 #    field ioDrMdDat   , <UInt32>
414 #    field ioDrBkDat   , <UInt32>
415 #    field ioDrFndrInfo, <DXInfo>
416 #    field ioDrParID   , <SInt32>
417 #  stoptype
418
419 #  starttype union CInfoPBRec
420 #    union_field hFileInfo, <HFileInfo>
421 #    union_field dirInfo  , <DirInfo>
422 #  stoptype
423 #  synonym_t CInfoPBPtr, Ptr <CInfoPBRec>
424
425 #  starttype struct XCInfoPBRec
426 #    field qLink       , <QElemPtr>
427 #    field qType       , <SInt16>
428 #    field ioTrap      , <SInt16>
429 #    field ioCmdAddr   , <Ptr>
430 #    field ioCompletion, <ProcPtr>
431 #    field ioResult    , <OSErr>
432 #    field ioNamePtr   , <StringPtr>
433 #    field ioVRefNum   , <FSVolumeRefNum>
434 #    field filler1     , <SInt32>
435 #    field ioShortNamePtr, <StringPtr>
436 #    field filler2     , <SInt16>
437 #    field ioPDType    , <SInt16>
438 #    field ioPDAuxType , <SInt32>
439 #    array_field filler3, <SInt32>
440 #    field ioDirID     , <SInt32>
441 #  stoptype
442 #  synonym_t XCInfoPBPtr, Ptr <XCInfoPBRec>
443
444 #  starttype struct DTPBRec
445 #    field qLink       , <QElemPtr>
446 #    field qType       , <SInt16>
447 #    field ioTrap      , <SInt16>
448 #    field ioCmdAddr   , <Ptr>
449 #    field ioCompletion, <IOCompletionUPP>
450 #    field ioResult    , <OSErr>
451 #    field ioNamePtr   , <StringPtr>
452 #    field ioVRefNum   , <FSVolumeRefNum>
453 #    field ioDTRefNum  , <FSIORefNum>
454 #    field ioIndex     , <SInt16>
455 #    field ioTagInfo   , <SInt16>
456 #    field ioDTBuffer  , <Ptr>
457 #    field ioDTReqCount, <SInt32>
458 #    field ioDTActCount, <SInt32>
459 #    field ioFiller1   , <SInt8>
460 #    field ioIconType  , <UInt8>
461 #    field ioFiller2   , <SInt16>
462 #    field ioDirID     , <SInt32>
463 #    field ioFileCreator, <OSType>
464 #    field ioFileType  , <OSType>
465 #    field ioFiller3   , <SInt32>
466 #    field ioDTLgLen   , <SInt32>
467 #    field ioDTPyLen   , <SInt32>
468 #    array_field ioFiller4, <SInt16>
469 #    field ioAPPLParID , <SInt32>
470 #  stoptype
471 #  synonym_t DTPBPtr, Ptr <DTPBRec>
472
473 #  starttype struct HIOParam
474 #    field qLink       , <QElemPtr>
475 #    field qType       , <SInt16>
476 #    field ioTrap      , <SInt16>
477 #    field ioCmdAddr   , <Ptr>
478 #    field ioCompletion, <IOCompletionUPP>
479 #    field ioResult    , <OSErr>
480 #    field ioNamePtr   , <StringPtr>
481 #    field ioVRefNum   , <FSVolumeRefNum>
482 #    field ioRefNum    , <FSIORefNum>
483 #    field ioVersNum   , <SInt8>
484 #    field ioPermssn   , <SInt8>
485 #    field ioMisc      , <Ptr>
486 #    field ioBuffer    , <Ptr>
487 #    field ioReqCount  , <SInt32>
488 #    field ioActCount  , <SInt32>
489 #    field ioPosMode   , <SInt16>
490 #    field ioPosOffset , <SInt32>
491 #  stoptype
492 #  synonym_t HIOParamPtr, Ptr <HIOParam>
493
494 #  starttype struct HFileParam
495 #    field qLink       , <QElemPtr>
496 #    field qType       , <SInt16>
497 #    field ioTrap      , <SInt16>
498 #    field ioCmdAddr   , <Ptr>
499 #    field ioCompletion, <IOCompletionUPP>
500 #    field ioResult    , <OSErr>
501 #    field ioNamePtr   , <StringPtr>
502 #    field ioVRefNum   , <FSVolumeRefNum>
503 #    field ioFRefNum   , <FSIORefNum>
504 #    field ioFVersNum  , <SInt8>
505 #    field filler1     , <SInt8>
506 #    field ioFDirIndex , <SInt16>
507 #    field ioFlAttrib  , <SInt8>
508 #    field ioFlVersNum , <SInt8>
509 #    field ioFlFndrInfo, <FInfo>
510 #    field ioDirID     , <SInt32>
511 #    field ioFlStBlk   , <UInt16>
512 #    field ioFlLgLen   , <SInt32>
513 #    field ioFlPyLen   , <SInt32>
514 #    field ioFlRStBlk  , <UInt16>
515 #    field ioFlRLgLen  , <SInt32>
516 #    field ioFlRPyLen  , <SInt32>
517 #    field ioFlCrDat   , <UInt32>
518 #    field ioFlMdDat   , <UInt32>
519 #  stoptype
520 #  synonym_t HFileParamPtr, Ptr <HFileParam>
521
522 #  starttype struct HVolumeParam
523 #    field qLink       , <QElemPtr>
524 #    field qType       , <SInt16>
525 #    field ioTrap      , <SInt16>
526 #    field ioCmdAddr   , <Ptr>
527 #    field ioCompletion, <IOCompletionUPP>
528 #    field ioResult    , <OSErr>
529 #    field ioNamePtr   , <StringPtr>
530 #    field ioVRefNum   , <FSVolumeRefNum>
531 #    field filler2     , <UInt32>
532 #    field ioVolIndex  , <SInt16>
533 #    field ioVCrDate   , <UInt32>
534 #    field ioVLsMod    , <UInt32>
535 #    field ioVAtrb     , <SInt16>
536 #    field ioVNmFls    , <UInt16>
537 #    field ioVBitMap   , <UInt16>
538 #    field ioAllocPtr  , <UInt16>
539 #    field ioVNmAlBlks , <UInt16>
540 #    field ioVAlBlkSiz , <UInt32>
541 #    field ioVClpSiz   , <UInt32>
542 #    field ioAlBlSt    , <UInt16>
543 #    field ioVNxtCNID  , <UInt16>
544 #    field ioVFrBlk    , <UInt16>
545 #    field ioVSigWord  , <UInt16>
546 #    field ioVDrvInfo  , <SInt16>
547 #    field ioVDRefNum  , <FSIORefNum>
548 #    field ioVFSID     , <SInt16>
549 #    field ioVBkUp     , <UInt32>
550 #    field ioVSeqNum   , <SInt16>
551 #    field ioVWrCnt    , <UInt32>
552 #    field ioVFilCnt   , <UInt32>
553 #    field ioVDirCnt   , <UInt32>
554 #    array_field ioVFndrInfo, <SInt32>
555 #  stoptype
556 #  synonym_t HVolumeParamPtr, Ptr <HVolumeParam>
557
558 #  starttype struct XIOParam
559 #    field qLink       , <QElemPtr>
560 #    field qType       , <SInt16>
561 #    field ioTrap      , <SInt16>
562 #    field ioCmdAddr   , <Ptr>
563 #    field ioCompletion, <IOCompletionUPP>
564 #    field ioResult    , <OSErr>
565 #    field ioNamePtr   , <StringPtr>
566 #    field ioVRefNum   , <FSVolumeRefNum>
567 #    field ioRefNum    , <FSIORefNum>
568 #    field ioVersNum   , <SInt8>
569 #    field ioPermssn   , <SInt8>
570 #    field ioMisc      , <Ptr>
571 #    field ioBuffer    , <Ptr>
572 #    field ioReqCount  , <SInt32>
573 #    field ioActCount  , <SInt32>
574 #    field ioPosMode   , <SInt16>
575 #    field ioWPosOffset, <wide>
576 #  stoptype
577 #  synonym_t XIOParamPtr, Ptr <XIOParam>
578
579 #  starttype struct XVolumeParam
580 #    field qLink       , <QElemPtr>
581 #    field qType       , <SInt16>
582 #    field ioTrap      , <SInt16>
583 #    field ioCmdAddr   , <Ptr>
584 #    field ioCompletion, <IOCompletionUPP>
585 #    field ioResult    , <OSErr>
586 #    field ioNamePtr   , <StringPtr>
587 #    field ioVRefNum   , <FSVolumeRefNum>
588 #    field ioXVersion  , <UInt32>
589 #    field ioVolIndex  , <SInt16>
590 #    field ioVCrDate   , <UInt32>
591 #    field ioVLsMod    , <UInt32>
592 #    field ioVAtrb     , <SInt16>
593 #    field ioVNmFls    , <UInt16>
594 #    field ioVBitMap   , <UInt16>
595 #    field ioAllocPtr  , <UInt16>
596 #    field ioVNmAlBlks , <UInt16>
597 #    field ioVAlBlkSiz , <UInt32>
598 #    field ioVClpSiz   , <UInt32>
599 #    field ioAlBlSt    , <UInt16>
600 #    field ioVNxtCNID  , <UInt16>
601 #    field ioVFrBlk    , <UInt16>
602 #    field ioVSigWord  , <UInt16>
603 #    field ioVDrvInfo  , <SInt16>
604 #    field ioVDRefNum  , <FSIORefNum>
605 #    field ioVFSID     , <SInt16>
606 #    field ioVBkUp     , <UInt32>
607 #    field ioVSeqNum   , <SInt16>
608 #    field ioVWrCnt    , <UInt32>
609 #    field ioVFilCnt   , <UInt32>
610 #    field ioVDirCnt   , <UInt32>
611 #    array_field ioVFndrInfo, <SInt32>
612 #    field ioVTotalBytes, <UInt64>
613 #    field ioVFreeBytes , <UInt64>
614 #  stoptype
615 #  synonym_t XVolumeParamPtr, Ptr <XVolumeParam>
616
617 #  starttype struct AccessParam
618 #    field qLink       , <QElemPtr>
619 #    field qType       , <SInt16>
620 #    field ioTrap      , <SInt16>
621 #    field ioCmdAddr   , <Ptr>
622 #    field ioCompletion, <IOCompletionUPP>
623 #    field ioResult    , <OSErr>
624 #    field ioNamePtr   , <StringPtr>
625 #    field ioVRefNum   , <FSVolumeRefNum>
626 #    field ioRefNum    , <FSIORefNum>
627 #    field ioDenyModes , <SInt16>
628 #    field filler4     , <SInt16>
629 #    field filler5     , <SInt8>
630 #    field ioACUser    , <SInt8>
631 #    field filler6     , <SInt32>
632 #    field ioACOwnerID , <SInt32>
633 #    field ioACGroupID , <SInt32>
634 #    field ioACAccess  , <SInt32>
635 #    field ioDirID     , <SInt32>
636 #  stoptype
637 #  synonym_t AccessParamPtr, Ptr <AccessParam>
638
639 #  starttype struct ObjParam
640 #    field qLink       , <QElemPtr>
641 #    field qType       , <SInt16>
642 #    field ioTrap      , <SInt16>
643 #    field ioCmdAddr   , <Ptr>
644 #    field ioCompletion, <IOCompletionUPP>
645 #    field ioResult    , <OSErr>
646 #    field ioNamePtr   , <StringPtr>
647 #    field ioVRefNum   , <FSVolumeRefNum>
648 #    field filler7     , <SInt16>
649 #    field ioObjType   , <SInt16>
650 #    field ioObjNamePtr, <StringPtr>
651 #    field ioObjID     , <SInt32>
652 #  stoptype
653 #  synonym_t ObjParamPtr, Ptr <ObjParam>
654
655 #  starttype struct CopyParam
656 #    field qLink       , <QElemPtr>
657 #    field qType       , <SInt16>
658 #    field ioTrap      , <SInt16>
659 #    field ioCmdAddr   , <Ptr>
660 #    field ioCompletion, <IOCompletionUPP>
661 #    field ioResult    , <OSErr>
662 #    field ioNamePtr   , <StringPtr>
663 #    field ioVRefNum   , <FSVolumeRefNum>
664 #    field ioDstVRefNum, <FSVolumeRefNum>
665 #    field filler8     , <SInt16>
666 #    field ioNewName   , <StringPtr>
667 #    field ioCopyName  , <StringPtr>
668 #    field ioNewDirID  , <SInt32>
669 #    field filler14    , <SInt32>
670 #    field filler15    , <SInt32>
671 #    field ioDirID     , <SInt32>
672 #  stoptype
673 #  synonym_t CopyParamPtr, Ptr <CopyParam>
674
675 #  starttype struct WDParam
676 #    field qLink       , <QElemPtr>
677 #    field qType       , <SInt16>
678 #    field ioTrap      , <SInt16>
679 #    field ioCmdAddr   , <Ptr>
680 #    field ioCompletion, <IOCompletionUPP>
681 #    field ioResult    , <OSErr>
682 #    field ioNamePtr   , <StringPtr>
683 #    field ioVRefNum   , <FSVolumeRefNum>
684 #    field ioWDCreated , <SInt16>
685 #    field ioWDIndex   , <SInt16>
686 #    field ioWDProcID  , <SInt32>
687 #    field ioWDVRefNum , <FSVolumeRefNum>
688 #    field filler10    , <SInt16>
689 #    field filler11    , <SInt32>
690 #    field filler12    , <SInt32>
691 #    field filler13    , <SInt32>
692 #    field ioWDDirID   , <SInt32>
693 #  stoptype
694 #  synonym_t WDParamPtr, Ptr <WDParam>
695
696 #  starttype struct FIDParam
697 #    field qLink       , <QElemPtr>
698 #    field qType       , <SInt16>
699 #    field ioTrap      , <SInt16>
700 #    field ioCmdAddr   , <Ptr>
701 #    field ioCompletion, <IOCompletionUPP>
702 #    field ioResult    , <OSErr>
703 #    field ioNamePtr   , <StringPtr>
704 #    field ioVRefNum   , <FSVolumeRefNum>
705 #    field filler14    , <SInt32>
706 #    field ioDestNamePtr, <StringPtr>
707 #    field filler15    , <SInt32>
708 #    field ioDestDirID , <SInt32>
709 #    field filler16    , <SInt32>
710 #    field filler17    , <SInt32>
711 #    field ioSrcDirID  , <SInt32>
712 #    field filler18    , <SInt16>
713 #    field ioFileID    , <SInt32>
714 #  stoptype
715 #  synonym_t FIDParamPtr, Ptr <FIDParam>
716
717 #  starttype struct ForeignPrivParam
718 #    field qLink       , <QElemPtr>
719 #    field qType       , <SInt16>
720 #    field ioTrap      , <SInt16>
721 #    field ioCmdAddr   , <Ptr>
722 #    field ioCompletion, <IOCompletionUPP>
723 #    field ioResult    , <OSErr>
724 #    field ioNamePtr   , <StringPtr>
725 #    field ioVRefNum   , <FSVolumeRefNum>
726 #    field ioFiller21  , <SInt32>
727 #    field ioFiller22  , <SInt32>
728 #    field ioForeignPrivBuffer  , <Ptr>
729 #    field ioForeignPrivActCount, <SInt32>
730 #    field ioForeignPrivReqCount, <SInt32>
731 #    field ioFiller23           , <SInt32>
732 #    field ioForeignPrivDirID   , <SInt32>
733 #    field ioForeignPrivInfo1   , <SInt32>
734 #    field ioForeignPrivInfo2   , <SInt32>
735 #    field ioForeignPrivInfo3   , <SInt32>
736 #    field ioForeignPrivInfo4   , <SInt32>
737 #  stoptype
738 #  synonym_t ForeignPrivParamPtr, Ptr <ForeignPrivParam>
739
740 #  starttype struct CSParam
741 #    field qLink       , <QElemPtr>
742 #    field qType       , <SInt16>
743 #    field ioTrap      , <SInt16>
744 #    field ioCmdAddr   , <Ptr>
745 #    field ioCompletion, <IOCompletionUPP>
746 #    field ioResult    , <OSErr>
747 #    field ioNamePtr   , <StringPtr>
748 #    field ioVRefNum   , <FSVolumeRefNum>
749 #    field ioMatchPtr  , <FSSpecPtr>
750 #    field ioReqMatchCount, <SInt32>
751 #    field ioActMatchCount, <SInt32>
752 #    field ioSearchBits   , <SInt32>
753 #    field ioSearchInfo1  , <CInfoPBPtr>
754 #    field ioSearchInfo2  , <CInfoPBPtr>
755 #    field ioSearchTime   , <SInt32>
756 #    field ioCatPosition  , <CatPositionRec>
757 #    field ioOptBuffer    , <Ptr>
758 #    field ioOptBufSize   , <SInt32>
759 #  stoptype
760 #  synonym_t CSParamPtr, Ptr <CSParam>
761
762 #  starttype union HParamBlockRec
763 #    union_field ioParam    , <HIOParam>
764 #    union_field fileParam  , <HFileParam>
765 #    union_field volumeParam, <HVolumeParam>
766 #    union_field accessParam, <AccessParam>
767 #    union_field objParam   , <ObjParam>
768 #    union_field copyParam  , <CopyParam>
769 #    union_field wdParam    , <WDParam>
770 #    union_field fidParam   , <FIDParam>
771 #    union_field csParam    , <CSParam>
772 #    union_field foreignPrivParam, <ForeignPrivParam>
773 #  stoptype
774 #  synonym_t HParmBlkPtr, Ptr <HParamBlockRec>
775
776 #  starttype struct CMovePBRec
777 #    field qLink       , <QElemPtr>
778 #    field qType       , <SInt16>
779 #    field ioTrap      , <SInt16>
780 #    field ioCmdAddr   , <Ptr>
781 #    field ioCompletion, <IOCompletionUPP>
782 #    field ioResult    , <OSErr>
783 #    field ioNamePtr   , <StringPtr>
784 #    field ioVRefNum   , <FSVolumeRefNum>
785 #    field filler1     , <SInt32>
786 #    field ioNewName   , <StringPtr>
787 #    field filler2     , <SInt32>
788 #    field ioNewDirID  , <SInt32>
789 #    array_field filler3, <SInt32>
790 #    field ioDirID     , <SInt32>
791 #  stoptype
792 #  synonym_t CMovePBPtr, Ptr <CMovePBRec>
793
794 #  starttype struct WDPBRec
795 #    field qLink       , <QElemPtr>
796 #    field qType       , <SInt16>
797 #    field ioTrap      , <SInt16>
798 #    field ioCmdAddr   , <Ptr>
799 #    field ioCompletion, <IOCompletionUPP>
800 #    field ioResult    , <OSErr>
801 #    field ioNamePtr   , <StringPtr>
802 #    field ioVRefNum   , <FSVolumeRefNum>
803 #    field filler1     , <SInt16>
804 #    field ioWDIndex   , <SInt16>
805 #    field ioWDProcID  , <SInt32>
806 #    field ioWDVRefNum , <FSVolumeRefNum>
807 #    array_field filler2, <SInt16>
808 #    field ioWDDirID   , <SInt32>
809 #  stoptype
810 #  synonym_t WDPBPtr, Ptr <WDPBRec>
811
812 #  starttype struct FCBPBRec
813 #    field qLink       , <QElemPtr>
814 #    field qType       , <SInt16>
815 #    field ioTrap      , <SInt16>
816 #    field ioCmdAddr   , <Ptr>
817 #    field ioCompletion, <IOCompletionUPP>
818 #    field ioResult    , <OSErr>
819 #    field ioNamePtr   , <StringPtr>
820 #    field ioVRefNum   , <FSVolumeRefNum>
821 #    field ioRefNum    , <FSIORefNum>
822 #    field filler      , <SInt16>
823 #    field ioFCBIndx   , <SInt16>
824 #    field filler1     , <SInt16>
825 #    field ioFCBFlNm   , <SInt32>
826 #    field ioFCBFlags  , <SInt16>
827 #    field ioFCBStBlk  , <UInt16>
828 #    field ioFCBEOF    , <SInt32>
829 #    field ioFCBPLen   , <SInt32>
830 #    field ioFCBCrPs   , <SInt32>
831 #    field ioFCBVRefNum, <FSVolumeRefNum>
832 #    field ioFCBClpSiz , <SInt32>
833 #    field ioFCBParID  , <SInt32>
834 #  stoptype
835 #  synonym_t FCBPBPtr, Ptr <FCBPBRec>
836
837 #  starttype struct VCB
838 #    field qLink       , <QElemPtr>
839 #    field qType       , <SInt16>
840 #    field vcbFlags    , <SInt16>
841 #    field vcbSigWord  , <UInt16>
842 #    field vcbCrDate   , <UInt32>
843 #    field vcbLsMod    , <SInt16>
844 #    field vcbAtrb     , <SInt16>
845 #    field vcbVBMSt    , <SInt16>
846 #    field vcbAllocPtr , <SInt16>
847 #    field vcbNmAlBlks , <UInt16>
848 #    field vcbAlBlkSiz , <SInt32>
849 #    field vcbClpSiz   , <SInt32>
850 #    field vcbAlBlSt   , <SInt16>
851 #    field vcbNxtCNID  , <SInt32>
852 #    field vcbFreeBks  , <UInt16>
853 #    field vcbVN       , <Str27>
854 #    field vcbDrvNum   , <SInt16>
855 #    field vcbDRefNum  , <FSIORefNum>
856 #    field vcbFSID     , <SInt16>
857 #    field vcbVRefNum  , <FSVolumeRefNum>
858 #    field vcbMAdr     , <Ptr>
859 #    field vcbBufAdr   , <Ptr>
860 #    field vcbMLen     , <SInt16>
861 #    field vcbDirIndex , <SInt16>
862 #    field vcbDirBlk   , <SInt16>
863 #    field vcbVolBkUp  , <UInt32>
864 #    field vcbVSeqNum  , <UInt16>
865 #    field vcbWrCnt    , <SInt16>
866 #    field vcbXTClpSiz , <SInt32>
867 #    field vcbCTClpSiz , <SInt32>
868 #    field vcbNmRtDirs , <UInt16>
869 #    field vcbFilCnt   , <SInt32>
870 #    field vcbDirCnt   , <SInt32>
871 #    array_field vcbFndrInfo, <SInt32>
872 #    field vcbVCSize   , <UInt16>
873 #    field vcbVBMCSiz  , <UInt16>
874 #    field vcbCtlCSiz  , <UInt16>
875 #    field vcbXTAlBlks , <UInt16>
876 #    field vcbCTAlBlks , <UInt16>
877 #    field vcbXTRef    , <SInt16>
878 #    field vcbCTRef    , <SInt16>
879 #    field vcbCtlBuf   , <Ptr>
880 #    field vcbDirIDM   , <SInt32>
881 #    field vcbOffsM    , <SInt16>
882 #  stoptype
883 #  synonym_t VCBtr, Ptr <VCB>
884
885 #  starttype DrvQEl
886 #    field qLink   , <QElemPtr>
887 #    field qType   , <SInt16>
888 #    field dQDrive , <SInt16>
889 #    field dQRefNum, <SInt16>
890 #    field dQFSID  , <SInt16>
891 #    field dQDrvSz , <UInt16>
892 #    field dQDrvSz2, <UInt16>
893 #  stoptype
894 #  synonym_t DrvQElPtr, Ptr <DrvQEl>
895 #endif
896
897 #starttype struct FSPermissionInfo
898 #  field userID    , <UInt32>
899 #  field groupID   , <UInt32>
900 #  field reserved1 , <UInt8>
901 #  field userAccess, <UInt8>
902 #  field mode      , <UInt16>
903 #  field fileSec   , <FSFileSecurityRef>
904 #stoptype
905
906 #synonym_t FSCatalogInfoBitmap, <UInt32>
907 #num kFSCatInfoNone
908 #num kFSCatInfoTextEncoding
909 #num kFSCatInfoNodeFlags
910 #num kFSCatInfoVolume
911 #num kFSCatInfoParentDirID
912 #num kFSCatInfoNodeID
913 #num kFSCatInfoCreateDate
914 #num kFSCatInfoContentMod
915 #num kFSCatInfoAttrMod
916 #num kFSCatInfoAccessDate
917 #num kFSCatInfoBackupDate
918 #num kFSCatInfoPermissions
919 #num kFSCatInfoFinderInfo
920 #num kFSCatInfoFinderXInfo
921 #num kFSCatInfoValence
922 #num kFSCatInfoDataSizes
923 #num kFSCatInfoRsrcSizes
924 #num kFSCatInfoSharingFlags
925 #num kFSCatInfoUserPrivs
926 #num kFSCatInfoUserAccess
927 #num kFSCatInfoSetOwnership
928 #num kFSCatInfoFSFileSecurityRef
929 #num kFSCatInfoAllDates
930 #num kFSCatInfoGettableInfo
931 #num kFSCatInfoSettableInfo
932 #num kFSCatInfoReserved
933
934 #num kFSNodeLockedBit
935 #num kFSNodeLockedMask
936 #num kFSNodeResOpenBit
937 #num kFSNodeResOpenMask
938 #num kFSNodeDataOpenBit
939 #num kFSNodeDataOpenMask
940 #num kFSNodeIsDirectoryBit
941 #num kFSNodeIsDirectoryMask
942 #num kFSNodeCopyProtectBit
943 #num kFSNodeCopyProtectMask
944 #num kFSNodeForkOpenBit
945 #num kFSNodeForkOpenMask
946 #num kFSNodeHardLinkBit
947 #num kFSNodeHardLinkMask
948
949 #num kFSNodeInSharedBit
950 #num kFSNodeInSharedMask
951 #num kFSNodeIsMountedBit
952 #num kFSNodeIsMountedMask
953 #num kFSNodeIsSharePointBit
954 #num kFSNodeIsSharePointMask
955
956 #ifdef __LP64__
957 #  starttype struct FSCatalogInfo
958 #    field nodeFlags       , <UInt16>
959 #    field volume          , <FSVolumeRefNum>
960 #    field parentDirID     , <UInt32>
961 #    field nodeID          , <UInt32>
962 #    field sharingFlags    , <UInt8>
963 #    field userPrivileges  , <UInt8>
964 #    field reserved1       , <UInt8>
965 #    field reserved2       , <UInt8>
966 #    field createDate      , <UTCDateTime>
967 #    field contentModDate  , <UTCDateTime>
968 #    field attributeModDate, <UTCDateTime>
969 #    field accessDate      , <UTCDateTime>
970 #    field backupDate      , <UTCDateTime>
971 #    field permissions     , <FSPermissionInfo>
972 #    array_field finderInfo, <UInt8>
973 #    array_field extFinderInfo, <UInt8>
974 #    field dataLogicalSize , <UInt64>
975 #    field dataPhysicalSize, <UInt64>
976 #    field rsrcLogicalSize , <UInt64>
977 #    field rsrcPhysicalSize, <UInt64>
978 #    field valence         , <UInt32>
979 #    field textEncodingHint, <TextEncoding>
980 #  stoptype
981 #else
982 #  starttype struct FSCatalogInfo
983 #    field nodeFlags       , <UInt16>
984 #    field volume          , <FSVolumeRefNum>
985 #    field parentDirID     , <UInt32>
986 #    field nodeID          , <UInt32>
987 #    field sharingFlags    , <UInt8>
988 #    field userPrivileges  , <UInt8>
989 #    field reserved1       , <UInt8>
990 #    field reserved2       , <UInt8>
991 #    field createDate      , <UTCDateTime>
992 #    field contentModDate  , <UTCDateTime>
993 #    field attributeModDate, <UTCDateTime>
994 #    field accessDate      , <UTCDateTime>
995 #    field backupDate      , <UTCDateTime>
996 #    array_field permissions, <UInt32>
997 #    array_field finderInfo, <UInt8>
998 #    array_field extFinderInfo, <UInt8>
999 #    field dataLogicalSize , <UInt64>
1000 #    field dataPhysicalSize, <UInt64>
1001 #    field rsrcLogicalSize , <UInt64>
1002 #    field rsrcPhysicalSize, <UInt64>
1003 #    field valence         , <UInt32>
1004 #    field textEncodingHint, <TextEncoding>
1005 #  stoptype
1006 #endif
1007
1008 #starttype struct FSRefParam
1009 #  field qLink       , <QElemPtr>
1010 #  field qType       , <SInt16>
1011 #  field ioTrap      , <SInt16>
1012 #  field ioCmdAddr   , <Ptr>
1013 #  field ioCompletion, <IOCompletionUPP>
1014 #  field ioResult    , <OSErr>
1015 #  field ioNamePtr   , <StringPtr>
1016 #  field ioVRefNum   , <FSVolumeRefNum>
1017 #  field reserved1   , <SInt16>
1018 #  field reserved2   , <UInt8>
1019 #  field reserved3   , <UInt8>
1020 #  field ref         , Ptr <FSRef>
1021 #  field whichInfo   , <FSCatalogInfoBitmap>
1022 #  field catInfo     , Ptr <FSCatalogInfo>
1023 #  field nameLength  , <UniCharCount>
1024 #  field name        , Ptr <UniChar>
1025 #  field ioDirID     , <UInt32>
1026 #  field spec        , <FSSpecPtr>
1027 #  field parentRef   , Ptr <FSRef>
1028 #  field newRef      , Ptr <FSRef>
1029 #  field textEncodingHint, <TextEncoding>
1030 #  field outName     , Ptr <HFSUniStr255>
1031 #stoptype
1032 #synonym_t FSRefParamPtr, Ptr <FSRefParam>
1033
1034 #starttype struct FSRefForkIOParam
1035 #  field qLink       , <QElemPtr>
1036 #  field qType       , <SInt16>
1037 #  field ioTrap      , <SInt16>
1038 #  field ioCmdAddr   , <Ptr>
1039 #  field ioCompletion, <IOCompletionUPP>
1040 #  field ioResult    , <OSErr>
1041 #  field parentRef   , Ptr <FSRef>
1042 #  field nameLength  , <UniCharCount>
1043 #  field name        , Ptr <UniChar>
1044 #  field whichInfo   , <FSCatalogInfoBitmap>
1045 #  field catInfo     , Ptr <FSCatalogInfo>
1046 #  field forkNameLength, <UniCharCount>
1047 #  field forkName    , Ptr <UniChar>
1048 #  field permissions , <SInt8>
1049 #  field reserved1   , <UInt8>
1050 #  field forkRefNum  , <FSIORefNum>
1051 #  field newRef      , Ptr <FSRef>
1052 #stoptype
1053 #synonym_t FSRefForkIOParamPtr, Ptr <FSRefForkIOParam>
1054
1055 #opaque_t OpaqueFSIterator
1056 #synonym_t FSIterator, Ptr <OpaqueFSIterator>
1057
1058 #num kFSIterateFlat
1059 #num kFSIterateSubtree
1060 #num kFSIterateDelete
1061 #num kFSIterateReserved
1062
1063 #synonym_t FSIteratorFlags, <OptionBits>
1064
1065 #starttype struct FSSearchParams
1066 #  field searchTime      , <Duration>
1067 #  field searchBits      , <OptionBits>
1068 #  field searchNameLength, <UniCharCount>
1069 #  field searchName      , Ptr <UniChar>
1070 #  field searchInfo1     , Ptr <FSCatalogInfo>
1071 #  field searchInfo2     , Ptr <FSCatalogInfo>
1072 #stoptype
1073 #synonym_t FSSearchParamsPtr, Ptr <FSSearchParams>
1074
1075 #starttype struct FSCatalogBulkParam
1076 #  field qLink       , <QElemPtr>
1077 #  field qType       , <SInt16>
1078 #  field ioTrap      , <SInt16>
1079 #  field ioCmdAddr   , <Ptr>
1080 #  field ioCompletion, <IOCompletionUPP>
1081 #  field ioResult    , <OSErr>
1082 #  field containerChanged, <Boolean>
1083 #  field reserved    , <UInt8>
1084 #  field iteratorFlags, <FSIteratorFlags>
1085 #  field iterator    , <FSIterator>
1086 #  field container   , Ptr <FSRef>
1087 #  field maximumItems, <ItemCount>
1088 #  field actualItems , <ItemCount>
1089 #  field whichInfo   , <FSCatalogInfoBitmap>
1090 #  field catalogInfo , Ptr <FSCatalogInfo>
1091 #  field refs        , Ptr <FSRef>
1092 #  field specs       , <FSSpecPtr>
1093 #  field names       , Ptr <HFSUniStr255>
1094 #  field searchParams, Ptr <FSSearchParams>
1095 #stoptype
1096 #synonym_t FSCatalogBulkParamPtr, Ptr <FSCatalogBulkParam>
1097
1098 #synonym_t FSAllocationFlags, <UInt16>
1099 #num kFSAllocDefaultFlags
1100 #num kFSAllocAllOrNothingMask
1101 #num kFSAllocContiguousMask
1102 #num kFSAllocNoRoundUpMask
1103 #num kFSAllocReservedMask
1104
1105 #starttype struct FSForkIOParam
1106 #  field qLink       , <QElemPtr>
1107 #  field qType       , <SInt16>
1108 #  field ioTrap      , <SInt16>
1109 #  field ioCmdAddr   , <Ptr>
1110 #  field ioCompletion, <IOCompletionUPP>
1111 #  field ioResult    , <OSErr>
1112 #  field reserved1   , Ptr ()
1113 #  field reserved2   , <SInt16>
1114 #  field forkRefNum  , <FSIORefNum>
1115 #  field reserved3   , <UInt8>
1116 #  field permissions , <SInt8>
1117 #  field ref         , Ptr <FSRef>
1118 #  field buffer      , <Ptr>
1119 #  field requestCount, <UInt32>
1120 #  field actualCount , <UInt32>
1121 #  field positionMode, <UInt16>
1122 #  field positionOffset, <SInt64>
1123 #  field allocationFlags, <FSAllocationFlags>
1124 #  field allocationAmount, <UInt64>
1125 #  field forkNameLength, <UniCharCount>
1126 #  field forkName, Ptr <UniChar>
1127 #  field forkIterator, <CatPositionRec>
1128 #  field outForkName , Ptr <HFSUniStr255>
1129 #stoptype
1130 #synonym_t FSForkIOParamPtr, Ptr <FSForkIOParam>
1131
1132 {-
1133         *'``・* 。
1134         |     `*。
1135        ,。∩      *    もうどうにでもな〜れ
1136       + (´・ω・`) *。+゚
1137       `*。 ヽ、  つ *゚*
1138        `・+。*・' ゚⊃ +゚
1139        ☆   ∪~ 。*゚
1140         `・+。*・ ゚ 
1141 -}
1142
1143 #starttype struct FSForkInfo
1144 #  field flags      , <SInt8>
1145 #  field permissions, <SInt8>
1146 #  field volume     , <FSVolumeRefNum>
1147 #  field reserved2  , <UInt32>
1148 #  field nodeID     , <UInt32>
1149 #  field forkID     , <UInt32>
1150 #  field currentPosition, <UInt64>
1151 #  field logicalEOF , <UInt64>
1152 #  field physicalEOF, <UInt64>
1153 #  field process    , <UInt64>
1154 #stoptype
1155 #synonym_t FSForkInfoPtr, Ptr <FSForkInfo>
1156
1157 #starttype struct FSForkCBInfoParam
1158 #  field qLink       , <QElemPtr>
1159 #  field qType       , <SInt16>
1160 #  field ioTrap      , <SInt16>
1161 #  field ioCmdAddr   , <Ptr>
1162 #  field ioCompletion, <IOCompletionUPP>
1163 #  field ioResult    , <OSErr>
1164 #  field desiredRefNum, <FSIORefNum>
1165 #  field volumeRefNum, <FSVolumeRefNum>
1166 #  field iterator    , <FSIORefNum>
1167 #  field actualRefNum, <FSVolumeRefNum>
1168 #  field ref         , Ptr <FSRef>
1169 #  field forkInfo    , Ptr <FSForkInfo>
1170 #  field forkName    , Ptr <HFSUniStr255>
1171 #stoptype
1172 #synonym_t FSForkCBInfoParamPtr, Ptr <FSForkCBInfoParam>
1173
1174 #starttype struct FSRangeLockParam
1175 #  field qLink       , <QElemPtr>
1176 #  field qType       , <SInt16>
1177 #  field ioTrap      , <SInt16>
1178 #  field ioCmdAddr   , <Ptr>
1179 #  field ioCompletion, <IOCompletionUPP>
1180 #  field ioResult    , <OSErr>
1181 #  field forkRefNum  , <FSIORefNum>
1182 #  field requestCount, <UInt64>
1183 #  field positionMode, <UInt16>
1184 #  field positionOffset, <SInt64>
1185 #  field rangeStart  , <UInt64>
1186 #stoptype
1187 #synonym_t FSRangeLockParamPtr, Ptr <FSRangeLockParam>
1188
1189 #synonym_t FSVolumeInfoBitmap, <UInt32>
1190 #num kFSVolInfoNone
1191 #num kFSVolInfoCreateDate
1192 #num kFSVolInfoModDate
1193 #num kFSVolInfoBackupDate
1194 #num kFSVolInfoCheckedDate
1195 #num kFSVolInfoFileCount
1196 #num kFSVolInfoSizes
1197 #num kFSVolInfoBlocks
1198 #num kFSVolInfoNextAlloc
1199 #num kFSVolInfoRsrcClump
1200 #num kFSVolInfoDataClump
1201 #num kFSVolInfoNextID
1202 #num kFSVolInfoFinderInfo
1203 #num kFSVolInfoFlags
1204 #num kFSVolInfoFSInfo
1205 #num kFSVolInfoDriveInfo
1206 #num kFSVolInfoGettableInfo
1207 #num kFSVolInfoSettableInfo
1208
1209 #num kFSVolFlagDefaultVolumeBit
1210 #num kFSVolFlagDefaultVolumeMask
1211 #num kFSVolFlagFilesOpenBit
1212 #num kFSVolFlagFilesOpenMask
1213 #num kFSVolFlagHardwareLockedBit
1214 #num kFSVolFlagHardwareLockedMask
1215 #num kFSVolFlagJournalingActiveBit
1216 #num kFSVolFlagJournalingActiveMask
1217 #num kFSVolFlagSoftwareLockedBit
1218 #num kFSVolFlagSoftwareLockedMask
1219
1220 #starttype struct FSVolumeInfo
1221 #  field createDate , <UTCDateTime>
1222 #  field modifyDate , <UTCDateTime>
1223 #  field backupDate , <UTCDateTime>
1224 #  field checkedDate, <UTCDateTime>
1225 #  field fileCount  , <UInt32>
1226 #  field folderCount, <UInt32>
1227 #  field totalBytes , <UInt64>
1228 #  field freeBytes  , <UInt64>
1229 #  field blockSize  , <UInt32>
1230 #  field totalBlocks, <UInt32>
1231 #  field freeBlocks , <UInt32>
1232 #  field nextAllocation  , <UInt32>
1233 #  field rsrcClumpSize   , <UInt32>
1234 #  field dataClumpSize   , <UInt32>
1235 #  field nextCatalogID   , <UInt32>
1236 #  array_field finderInfo, <UInt8>
1237 #  field flags           , <UInt16>
1238 #  field filesystemID    , <UInt16>
1239 #  field signature       , <UInt16>
1240 #  field driveNumber     , <UInt16>
1241 #  field driverRefNum    , <FSIORefNum>
1242 #stoptype
1243 #synonym_t FSVolumeInfo, Ptr <FSVolumeInfo>
1244
1245 #starttype struct FSVolumeInfoParam
1246 #  field qLink       , <QElemPtr>
1247 #  field qType       , <SInt16>
1248 #  field ioTrap      , <SInt16>
1249 #  field ioCmdAddr   , <Ptr>
1250 #  field ioCompletion, <IOCompletionUPP>
1251 #  field ioResult    , <OSErr>
1252 #  field ioNamePtr   , <StringPtr>
1253 #  field ioVRefNum   , <FSVolumeRefNum>
1254 #  field volumeIndex , <UInt32>
1255 #  field whichInfo   , <FSVolumeInfoBitmap>
1256 #  field volumeInfo  , Ptr <FSVolumeInfo>
1257 #  field volumeName  , Ptr <HFSUniStr255>
1258 #  field ref         , Ptr <FSRef>
1259 #stoptype
1260 #synonym_t FSVolumeInfoParamPtr, Ptr <FSVolumeInfoParam>
1261
1262 #starttype struct GetVolParmsInfoBuffer
1263 #  field vMVersion  , <SInt16>
1264 #  field vMAttrib   , <SInt32>
1265 #  field vMLocalHand, <Handle>
1266 #  field vMServerAdr, <SInt32>
1267 #  field vMVolumeGrade       , <SInt32>
1268 #  field vMForeignPrivID     , <SInt16>
1269 #  field vMExtendedAttributes, <SInt32>
1270 #  field vMDeviceID          , Ptr ()
1271 #  field vMMaxNameLength     , <UniCharCount>
1272 #stoptype
1273
1274 #synonym_t VolumeType, <OSType>
1275 #num AppleShareMediaType
1276
1277 #starttype struct VolMountInfoHeader
1278 #  field length, <SInt16>
1279 #  field media , <VolumeType>
1280 #stoptype
1281 #synonym_t VolMountInfoPtr, Ptr <VolMountInfoHeader>
1282
1283 #starttype struct VolumeMountInfoHeader
1284 #  field length, <SInt16>
1285 #  field media , <VolumeType>
1286 #  field flags , <SInt16>
1287 #stoptype
1288 #synonym_t VolumeMountInfoHeaderPtr, Ptr <VolumeMountInfoHeader>
1289
1290 #num volMountNoLoginMsgFlagBit
1291 #num volMountNoLoginMsgFlagMask
1292 #num volMountExtendedFlagsBit
1293 #num volMountExtendedFlagsMask
1294 #num volMountInteractBit
1295 #num volMountInteractMask
1296 #num volMountChangedBit
1297 #num volMountChangedMask
1298 #num volMountFSReservedMask
1299 #num volMountSysReservedMask
1300
1301 #starttype struct AFPVolMountInfo
1302 #  field length            , <SInt16>
1303 #  field media             , <VolumeType>
1304 #  field flags             , <SInt16>
1305 #  field nbpInterval       , <SInt8>
1306 #  field nbpCount          , <SInt8>
1307 #  field uamType           , <SInt16>
1308 #  field zoneNameOffset    , <SInt16>
1309 #  field serverNameOffset  , <SInt16>
1310 #  field volNameOffset     , <SInt16>
1311 #  field userNameOffset    , <SInt16>
1312 #  field userPasswordOffset, <SInt16>
1313 #  field volPasswordOffset , <SInt16>
1314 #  array_field AFPData     , CChar
1315 #stoptype
1316 #synonym_t AFPVolMountInfoPtr, Ptr <AFPVolMountInfo>
1317
1318 #num kAFPExtendedFlagsAlternateAddressMask
1319
1320 #num kAFPTagTypeIP
1321 #num kAFPTagTypeIPPort
1322 #num kAFPTagTypeDDP
1323 #num kAFPTagTypeDNS
1324
1325 #num kAFPTagLengthIP
1326 #num kAFPTagLengthIPPort
1327 #num kAFPTagLengthDDP
1328
1329 #starttype struct AFPTagData
1330 #  field fLength, <UInt8>
1331 #  field fType  , <UInt8>
1332 #  flexible_array_member fData, <UInt8>
1333 #stoptype
1334
1335 #starttype struct AFPAlternateAddress
1336 #  field fVersion     , <UInt8>
1337 #  field fAddressCount, <UInt8>
1338 #  flexible_array_member fAddressList, <UInt8>
1339 #stoptype
1340
1341 #num kLargeIconSize
1342 #num kLarge4BitIconSize
1343 #num kLarge8BitIconSize
1344 #num kSmallIconSize
1345 #num kSmall4BitIconSize
1346 #num kSmall8BitIconSize
1347
1348 #ccall FSMakeFSRefUnicode      , Ptr <FSRef> -> <UniCharCount> -> Ptr <UniChar> -> <TextEncoding> -> Ptr <FSRef> -> IO <OSErr>
1349 #ccall PBMakeFSRefUnicodeSync  , Ptr <FSRefParam> -> IO <OSErr>
1350 #ccall PBMakeFSRefUnicodeAsync , Ptr <FSRefParam> -> IO ()
1351 #ccall FSCompareFSRefs         , Ptr <FSRef> -> Ptr <FSRef> -> IO <OSErr>
1352 #ccall PBCompareFSRefsSync     , Ptr <FSRefParam> -> IO <OSErr>
1353 #ccall PBCompareFSRefsAsync    , Ptr <FSRefParam> -> IO ()
1354 #ccall FSCreateFileUnicode     , Ptr <FSRef> -> <UniCharCount> -> Ptr <UniChar> -> <FSCatalogInfoBitmap> -> Ptr <FSCatalogInfo> -> Ptr <FSRef> -> <FSSpecPtr> -> IO <OSErr>
1355 #ccall PBCreateFileUnicodeSync , Ptr <FSRefParam> -> IO <OSErr>
1356 #ccall PBCreateFileUnicodeAsync, Ptr <FSRefParam> -> IO ()
1357 #ccall FSCreateDirectoryUnicode, Ptr <FSRef> -> <UniCharCount> -> Ptr <UniChar> -> <FSCatalogInfoBitmap> -> Ptr <FSCatalogInfo> -> Ptr <FSRef> -> <FSSpecPtr> -> Ptr <UInt32> -> IO <OSErr>
1358 #ccall PBCreateDirectoryUnicodeSync , Ptr <FSRefParam> -> IO <OSErr>
1359 #ccall PBCreateDirectoryUnicodeAsync, Ptr <FSRefParam> -> IO ()
1360 #ccall FSDeleteObject          , Ptr <FSRef> -> IO <OSErr>
1361 #ccall PBDeleteObjectSync      , Ptr <FSRefParam> -> IO <OSErr>
1362 #ccall PBDeleteObjectAsync     , Ptr <FSRefParam> -> IO ()
1363 #ccall FSUnlinkObject          , Ptr <FSRef> -> IO <OSErr>
1364 #ccall PBUnlinkObjectSync      , Ptr <FSRefParam> -> IO <OSErr>
1365 #ccall PBUnlinkObjectAsync     , Ptr <FSRefParam> -> IO ()
1366 #ccall FSMoveObject            , Ptr <FSRef> -> Ptr <FSRef> -> Ptr <FSRef> -> IO <OSErr>
1367 #ccall PBMoveObjectSync        , Ptr <FSRefParam> -> IO <OSErr>
1368 #ccall PBMoveObjectAsync       , Ptr <FSRefParam> -> IO ()
1369 #ccall FSExchangeObjects       , Ptr <FSRef> -> Ptr <FSRef> -> IO <OSErr>
1370 #ccall PBExchangeObjectsSync   , Ptr <FSRefParam> -> IO <OSErr>
1371 #ccall PBExchangeObjectsAsync  , Ptr <FSRefParam> -> IO ()
1372
1373 #num kFSReplaceObjectDefaultOptions
1374 #num kFSReplaceObjectReplaceMetadata
1375 #num kFSReplaceObjectSaveOriginalAsABackup
1376 #num kFSReplaceObjectReplacePermissionInfo
1377 #num kFSReplaceObjectPreservePermissionInfo
1378 #num kFSReplaceObjectDoNotCheckObjectWriteAccess
1379
1380 #ccall FSReplaceObject      , Ptr <FSRef> -> Ptr <FSRef> -> <CFStringRef> -> <CFStringRef> -> Ptr <FSRef> -> <OptionBits> -> Ptr <FSRef> -> IO <OSStatus>
1381 #ccall FSPathReplaceObject  , Ptr CChar -> Ptr CChar -> <CFStringRef> -> <CFStringRef> -> Ptr CChar -> <OptionBits> -> IO <OSStatus>
1382 #ccall FSGetTemporaryDirectoryForReplaceObject    , Ptr <FSRef> -> Ptr <FSRef> -> <OptionBits> -> IO <OSStatus>
1383 #ccall FSPathGetTemporaryDirectoryForReplaceObject, Ptr CChar -> Ptr CChar -> <UInt32> -> <OptionBits> -> IO <OSStatus>
1384 #ccall FSRenameUnicode      , Ptr <FSRef> -> <UniCharCount> -> Ptr <UniChar> -> <TextEncoding> -> Ptr <FSRef> -> IO <OSErr>
1385 #ccall PBRenameUnicodeSync  , Ptr <FSRefParam> -> IO <OSErr>
1386 #ccall PBRenameUnicodeAsync , Ptr <FSRefParam> -> IO ()
1387 #ccall FSGetCatalogInfo     , Ptr <FSRef> -> <FSCatalogInfoBitmap> -> Ptr <FSCatalogInfo> -> Ptr <HFSUniStr255> -> <FSSpecPtr> -> Ptr <FSRef> -> IO <OSErr>
1388 #ccall PBGetCatalogInfoSync , Ptr <FSRefParam> -> IO <OSErr>
1389 #ccall PBGetCatalogInfoAsync, Ptr <FSRefParam> -> IO ()
1390 #ccall FSSetCatalogInfo     , Ptr <FSRef> -> <FSCatalogInfoBitmap> -> Ptr <FSCatalogInfo> -> IO <OSErr>
1391 #ccall PBSetCatalogInfoSync , Ptr <FSRefParam> -> IO <OSErr>
1392 #ccall PBSetCatalogInfoAsync, Ptr <FSRefParam> -> IO ()
1393 #ccall FSOpenIterator       , Ptr <FSRef> -> <FSIteratorFlags> -> Ptr <FSIterator> -> IO <OSErr>
1394 #ccall PBOpenIteratorSync   , Ptr <FSCatalogBulkParam> -> IO <OSErr>
1395 #ccall PBOpenIteratorAsync  , Ptr <FSCatalogBulkParam> -> IO ()
1396 #ccall FSCloseIterator      ,