]>
Commit | Line | Data |
---|---|---|
9ce05555 A |
1 | /* |
2 | * Copyright (c) 2003 Apple Computer, Inc. All rights reserved. | |
3 | * | |
4 | * @APPLE_LICENSE_HEADER_START@ | |
5 | * | |
6 | * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved. | |
7 | * | |
8 | * This file contains Original Code and/or Modifications of Original Code | |
9 | * as defined in and that are subject to the Apple Public Source License | |
10 | * Version 2.0 (the 'License'). You may not use this file except in | |
11 | * compliance with the License. Please obtain a copy of the License at | |
12 | * http://www.opensource.apple.com/apsl/ and read it before using this | |
13 | * file. | |
14 | * | |
15 | * The Original Code and all software distributed under the License are | |
16 | * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER | |
17 | * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, | |
18 | * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, | |
19 | * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. | |
20 | * Please see the License for the specific language governing rights and | |
21 | * limitations under the License. | |
22 | * | |
23 | * @APPLE_LICENSE_HEADER_END@ | |
24 | */ | |
25 | /* CFBundlePriv.h | |
26 | Copyright (c) 1999-2003, Apple, Inc. All rights reserved. | |
27 | */ | |
28 | ||
29 | #if !defined(__COREFOUNDATION_CFBUNDLEPRIV__) | |
30 | #define __COREFOUNDATION_CFBUNDLEPRIV__ 1 | |
31 | ||
32 | #include <CoreFoundation/CFBase.h> | |
33 | #include <CoreFoundation/CFArray.h> | |
34 | #include <CoreFoundation/CFBundle.h> | |
35 | #include <CoreFoundation/CFDictionary.h> | |
36 | #include <CoreFoundation/CFString.h> | |
37 | #include <CoreFoundation/CFURL.h> | |
38 | ||
39 | #if defined(__cplusplus) | |
40 | extern "C" { | |
41 | #endif | |
42 | ||
43 | /* Finder stuff */ | |
44 | CF_EXPORT | |
45 | const CFStringRef _kCFBundlePackageTypeKey; | |
46 | CF_EXPORT | |
47 | const CFStringRef _kCFBundleSignatureKey; | |
48 | CF_EXPORT | |
49 | const CFStringRef _kCFBundleIconFileKey; | |
50 | CF_EXPORT | |
51 | const CFStringRef _kCFBundleDocumentTypesKey; | |
52 | CF_EXPORT | |
53 | const CFStringRef _kCFBundleURLTypesKey; | |
54 | ||
55 | /* Localizable Finder stuff */ | |
56 | CF_EXPORT | |
57 | const CFStringRef _kCFBundleDisplayNameKey; | |
58 | CF_EXPORT | |
59 | const CFStringRef _kCFBundleShortVersionStringKey; | |
60 | CF_EXPORT | |
61 | const CFStringRef _kCFBundleGetInfoStringKey; | |
62 | CF_EXPORT | |
63 | const CFStringRef _kCFBundleGetInfoHTMLKey; | |
64 | ||
65 | /* Sub-keys for CFBundleDocumentTypes dictionaries */ | |
66 | CF_EXPORT | |
67 | const CFStringRef _kCFBundleTypeNameKey; | |
68 | CF_EXPORT | |
69 | const CFStringRef _kCFBundleTypeRoleKey; | |
70 | CF_EXPORT | |
71 | const CFStringRef _kCFBundleTypeIconFileKey; | |
72 | CF_EXPORT | |
73 | const CFStringRef _kCFBundleTypeOSTypesKey; | |
74 | CF_EXPORT | |
75 | const CFStringRef _kCFBundleTypeExtensionsKey; | |
76 | CF_EXPORT | |
77 | const CFStringRef _kCFBundleTypeMIMETypesKey; | |
78 | ||
79 | /* Sub-keys for CFBundleURLTypes dictionaries */ | |
80 | CF_EXPORT | |
81 | const CFStringRef _kCFBundleURLNameKey; | |
82 | CF_EXPORT | |
83 | const CFStringRef _kCFBundleURLIconFileKey; | |
84 | CF_EXPORT | |
85 | const CFStringRef _kCFBundleURLSchemesKey; | |
86 | ||
87 | /* Compatibility key names */ | |
88 | CF_EXPORT | |
89 | const CFStringRef _kCFBundleOldExecutableKey; | |
90 | CF_EXPORT | |
91 | const CFStringRef _kCFBundleOldInfoDictionaryVersionKey; | |
92 | CF_EXPORT | |
93 | const CFStringRef _kCFBundleOldNameKey; | |
94 | CF_EXPORT | |
95 | const CFStringRef _kCFBundleOldIconFileKey; | |
96 | CF_EXPORT | |
97 | const CFStringRef _kCFBundleOldDocumentTypesKey; | |
98 | CF_EXPORT | |
99 | const CFStringRef _kCFBundleOldShortVersionStringKey; | |
100 | ||
101 | /* Compatibility CFBundleDocumentTypes key names */ | |
102 | CF_EXPORT | |
103 | const CFStringRef _kCFBundleOldTypeNameKey; | |
104 | CF_EXPORT | |
105 | const CFStringRef _kCFBundleOldTypeRoleKey; | |
106 | CF_EXPORT | |
107 | const CFStringRef _kCFBundleOldTypeIconFileKey; | |
108 | CF_EXPORT | |
109 | const CFStringRef _kCFBundleOldTypeExtensions1Key; | |
110 | CF_EXPORT | |
111 | const CFStringRef _kCFBundleOldTypeExtensions2Key; | |
112 | CF_EXPORT | |
113 | const CFStringRef _kCFBundleOldTypeOSTypesKey; | |
114 | ||
115 | ||
116 | /* Functions for examining directories that may "look like" bundles */ | |
117 | ||
118 | CF_EXPORT | |
119 | CFURLRef _CFBundleCopyBundleURLForExecutableURL(CFURLRef url); | |
120 | ||
121 | CF_EXPORT | |
122 | Boolean _CFBundleURLLooksLikeBundle(CFURLRef url); | |
123 | ||
124 | CF_EXPORT | |
125 | CFBundleRef _CFBundleCreateIfLooksLikeBundle(CFAllocatorRef allocator, CFURLRef url); | |
126 | ||
127 | CF_EXPORT | |
128 | CFBundleRef _CFBundleGetMainBundleIfLooksLikeBundle(void); | |
129 | ||
130 | CF_EXPORT | |
131 | CFBundleRef _CFBundleCreateWithExecutableURLIfLooksLikeBundle(CFAllocatorRef allocator, CFURLRef url); | |
132 | ||
133 | ||
134 | /* Functions for examining the structure of a bundle */ | |
135 | ||
136 | CF_EXPORT | |
137 | CFURLRef _CFBundleCopyResourceForkURL(CFBundleRef bundle); | |
138 | ||
139 | CF_EXPORT | |
140 | CFURLRef _CFBundleCopyInfoPlistURL(CFBundleRef bundle); | |
141 | ||
142 | ||
143 | /* Functions for working without a bundle instance */ | |
144 | ||
145 | CF_EXPORT | |
146 | CFURLRef _CFBundleCopyExecutableURLInDirectory(CFURLRef url); | |
147 | ||
148 | CF_EXPORT | |
149 | CFURLRef _CFBundleCopyOtherExecutableURLInDirectory(CFURLRef url); | |
150 | ||
151 | ||
152 | /* Functions for dealing with localizations */ | |
153 | ||
154 | CF_EXPORT | |
155 | void _CFBundleGetLanguageAndRegionCodes(SInt32 *languageCode, SInt32 *regionCode); | |
156 | // may return -1 for either one if no code can be found | |
157 | ||
158 | CF_EXPORT | |
159 | Boolean CFBundleGetLocalizationInfoForLocalization(CFStringRef localizationName, SInt32 *languageCode, SInt32 *regionCode, SInt32 *scriptCode, CFStringEncoding *stringEncoding); | |
160 | /* Gets the appropriate language and region codes, and the default */ | |
161 | /* script code and encoding, for the localization specified. */ | |
162 | /* Pass NULL for the localizationName to get these values for the */ | |
163 | /* single most preferred localization in the current context. */ | |
164 | /* May give -1 if there is no language or region code for a particular */ | |
165 | /* localization. Returns false if CFBundle has no information about */ | |
166 | /* the given localization. */ | |
167 | ||
168 | CF_EXPORT | |
169 | CFStringRef CFBundleCopyLocalizationForLocalizationInfo(SInt32 languageCode, SInt32 regionCode, SInt32 scriptCode, CFStringEncoding stringEncoding); | |
170 | /* Returns the default localization for the combination of codes */ | |
171 | /* specified. Pass in -1 for language, region code, or script code, or */ | |
172 | /* 0xFFFF for stringEncoding, if you do not wish to specify one of these. */ | |
173 | ||
174 | CF_EXPORT | |
175 | void _CFBundleSetDefaultLocalization(CFStringRef localizationName); | |
176 | ||
177 | ||
178 | /* Functions for dealing specifically with CFM executables */ | |
179 | ||
180 | CF_EXPORT | |
181 | void *_CFBundleGetCFMFunctionPointerForName(CFBundleRef bundle, CFStringRef funcName); | |
182 | ||
183 | CF_EXPORT | |
184 | void _CFBundleGetCFMFunctionPointersForNames(CFBundleRef bundle, CFArrayRef functionNames, void *ftbl[]); | |
185 | ||
186 | CF_EXPORT | |
187 | void _CFBundleSetCFMConnectionID(CFBundleRef bundle, void *connectionID); | |
188 | ||
189 | ||
190 | /* Miscellaneous functions */ | |
191 | ||
192 | CF_EXPORT | |
193 | CFStringRef _CFBundleCopyFileTypeForFileURL(CFURLRef url); | |
194 | ||
195 | CF_EXPORT | |
196 | Boolean _CFBundleGetHasChanged(CFBundleRef bundle); | |
197 | ||
198 | CF_EXPORT | |
199 | void _CFBundleFlushCaches(void); | |
200 | ||
201 | CF_EXPORT | |
202 | void _CFBundleSetStringsFilesShared(CFBundleRef bundle, Boolean flag); | |
203 | ||
204 | CF_EXPORT | |
205 | Boolean _CFBundleGetStringsFilesShared(CFBundleRef bundle); | |
206 | ||
207 | ||
208 | /* Functions deprecated as SPI */ | |
209 | ||
210 | CF_EXPORT | |
211 | CFDictionaryRef _CFBundleGetLocalInfoDictionary(CFBundleRef bundle); // deprecated in favor of CFBundleGetLocalInfoDictionary | |
212 | ||
213 | CF_EXPORT | |
214 | CFPropertyListRef _CFBundleGetValueForInfoKey(CFBundleRef bundle, CFStringRef key); // deprecated in favor of CFBundleGetValueForInfoDictionaryKey | |
215 | ||
216 | CF_EXPORT | |
217 | Boolean _CFBundleGetPackageInfoInDirectory(CFAllocatorRef alloc, CFURLRef url, UInt32 *packageType, UInt32 *packageCreator); // deprecated in favor of CFBundleGetPackageInfoInDirectory | |
218 | ||
219 | CF_EXPORT | |
220 | CFDictionaryRef _CFBundleCopyInfoDictionaryInResourceFork(CFURLRef url); // CFBundleCopyInfoDictionaryForURL is usually preferred; for the main bundle, however, no special call is necessary, since the info dictionary will automatically be available whether the app is bundled or not | |
221 | ||
222 | CF_EXPORT | |
223 | CFURLRef _CFBundleCopyPrivateFrameworksURL(CFBundleRef bundle); // deprecated in favor of CFBundleCopyPrivateFrameworksURL | |
224 | ||
225 | CF_EXPORT | |
226 | CFURLRef _CFBundleCopySharedFrameworksURL(CFBundleRef bundle); // deprecated in favor of CFBundleCopySharedFrameworksURL | |
227 | ||
228 | CF_EXPORT | |
229 | CFURLRef _CFBundleCopySharedSupportURL(CFBundleRef bundle); // deprecated in favor of CFBundleCopySharedSupportURL | |
230 | ||
231 | CF_EXPORT | |
232 | CFURLRef _CFBundleCopyBuiltInPlugInsURL(CFBundleRef bundle); // deprecated in favor of CFBundleCopyBuiltInPlugInsURL | |
233 | ||
234 | CF_EXPORT | |
235 | CFArrayRef _CFBundleCopyBundleRegionsArray(CFBundleRef bundle); // deprecated in favor of CFBundleCopyBundleLocalizations | |
236 | ||
237 | CF_EXPORT | |
238 | CFURLRef _CFBundleCopyResourceURLForLanguage(CFBundleRef bundle, CFStringRef resourceName, CFStringRef resourceType, CFStringRef subDirName, CFStringRef language); // deprecated in favor of CFBundleCopyResourceURLForLocalization | |
239 | ||
240 | CF_EXPORT | |
241 | CFArrayRef _CFBundleCopyResourceURLsOfTypeForLanguage(CFBundleRef bundle, CFStringRef resourceType, CFStringRef subDirName, CFStringRef language); // deprecated in favor of CFBundleCopyResourceURLsOfTypeForLocalization | |
242 | ||
243 | CF_EXPORT | |
244 | short _CFBundleOpenBundleResourceFork(CFBundleRef bundle); // deprecated in favor of CFBundleOpenBundleResourceMap | |
245 | ||
246 | CF_EXPORT | |
247 | void _CFBundleCloseBundleResourceFork(CFBundleRef bundle); // deprecated in favor of CFBundleCloseBundleResourceMap | |
248 | ||
249 | #if defined(__cplusplus) | |
250 | } | |
251 | #endif | |
252 | ||
253 | #endif /* ! __COREFOUNDATION_CFBUNDLEPRIV__ */ | |
254 |