DiskInit.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:6k
- /*
- File: DiskInit.h
-
- Contains: Disk Initialization Package ('PACK' 2) Interfaces.
-
- Version: Technology: System 8.5
- Release: QuickTime 6.0.2
-
- Copyright: (c) 1985-2001 by Apple Computer, Inc., all rights reserved
-
- Bugs?: For bug reports, consult the following page on
- the World Wide Web:
-
- http://developer.apple.com/bugreporter/
-
- */
- #ifndef __DISKINIT__
- #define __DISKINIT__
- #ifndef __MACTYPES__
- #include "MacTypes.h"
- #endif
- #if PRAGMA_ONCE
- #pragma once
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- #if PRAGMA_IMPORT
- #pragma import on
- #endif
- #if PRAGMA_STRUCT_ALIGN
- #pragma options align=mac68k
- #elif PRAGMA_STRUCT_PACKPUSH
- #pragma pack(push, 2)
- #elif PRAGMA_STRUCT_PACK
- #pragma pack(2)
- #endif
- struct HFSDefaults {
- char sigWord[2]; /* signature word */
- long abSize; /* allocation block size in bytes */
- long clpSize; /* clump size in bytes */
- long nxFreeFN; /* next free file number */
- long btClpSize; /* B-Tree clump size in bytes */
- short rsrv1; /* reserved */
- short rsrv2; /* reserved */
- short rsrv3; /* reserved */
- };
- typedef struct HFSDefaults HFSDefaults;
- enum {
- kHFSPlusDefaultsVersion = 1
- };
- struct HFSPlusDefaults {
- UInt16 version; /* version of this structure */
- UInt16 flags; /* currently undefined; pass zero */
- UInt32 blockSize; /* allocation block size in bytes */
- UInt32 rsrcClumpSize; /* clump size for resource forks */
- UInt32 dataClumpSize; /* clump size for data forks */
- UInt32 nextFreeFileID; /* next free file number */
- UInt32 catalogClumpSize; /* clump size for catalog B-tree */
- UInt32 catalogNodeSize; /* node size for catalog B-tree */
- UInt32 extentsClumpSize; /* clump size for extents B-tree */
- UInt32 extentsNodeSize; /* node size for extents B-tree */
- UInt32 attributesClumpSize; /* clump size for attributes B-tree */
- UInt32 attributesNodeSize; /* node size for attributes B-tree */
- UInt32 allocationClumpSize; /* clump size for allocation bitmap file */
- };
- typedef struct HFSPlusDefaults HFSPlusDefaults;
- #if CALL_NOT_IN_CARBON
- EXTERN_API( void )
- DILoad (void) THREEWORDINLINE(0x7002, 0x3F00, 0xA9E9);
- EXTERN_API( void )
- DIUnload (void) THREEWORDINLINE(0x7004, 0x3F00, 0xA9E9);
- EXTERN_API( short )
- DIBadMount (Point where,
- UInt32 evtMessage) THREEWORDINLINE(0x7000, 0x3F00, 0xA9E9);
- EXTERN_API( OSErr )
- DIFormat (short drvNum) THREEWORDINLINE(0x7006, 0x3F00, 0xA9E9);
- EXTERN_API( OSErr )
- DIVerify (short drvNum) THREEWORDINLINE(0x7008, 0x3F00, 0xA9E9);
- EXTERN_API( OSErr )
- DIZero (short drvNum,
- ConstStr255Param volName) THREEWORDINLINE(0x700A, 0x3F00, 0xA9E9);
- /*
- DIXFormat, DIXZero, and DIReformat are only available when FSM (File System Manager) is installed.
- FSM is part of Macintosh PC Exchange and System 7.5.
- */
- EXTERN_API( OSErr )
- DIXFormat (short drvNum,
- Boolean fmtFlag,
- unsigned long fmtArg,
- unsigned long * actSize) THREEWORDINLINE(0x700C, 0x3F00, 0xA9E9);
- EXTERN_API( OSErr )
- DIXZero (short drvNum,
- ConstStr255Param volName,
- short fsid,
- short mediaStatus,
- short volTypeSelector,
- unsigned long volSize,
- void * extendedInfoPtr) THREEWORDINLINE(0x700E, 0x3F00, 0xA9E9);
- EXTERN_API( OSErr )
- DIReformat (short drvNum,
- short fsid,
- ConstStr255Param volName,
- ConstStr255Param msgText) THREEWORDINLINE(0x7010, 0x3F00, 0xA9E9);
- #endif /* CALL_NOT_IN_CARBON */
- #if CALL_NOT_IN_CARBON
- EXTERN_API_C( OSErr )
- dibadmount (Point * where,
- long evtMessage);
- EXTERN_API_C( OSErr )
- dizero (short drvnum,
- const char * volName);
- #endif /* CALL_NOT_IN_CARBON */
- #if PRAGMA_STRUCT_ALIGN
- #pragma options align=reset
- #elif PRAGMA_STRUCT_PACKPUSH
- #pragma pack(pop)
- #elif PRAGMA_STRUCT_PACK
- #pragma pack()
- #endif
- #ifdef PRAGMA_IMPORT_OFF
- #pragma import off
- #elif PRAGMA_IMPORT
- #pragma import reset
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif /* __DISKINIT__ */