You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1299 lines
35 KiB
1299 lines
35 KiB
/* |
|
File: Dictionary.h |
|
|
|
Contains: Dictionary Manager Interfaces |
|
|
|
Version: QuickTime 7.3 |
|
|
|
Copyright: (c) 2007 (c) 1992-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 __DICTIONARY__ |
|
#define __DICTIONARY__ |
|
|
|
#ifndef __MACTYPES__ |
|
#include <MacTypes.h> |
|
#endif |
|
|
|
#ifndef __FILES__ |
|
#include <Files.h> |
|
#endif |
|
|
|
#ifndef __CODEFRAGMENTS__ |
|
#include <CodeFragments.h> |
|
#endif |
|
|
|
#ifndef __MACERRORS__ |
|
#include <MacErrors.h> |
|
#endif |
|
|
|
#ifndef __AEREGISTRY__ |
|
#include <AERegistry.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=power |
|
#elif PRAGMA_STRUCT_PACKPUSH |
|
#pragma pack(push, 2) |
|
#elif PRAGMA_STRUCT_PACK |
|
#pragma pack(2) |
|
#endif |
|
|
|
/* |
|
============================================================================================= |
|
Modern Dictionary Manager |
|
============================================================================================= |
|
*/ |
|
/* |
|
Dictionary information |
|
*/ |
|
enum { |
|
kDictionaryFileType = FOUR_CHAR_CODE('dict'), |
|
kDCMDictionaryHeaderSignature = FOUR_CHAR_CODE('dict'), |
|
kDCMDictionaryHeaderVersion = 2 |
|
}; |
|
|
|
enum { |
|
kDCMAnyFieldTag = typeWildCard, |
|
kDCMAnyFieldType = typeWildCard |
|
}; |
|
|
|
/* |
|
Contents of a Field Info Record (an AERecord) |
|
*/ |
|
enum { |
|
keyDCMFieldTag = FOUR_CHAR_CODE('ftag'), /* typeEnumeration */ |
|
keyDCMFieldType = FOUR_CHAR_CODE('ftyp'), /* typeEnumeration */ |
|
keyDCMMaxRecordSize = FOUR_CHAR_CODE('mrsz'), /* typeMagnitude */ |
|
keyDCMFieldAttributes = FOUR_CHAR_CODE('fatr'), |
|
keyDCMFieldDefaultData = FOUR_CHAR_CODE('fdef'), |
|
keyDCMFieldName = FOUR_CHAR_CODE('fnam'), /* typeChar */ |
|
keyDCMFieldFindMethods = FOUR_CHAR_CODE('ffnd') /* typeAEList of typeDCMFindMethod */ |
|
}; |
|
|
|
/* |
|
Special types for fields of a Field Info Record |
|
*/ |
|
enum { |
|
typeDCMFieldAttributes = FOUR_CHAR_CODE('fatr'), |
|
typeDCMFindMethod = FOUR_CHAR_CODE('fmth') |
|
}; |
|
|
|
|
|
/* |
|
Field attributes |
|
*/ |
|
enum { |
|
kDCMIndexedFieldMask = 0x00000001, |
|
kDCMRequiredFieldMask = 0x00000002, |
|
kDCMIdentifyFieldMask = 0x00000004, |
|
kDCMFixedSizeFieldMask = 0x00000008, |
|
kDCMHiddenFieldMask = (long)0x80000000 |
|
}; |
|
|
|
typedef OptionBits DCMFieldAttributes; |
|
/* |
|
Standard dictionary properties |
|
*/ |
|
enum { |
|
pDCMAccessMethod = FOUR_CHAR_CODE('amtd'), /* data type: typeChar ReadOnly */ |
|
pDCMPermission = FOUR_CHAR_CODE('perm'), /* data type: typeUInt16 */ |
|
pDCMListing = FOUR_CHAR_CODE('list'), /* data type: typeUInt16 */ |
|
pDCMMaintenance = FOUR_CHAR_CODE('mtnc'), /* data type: typeUInt16 */ |
|
pDCMLocale = FOUR_CHAR_CODE('locl'), /* data type: typeUInt32. Optional; default = kLocaleIdentifierWildCard */ |
|
pDCMClass = pClass, /* data type: typeUInt16 */ |
|
pDCMCopyright = FOUR_CHAR_CODE('info') /* data type: typeChar */ |
|
}; |
|
|
|
/* |
|
pDCMPermission property constants |
|
*/ |
|
enum { |
|
kDCMReadOnlyDictionary = 0, |
|
kDCMReadWriteDictionary = 1 |
|
}; |
|
|
|
/* |
|
pDCMListing property constants |
|
*/ |
|
enum { |
|
kDCMAllowListing = 0, |
|
kDCMProhibitListing = 1 |
|
}; |
|
|
|
/* |
|
pDCMClass property constants |
|
*/ |
|
enum { |
|
kDCMUserDictionaryClass = 0, |
|
kDCMSpecificDictionaryClass = 1, |
|
kDCMBasicDictionaryClass = 2 |
|
}; |
|
|
|
/* |
|
Standard search method |
|
*/ |
|
enum { |
|
kDCMFindMethodExactMatch = kAEEquals, |
|
kDCMFindMethodBeginningMatch = kAEBeginsWith, |
|
kDCMFindMethodContainsMatch = kAEContains, |
|
kDCMFindMethodEndingMatch = kAEEndsWith, |
|
kDCMFindMethodForwardTrie = FOUR_CHAR_CODE('ftri'), /* used for morphological analysis*/ |
|
kDCMFindMethodBackwardTrie = FOUR_CHAR_CODE('btri') /* used for morphological analysis*/ |
|
}; |
|
|
|
typedef OSType DCMFindMethod; |
|
/* |
|
AccessMethod features |
|
*/ |
|
enum { |
|
kDCMCanUseFileDictionaryMask = 0x00000001, |
|
kDCMCanUseMemoryDictionaryMask = 0x00000002, |
|
kDCMCanStreamDictionaryMask = 0x00000004, |
|
kDCMCanHaveMultipleIndexMask = 0x00000008, |
|
kDCMCanModifyDictionaryMask = 0x00000010, |
|
kDCMCanCreateDictionaryMask = 0x00000020, |
|
kDCMCanAddDictionaryFieldMask = 0x00000040, |
|
kDCMCanUseTransactionMask = 0x00000080 |
|
}; |
|
|
|
typedef OptionBits DCMAccessMethodFeature; |
|
typedef UInt32 DCMUniqueID; |
|
typedef struct OpaqueDCMObjectID* DCMObjectID; |
|
typedef DCMObjectID DCMAccessMethodID; |
|
typedef DCMObjectID DCMDictionaryID; |
|
#define kDCMInvalidObjectID ((DCMObjectID) kInvalidID) |
|
typedef struct OpaqueDCMObjectRef* DCMObjectRef; |
|
typedef DCMObjectRef DCMDictionaryRef; |
|
typedef DCMObjectRef DCMDictionaryStreamRef; |
|
#define kDCMInvalidObjectRef ((DCMObjectRef) kInvalidID) |
|
typedef struct OpaqueDCMObjectIterator* DCMObjectIterator; |
|
typedef DCMObjectIterator DCMAccessMethodIterator; |
|
typedef DCMObjectIterator DCMDictionaryIterator; |
|
typedef struct OpaqueDCMFoundRecordIterator* DCMFoundRecordIterator; |
|
/* |
|
Field specification declarations |
|
*/ |
|
typedef DescType DCMFieldTag; |
|
typedef DescType DCMFieldType; |
|
/* |
|
Dictionary header information |
|
*/ |
|
struct DCMDictionaryHeader { |
|
FourCharCode headerSignature; |
|
UInt32 headerVersion; |
|
ByteCount headerSize; |
|
Str63 accessMethod; |
|
}; |
|
typedef struct DCMDictionaryHeader DCMDictionaryHeader; |
|
/* |
|
Callback routines |
|
*/ |
|
typedef CALLBACK_API( Boolean , DCMProgressFilterProcPtr )(Boolean determinateProcess, UInt16 percentageComplete, UInt32 callbackUD); |
|
typedef STACK_UPP_TYPE(DCMProgressFilterProcPtr) DCMProgressFilterUPP; |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* NewDCMProgressFilterUPP() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: available as macro/inline |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( DCMProgressFilterUPP ) |
|
NewDCMProgressFilterUPP(DCMProgressFilterProcPtr userRoutine); |
|
#if !OPAQUE_UPP_TYPES |
|
enum { uppDCMProgressFilterProcInfo = 0x00000E50 }; /* pascal 1_byte Func(1_byte, 2_bytes, 4_bytes) */ |
|
#ifdef __cplusplus |
|
inline DEFINE_API_C(DCMProgressFilterUPP) NewDCMProgressFilterUPP(DCMProgressFilterProcPtr userRoutine) { return (DCMProgressFilterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDCMProgressFilterProcInfo, GetCurrentArchitecture()); } |
|
#else |
|
#define NewDCMProgressFilterUPP(userRoutine) (DCMProgressFilterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppDCMProgressFilterProcInfo, GetCurrentArchitecture()) |
|
#endif |
|
#endif |
|
|
|
/* |
|
* DisposeDCMProgressFilterUPP() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: available as macro/inline |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( void ) |
|
DisposeDCMProgressFilterUPP(DCMProgressFilterUPP userUPP); |
|
#if !OPAQUE_UPP_TYPES |
|
#ifdef __cplusplus |
|
inline DEFINE_API_C(void) DisposeDCMProgressFilterUPP(DCMProgressFilterUPP userUPP) { DisposeRoutineDescriptor((UniversalProcPtr)userUPP); } |
|
#else |
|
#define DisposeDCMProgressFilterUPP(userUPP) DisposeRoutineDescriptor(userUPP) |
|
#endif |
|
#endif |
|
|
|
/* |
|
* InvokeDCMProgressFilterUPP() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: available as macro/inline |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API_C( Boolean ) |
|
InvokeDCMProgressFilterUPP( |
|
Boolean determinateProcess, |
|
UInt16 percentageComplete, |
|
UInt32 callbackUD, |
|
DCMProgressFilterUPP userUPP); |
|
#if !OPAQUE_UPP_TYPES |
|
#ifdef __cplusplus |
|
inline DEFINE_API_C(Boolean) InvokeDCMProgressFilterUPP(Boolean determinateProcess, UInt16 percentageComplete, UInt32 callbackUD, DCMProgressFilterUPP userUPP) { return (Boolean)CALL_THREE_PARAMETER_UPP(userUPP, uppDCMProgressFilterProcInfo, determinateProcess, percentageComplete, callbackUD); } |
|
#else |
|
#define InvokeDCMProgressFilterUPP(determinateProcess, percentageComplete, callbackUD, userUPP) (Boolean)CALL_THREE_PARAMETER_UPP((userUPP), uppDCMProgressFilterProcInfo, (determinateProcess), (percentageComplete), (callbackUD)) |
|
#endif |
|
#endif |
|
|
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
#if CALL_NOT_IN_CARBON || OLDROUTINENAMES |
|
/* support for pre-Carbon UPP routines: New...Proc and Call...Proc */ |
|
#define NewDCMProgressFilterProc(userRoutine) NewDCMProgressFilterUPP(userRoutine) |
|
#define CallDCMProgressFilterProc(userRoutine, determinateProcess, percentageComplete, callbackUD) InvokeDCMProgressFilterUPP(determinateProcess, percentageComplete, callbackUD, userRoutine) |
|
#endif /* CALL_NOT_IN_CARBON */ |
|
|
|
/* |
|
Library version |
|
*/ |
|
/* |
|
* DCMLibraryVersion() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( UInt32 ) |
|
DCMLibraryVersion(void); |
|
|
|
|
|
/* |
|
Create/delete dictionary |
|
*/ |
|
/* |
|
* DCMNewDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMNewDictionary( |
|
DCMAccessMethodID accessMethodID, |
|
const FSSpec * newDictionaryFile, |
|
ScriptCode scriptTag, |
|
const AEDesc * listOfFieldInfoRecords, |
|
Boolean invisible, |
|
ItemCount recordCapacity, |
|
DCMDictionaryID * newDictionary); |
|
|
|
|
|
/* |
|
* DCMDeriveNewDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMDeriveNewDictionary( |
|
DCMDictionaryID srcDictionary, |
|
const FSSpec * newDictionaryFile, |
|
ScriptCode scriptTag, |
|
Boolean invisible, |
|
ItemCount recordCapacity, |
|
DCMDictionaryID * newDictionary); |
|
|
|
|
|
/* |
|
* DCMDeleteDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMDeleteDictionary(DCMDictionaryID dictionaryID); |
|
|
|
|
|
/* |
|
Register dictionary |
|
*/ |
|
/* |
|
* DCMRegisterDictionaryFile() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMRegisterDictionaryFile( |
|
const FSSpec * dictionaryFile, |
|
DCMDictionaryID * dictionaryID); |
|
|
|
|
|
/* |
|
* DCMUnregisterDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMUnregisterDictionary(DCMDictionaryID dictionaryID); |
|
|
|
|
|
/* |
|
Open dictionary |
|
*/ |
|
/* |
|
* DCMOpenDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMOpenDictionary( |
|
DCMDictionaryID dictionaryID, |
|
ByteCount protectKeySize, |
|
ConstLogicalAddress protectKey, |
|
DCMDictionaryRef * dictionaryRef); |
|
|
|
|
|
/* |
|
* DCMCloseDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMCloseDictionary(DCMDictionaryRef dictionaryRef); |
|
|
|
|
|
/* |
|
Change access privilege |
|
*/ |
|
/* |
|
* DCMGetDictionaryWriteAccess() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetDictionaryWriteAccess( |
|
DCMDictionaryRef dictionaryRef, |
|
Duration timeOutDuration); |
|
|
|
|
|
/* |
|
* DCMReleaseDictionaryWriteAccess() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMReleaseDictionaryWriteAccess( |
|
DCMDictionaryRef dictionaryRef, |
|
Boolean commitTransaction); |
|
|
|
|
|
/* |
|
Find records |
|
*/ |
|
/* |
|
* DCMFindRecords() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMFindRecords( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMFindMethod findMethod, |
|
ItemCount preFetchedDataNum, |
|
DCMFieldTag preFetchedData[], |
|
ItemCount skipCount, |
|
ItemCount maxRecordCount, |
|
DCMFoundRecordIterator * recordIterator); |
|
|
|
|
|
/* |
|
* DCMCountRecordIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( ItemCount ) |
|
DCMCountRecordIterator(DCMFoundRecordIterator recordIterator); |
|
|
|
|
|
/* |
|
* DCMIterateFoundRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMIterateFoundRecord( |
|
DCMFoundRecordIterator recordIterator, |
|
ByteCount maxKeySize, |
|
ByteCount * actualKeySize, |
|
LogicalAddress keyData, |
|
DCMUniqueID * uniqueID, |
|
AEDesc * dataList); |
|
|
|
|
|
/* |
|
* DCMDisposeRecordIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMDisposeRecordIterator(DCMFoundRecordIterator recordIterator); |
|
|
|
|
|
/* |
|
Dump dictionary |
|
*/ |
|
/* |
|
* DCMCountRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMCountRecord( |
|
DCMDictionaryID dictionaryID, |
|
ItemCount * count); |
|
|
|
|
|
/* |
|
* DCMGetRecordSequenceNumber() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetRecordSequenceNumber( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMUniqueID uniqueID, |
|
ItemCount * sequenceNum); |
|
|
|
|
|
/* |
|
* DCMGetNthRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetNthRecord( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ItemCount serialNum, |
|
ByteCount maxKeySize, |
|
ByteCount * keySize, |
|
LogicalAddress keyData, |
|
DCMUniqueID * uniqueID); |
|
|
|
|
|
/* |
|
* DCMGetNextRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetNextRecord( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMUniqueID uniqueID, |
|
ByteCount maxKeySize, |
|
ByteCount * nextKeySize, |
|
LogicalAddress nextKeyData, |
|
DCMUniqueID * nextUniqueID); |
|
|
|
|
|
/* |
|
* DCMGetPrevRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetPrevRecord( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMUniqueID uniqueID, |
|
ByteCount maxKeySize, |
|
ByteCount * prevKeySize, |
|
LogicalAddress prevKeyData, |
|
DCMUniqueID * prevUniqueID); |
|
|
|
|
|
/* |
|
Get field data |
|
*/ |
|
/* |
|
* DCMGetFieldData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFieldData( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMUniqueID uniqueID, |
|
ItemCount numOfData, |
|
const DCMFieldTag dataTag[], |
|
AEDesc * dataList); |
|
|
|
|
|
/* |
|
* DCMSetFieldData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMSetFieldData( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMUniqueID uniqueID, |
|
const AEDesc * dataList); |
|
|
|
|
|
/* |
|
Add record |
|
*/ |
|
/* |
|
* DCMAddRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMAddRecord( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
Boolean checkOnly, |
|
const AEDesc * dataList, |
|
DCMUniqueID * newUniqueID); |
|
|
|
|
|
/* |
|
* DCMDeleteRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMDeleteRecord( |
|
DCMDictionaryRef dictionaryRef, |
|
DCMFieldTag keyFieldTag, |
|
ByteCount keySize, |
|
ConstLogicalAddress keyData, |
|
DCMUniqueID uniqueID); |
|
|
|
|
|
/* |
|
Reorganize/compact dictionary |
|
*/ |
|
/* |
|
* DCMReorganizeDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMReorganizeDictionary( |
|
DCMDictionaryID dictionaryID, |
|
ItemCount extraCapacity, |
|
DCMProgressFilterUPP progressProc, |
|
UInt32 userData); |
|
|
|
|
|
/* |
|
* DCMCompactDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMCompactDictionary( |
|
DCMDictionaryID dictionaryID, |
|
DCMProgressFilterUPP progressProc, |
|
UInt32 userData); |
|
|
|
|
|
/* |
|
DictionaryID utilities |
|
*/ |
|
/* |
|
* DCMGetFileFromDictionaryID() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFileFromDictionaryID( |
|
DCMDictionaryID dictionaryID, |
|
FSSpec * fileRef); |
|
|
|
|
|
/* |
|
* DCMGetDictionaryIDFromFile() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetDictionaryIDFromFile( |
|
const FSSpec * fileRef, |
|
DCMDictionaryID * dictionaryID); |
|
|
|
|
|
/* |
|
* DCMGetDictionaryIDFromRef() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( DCMDictionaryID ) |
|
DCMGetDictionaryIDFromRef(DCMDictionaryRef dictionaryRef); |
|
|
|
|
|
/* |
|
Field information and manipulation |
|
*/ |
|
/* |
|
* DCMGetDictionaryFieldInfo() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetDictionaryFieldInfo( |
|
DCMDictionaryID dictionaryID, |
|
DCMFieldTag fieldTag, |
|
AEDesc * fieldInfoRecord); |
|
|
|
|
|
/* |
|
Dictionary property |
|
*/ |
|
/* |
|
* DCMGetDictionaryProperty() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetDictionaryProperty( |
|
DCMDictionaryID dictionaryID, |
|
DCMFieldTag propertyTag, |
|
ByteCount maxPropertySize, |
|
ByteCount * actualSize, |
|
LogicalAddress propertyValue); |
|
|
|
|
|
/* |
|
* DCMSetDictionaryProperty() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMSetDictionaryProperty( |
|
DCMDictionaryID dictionaryID, |
|
DCMFieldTag propertyTag, |
|
ByteCount propertySize, |
|
ConstLogicalAddress propertyValue); |
|
|
|
|
|
/* |
|
* DCMGetDictionaryPropertyList() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetDictionaryPropertyList( |
|
DCMDictionaryID dictionaryID, |
|
ItemCount maxPropertyNum, |
|
ItemCount * numProperties, |
|
DCMFieldTag propertyTag[]); |
|
|
|
|
|
/* |
|
Seaarch dictionary |
|
*/ |
|
/* |
|
* DCMCreateDictionaryIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMCreateDictionaryIterator(DCMDictionaryIterator * dictionaryIterator); |
|
|
|
|
|
/* |
|
Search AccessMethod |
|
*/ |
|
/* |
|
* DCMCreateAccessMethodIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMCreateAccessMethodIterator(DCMAccessMethodIterator * accessMethodIterator); |
|
|
|
|
|
/* |
|
Iterator Operation |
|
*/ |
|
/* |
|
* DCMCountObjectIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( ItemCount ) |
|
DCMCountObjectIterator(DCMObjectIterator iterator); |
|
|
|
|
|
/* |
|
* DCMIterateObject() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMIterateObject( |
|
DCMObjectIterator iterator, |
|
DCMObjectID * objectID); |
|
|
|
|
|
/* |
|
* DCMResetObjectIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMResetObjectIterator(DCMObjectIterator iterator); |
|
|
|
|
|
/* |
|
* DCMDisposeObjectIterator() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMDisposeObjectIterator(DCMObjectIterator iterator); |
|
|
|
|
|
/* |
|
Get AccessMethod information |
|
*/ |
|
/* |
|
* DCMGetAccessMethodIDFromName() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetAccessMethodIDFromName( |
|
ConstStr63Param accessMethodName, |
|
DCMAccessMethodID * accessMethodID); |
|
|
|
|
|
/* |
|
Field Info Record routines |
|
*/ |
|
/* |
|
* DCMCreateFieldInfoRecord() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMCreateFieldInfoRecord( |
|
DescType fieldTag, |
|
DescType fieldType, |
|
ByteCount maxRecordSize, |
|
DCMFieldAttributes fieldAttributes, |
|
AEDesc * fieldDefaultData, |
|
ItemCount numberOfFindMethods, |
|
DCMFindMethod findMethods[], |
|
AEDesc * fieldInfoRecord); |
|
|
|
|
|
/* |
|
* DCMGetFieldTagAndType() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFieldTagAndType( |
|
const AEDesc * fieldInfoRecord, |
|
DCMFieldTag * fieldTag, |
|
DCMFieldType * fieldType); |
|
|
|
|
|
/* |
|
* DCMGetFieldMaxRecordSize() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFieldMaxRecordSize( |
|
const AEDesc * fieldInfoRecord, |
|
ByteCount * maxRecordSize); |
|
|
|
|
|
/* |
|
* DCMGetFieldAttributes() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFieldAttributes( |
|
const AEDesc * fieldInfoRecord, |
|
DCMFieldAttributes * attributes); |
|
|
|
|
|
/* |
|
* DCMGetFieldDefaultData() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFieldDefaultData( |
|
const AEDesc * fieldInfoRecord, |
|
DescType desiredType, |
|
AEDesc * fieldDefaultData); |
|
|
|
|
|
/* |
|
* DCMGetFieldFindMethods() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in DictionaryMgrLib 1.0 and later |
|
* CarbonLib: in CarbonLib 1.0 and later |
|
* Mac OS X: in version 10.0 and later |
|
*/ |
|
EXTERN_API( OSStatus ) |
|
DCMGetFieldFindMethods( |
|
const AEDesc * fieldInfoRecord, |
|
ItemCount findMethodsArrayMaxSize, |
|
DCMFindMethod findMethods[], |
|
ItemCount * actualNumberOfFindMethods); |
|
|
|
|
|
/* |
|
Check Dictionary Manager availability |
|
*/ |
|
#if TARGET_RT_MAC_CFM |
|
#ifdef __cplusplus |
|
inline pascal Boolean DCMDictionaryManagerAvailable() { return (DCMLibraryVersion != (void*)kUnresolvedCFragSymbolAddress); } |
|
#else |
|
#define DCMDictionaryManagerAvailable() ((DCMLibraryVersion != (void*)kUnresolvedCFragSymbolAddress) |
|
#endif |
|
#elif TARGET_RT_MAC_MACHO |
|
/* Dictionary Manager is always available on OS X */ |
|
#ifdef __cplusplus |
|
inline pascal Boolean DCMDictionaryManagerAvailable() { return true; } |
|
#else |
|
#define DCMDictionaryManagerAvailable() (true) |
|
#endif |
|
#endif /* */ |
|
|
|
/* |
|
============================================================================================= |
|
Definitions for Japanese Analysis Module |
|
============================================================================================= |
|
*/ |
|
/* |
|
Default dictionary access method for Japanese analysis |
|
*/ |
|
#define kAppleJapaneseDefaultAccessMethodName "\pDAM:Apple Backward Trie Access Method" |
|
/* |
|
Data length limitations of Apple Japanese dictionaries |
|
*/ |
|
enum { |
|
kMaxYomiLengthInAppleJapaneseDictionary = 40, |
|
kMaxKanjiLengthInAppleJapaneseDictionary = 64 |
|
}; |
|
|
|
/* |
|
Defined field tags of Apple Japanese dictionary |
|
*/ |
|
enum { |
|
kDCMJapaneseYomiTag = FOUR_CHAR_CODE('yomi'), |
|
kDCMJapaneseHyokiTag = FOUR_CHAR_CODE('hyok'), |
|
kDCMJapaneseHinshiTag = FOUR_CHAR_CODE('hins'), |
|
kDCMJapaneseWeightTag = FOUR_CHAR_CODE('hind'), |
|
kDCMJapanesePhoneticTag = FOUR_CHAR_CODE('hton'), |
|
kDCMJapaneseAccentTag = FOUR_CHAR_CODE('acnt'), |
|
kDCMJapaneseOnKunReadingTag = FOUR_CHAR_CODE('OnKn'), |
|
kDCMJapaneseFukugouInfoTag = FOUR_CHAR_CODE('fuku') |
|
}; |
|
|
|
enum { |
|
kDCMJapaneseYomiType = typeUnicodeText, |
|
kDCMJapaneseHyokiType = typeUnicodeText, |
|
kDCMJapaneseHinshiType = FOUR_CHAR_CODE('hins'), |
|
kDCMJapaneseWeightType = typeShortInteger, |
|
kDCMJapanesePhoneticType = typeUnicodeText, |
|
kDCMJapaneseAccentType = FOUR_CHAR_CODE('byte'), |
|
kDCMJapaneseOnKunReadingType = typeUnicodeText, |
|
kDCMJapaneseFukugouInfoType = FOUR_CHAR_CODE('fuku') |
|
}; |
|
|
|
|
|
/* |
|
============================================================================================= |
|
System 7 Dictionary Manager |
|
============================================================================================= |
|
*/ |
|
|
|
#if PRAGMA_STRUCT_ALIGN |
|
#pragma options align=reset |
|
#pragma options align=mac68k |
|
#endif |
|
|
|
enum { |
|
/* Dictionary data insertion modes */ |
|
kInsert = 0, /* Only insert the input entry if there is nothing in the dictionary that matches the key. */ |
|
kReplace = 1, /* Only replace the entries which match the key with the input entry. */ |
|
kInsertOrReplace = 2 /* Insert the entry if there is nothing in the dictionary which matches the key, otherwise replaces the existing matched entries with the input entry. */ |
|
}; |
|
|
|
/* This Was InsertMode */ |
|
|
|
typedef short DictionaryDataInsertMode; |
|
enum { |
|
/* Key attribute constants */ |
|
kIsCaseSensitive = 0x10, /* case sensitive = 16 */ |
|
kIsNotDiacriticalSensitive = 0x20 /* diac not sensitive = 32 */ |
|
}; |
|
|
|
enum { |
|
/* Registered attribute type constants. */ |
|
kNoun = -1, |
|
kVerb = -2, |
|
kAdjective = -3, |
|
kAdverb = -4 |
|
}; |
|
|
|
/* This Was AttributeType */ |
|
typedef SInt8 DictionaryEntryAttribute; |
|
/* Dictionary information record */ |
|
struct DictionaryInformation { |
|
FSSpec dictionaryFSSpec; |
|
SInt32 numberOfRecords; |
|
SInt32 currentGarbageSize; |
|
ScriptCode script; |
|
SInt16 maximumKeyLength; |
|
SInt8 keyAttributes; |
|
}; |
|
typedef struct DictionaryInformation DictionaryInformation; |
|
struct DictionaryAttributeTable { |
|
UInt8 datSize; |
|
DictionaryEntryAttribute datTable[1]; |
|
}; |
|
typedef struct DictionaryAttributeTable DictionaryAttributeTable; |
|
typedef DictionaryAttributeTable * DictionaryAttributeTablePtr; |
|
#if CALL_NOT_IN_CARBON |
|
/* |
|
* InitializeDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
InitializeDictionary( |
|
const FSSpec * theFsspecPtr, |
|
SInt16 maximumKeyLength, |
|
SInt8 keyAttributes, |
|
ScriptCode script) THREEWORDINLINE(0x303C, 0x0500, 0xAA53); |
|
|
|
|
|
/* |
|
* OpenDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
OpenDictionary( |
|
const FSSpec * theFsspecPtr, |
|
SInt8 accessPermission, |
|
SInt32 * dictionaryReference) THREEWORDINLINE(0x303C, 0x0501, 0xAA53); |
|
|
|
|
|
/* |
|
* CloseDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
CloseDictionary(SInt32 dictionaryReference) THREEWORDINLINE(0x303C, 0x0202, 0xAA53); |
|
|
|
|
|
/* |
|
* InsertRecordToDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
InsertRecordToDictionary( |
|
SInt32 dictionaryReference, |
|
ConstStr255Param key, |
|
Handle recordDataHandle, |
|
DictionaryDataInsertMode whichMode) THREEWORDINLINE(0x303C, 0x0703, 0xAA53); |
|
|
|
|
|
/* |
|
* DeleteRecordFromDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
DeleteRecordFromDictionary( |
|
SInt32 dictionaryReference, |
|
ConstStr255Param key) THREEWORDINLINE(0x303C, 0x0404, 0xAA53); |
|
|
|
|
|
/* |
|
* FindRecordInDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
FindRecordInDictionary( |
|
SInt32 dictionaryReference, |
|
ConstStr255Param key, |
|
DictionaryAttributeTablePtr requestedAttributeTablePointer, |
|
Handle recordDataHandle) THREEWORDINLINE(0x303C, 0x0805, 0xAA53); |
|
|
|
|
|
/* |
|
* FindRecordByIndexInDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
FindRecordByIndexInDictionary( |
|
SInt32 dictionaryReference, |
|
SInt32 recordIndex, |
|
DictionaryAttributeTablePtr requestedAttributeTablePointer, |
|
Str255 recordKey, |
|
Handle recordDataHandle) THREEWORDINLINE(0x303C, 0x0A06, 0xAA53); |
|
|
|
|
|
/* |
|
* GetDictionaryInformation() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
GetDictionaryInformation( |
|
SInt32 dictionaryReference, |
|
DictionaryInformation * theDictionaryInformation) THREEWORDINLINE(0x303C, 0x0407, 0xAA53); |
|
|
|
|
|
/* |
|
* CompactDictionary() |
|
* |
|
* Availability: |
|
* Non-Carbon CFM: in InterfaceLib 7.1 and later |
|
* CarbonLib: not available |
|
* Mac OS X: not available |
|
*/ |
|
EXTERN_API( OSErr ) |
|
CompactDictionary(SInt32 dictionaryReference) THREEWORDINLINE(0x303C, 0x0208, 0xAA53); |
|
|
|
|
|
|
|
|
|
|
|
#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 /* __DICTIONARY__ */ |
|
|
|
|