1 { 2 File: SearchKit/SKAnalysis.h 3 4 Contains: SearchKit Interfaces. 5 6 Version: SearchKit-407~38 7 8 Copyright: � 2003-2008 by Apple Computer, Inc., all rights reserved 9 10 Bugs?: For bug reports, consult the following page on 11 the World Wide Web: 12 13 http://developer.apple.com/bugreporter/ 14 15 } 16 { 17 Modified for use with Free Pascal 18 Version 308 19 Please report any bugs to <gpc@microbizz.nl> 20 } 21 22 {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE} 23 {$mode macpas} 24 {$modeswitch cblocks} 25 {$packenum 1} 26 {$macro on} 27 {$inline on} 28 {$calling mwpascal} 29 30 unit SKAnalysis; 31 interface 32 {$setc UNIVERSAL_INTERFACES_VERSION := $0400} 33 {$setc GAP_INTERFACES_VERSION := $0308} 34 35 {$ifc not defined USE_CFSTR_CONSTANT_MACROS} 36 {$setc USE_CFSTR_CONSTANT_MACROS := TRUE} 37 {$endc} 38 39 {$ifc defined CPUPOWERPC and defined CPUI386} 40 {$error Conflicting initial definitions for CPUPOWERPC and CPUI386} 41 {$endc} 42 {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN} 43 {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN} 44 {$endc} 45 46 {$ifc not defined __ppc__ and defined CPUPOWERPC32} 47 {$setc __ppc__ := 1} 48 {$elsec} 49 {$setc __ppc__ := 0} 50 {$endc} 51 {$ifc not defined __ppc64__ and defined CPUPOWERPC64} 52 {$setc __ppc64__ := 1} 53 {$elsec} 54 {$setc __ppc64__ := 0} 55 {$endc} 56 {$ifc not defined __i386__ and defined CPUI386} 57 {$setc __i386__ := 1} 58 {$elsec} 59 {$setc __i386__ := 0} 60 {$endc} 61 {$ifc not defined __x86_64__ and defined CPUX86_64} 62 {$setc __x86_64__ := 1} 63 {$elsec} 64 {$setc __x86_64__ := 0} 65 {$endc} 66 {$ifc not defined __arm__ and defined CPUARM} 67 {$setc __arm__ := 1} 68 {$elsec} 69 {$setc __arm__ := 0} 70 {$endc} 71 {$ifc not defined __arm64__ and defined CPUAARCH64} 72 {$setc __arm64__ := 1} 73 {$elsec} 74 {$setc __arm64__ := 0} 75 {$endc} 76 77 {$ifc defined cpu64} 78 {$setc __LP64__ := 1} 79 {$elsec} 80 {$setc __LP64__ := 0} 81 {$endc} 82 83 84 {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__} 85 {$error Conflicting definitions for __ppc__ and __i386__} 86 {$endc} 87 88 {$ifc defined __ppc__ and __ppc__} 89 {$setc TARGET_CPU_PPC := TRUE} 90 {$setc TARGET_CPU_PPC64 := FALSE} 91 {$setc TARGET_CPU_X86 := FALSE} 92 {$setc TARGET_CPU_X86_64 := FALSE} 93 {$setc TARGET_CPU_ARM := FALSE} 94 {$setc TARGET_CPU_ARM64 := FALSE} 95 {$setc TARGET_OS_MAC := TRUE} 96 {$setc TARGET_OS_IPHONE := FALSE} 97 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 98 {$setc TARGET_OS_EMBEDDED := FALSE} 99 {$elifc defined __ppc64__ and __ppc64__} 100 {$setc TARGET_CPU_PPC := FALSE} 101 {$setc TARGET_CPU_PPC64 := TRUE} 102 {$setc TARGET_CPU_X86 := FALSE} 103 {$setc TARGET_CPU_X86_64 := FALSE} 104 {$setc TARGET_CPU_ARM := FALSE} 105 {$setc TARGET_CPU_ARM64 := FALSE} 106 {$setc TARGET_OS_MAC := TRUE} 107 {$setc TARGET_OS_IPHONE := FALSE} 108 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 109 {$setc TARGET_OS_EMBEDDED := FALSE} 110 {$elifc defined __i386__ and __i386__} 111 {$setc TARGET_CPU_PPC := FALSE} 112 {$setc TARGET_CPU_PPC64 := FALSE} 113 {$setc TARGET_CPU_X86 := TRUE} 114 {$setc TARGET_CPU_X86_64 := FALSE} 115 {$setc TARGET_CPU_ARM := FALSE} 116 {$setc TARGET_CPU_ARM64 := FALSE} 117 {$ifc defined iphonesim} 118 {$setc TARGET_OS_MAC := FALSE} 119 {$setc TARGET_OS_IPHONE := TRUE} 120 {$setc TARGET_IPHONE_SIMULATOR := TRUE} 121 {$elsec} 122 {$setc TARGET_OS_MAC := TRUE} 123 {$setc TARGET_OS_IPHONE := FALSE} 124 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 125 {$endc} 126 {$setc TARGET_OS_EMBEDDED := FALSE} 127 {$elifc defined __x86_64__ and __x86_64__} 128 {$setc TARGET_CPU_PPC := FALSE} 129 {$setc TARGET_CPU_PPC64 := FALSE} 130 {$setc TARGET_CPU_X86 := FALSE} 131 {$setc TARGET_CPU_X86_64 := TRUE} 132 {$setc TARGET_CPU_ARM := FALSE} 133 {$setc TARGET_CPU_ARM64 := FALSE} 134 {$ifc defined iphonesim} 135 {$setc TARGET_OS_MAC := FALSE} 136 {$setc TARGET_OS_IPHONE := TRUE} 137 {$setc TARGET_IPHONE_SIMULATOR := TRUE} 138 {$elsec} 139 {$setc TARGET_OS_MAC := TRUE} 140 {$setc TARGET_OS_IPHONE := FALSE} 141 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 142 {$endc} 143 {$setc TARGET_OS_EMBEDDED := FALSE} 144 {$elifc defined __arm__ and __arm__} 145 {$setc TARGET_CPU_PPC := FALSE} 146 {$setc TARGET_CPU_PPC64 := FALSE} 147 {$setc TARGET_CPU_X86 := FALSE} 148 {$setc TARGET_CPU_X86_64 := FALSE} 149 {$setc TARGET_CPU_ARM := TRUE} 150 {$setc TARGET_CPU_ARM64 := FALSE} 151 {$setc TARGET_OS_MAC := FALSE} 152 {$setc TARGET_OS_IPHONE := TRUE} 153 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 154 {$setc TARGET_OS_EMBEDDED := TRUE} 155 {$elifc defined __arm64__ and __arm64__} 156 {$setc TARGET_CPU_PPC := FALSE} 157 {$setc TARGET_CPU_PPC64 := FALSE} 158 {$setc TARGET_CPU_X86 := FALSE} 159 {$setc TARGET_CPU_X86_64 := FALSE} 160 {$setc TARGET_CPU_ARM := FALSE} 161 {$setc TARGET_CPU_ARM64 := TRUE} 162 {$ifc defined ios} 163 {$setc TARGET_OS_MAC := FALSE} 164 {$setc TARGET_OS_IPHONE := TRUE} 165 {$setc TARGET_OS_EMBEDDED := TRUE} 166 {$elsec} 167 {$setc TARGET_OS_MAC := TRUE} 168 {$setc TARGET_OS_IPHONE := FALSE} 169 {$setc TARGET_OS_EMBEDDED := FALSE} 170 {$endc} 171 {$setc TARGET_IPHONE_SIMULATOR := FALSE} 172 {$elsec} 173 {$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ nor __arm64__ is defined.} 174 {$endc} 175 176 {$ifc defined __LP64__ and __LP64__ } 177 {$setc TARGET_CPU_64 := TRUE} 178 {$elsec} 179 {$setc TARGET_CPU_64 := FALSE} 180 {$endc} 181 182 {$ifc defined FPC_BIG_ENDIAN} 183 {$setc TARGET_RT_BIG_ENDIAN := TRUE} 184 {$setc TARGET_RT_LITTLE_ENDIAN := FALSE} 185 {$elifc defined FPC_LITTLE_ENDIAN} 186 {$setc TARGET_RT_BIG_ENDIAN := FALSE} 187 {$setc TARGET_RT_LITTLE_ENDIAN := TRUE} 188 {$elsec} 189 {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.} 190 {$endc} 191 {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE} 192 {$setc CALL_NOT_IN_CARBON := FALSE} 193 {$setc OLDROUTINENAMES := FALSE} 194 {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE} 195 {$setc OPAQUE_UPP_TYPES := TRUE} 196 {$setc OTCARBONAPPLICATION := TRUE} 197 {$setc OTKERNEL := FALSE} 198 {$setc PM_USE_SESSION_APIS := TRUE} 199 {$setc TARGET_API_MAC_CARBON := TRUE} 200 {$setc TARGET_API_MAC_OS8 := FALSE} 201 {$setc TARGET_API_MAC_OSX := TRUE} 202 {$setc TARGET_CARBON := TRUE} 203 {$setc TARGET_CPU_68K := FALSE} 204 {$setc TARGET_CPU_MIPS := FALSE} 205 {$setc TARGET_CPU_SPARC := FALSE} 206 {$setc TARGET_OS_UNIX := FALSE} 207 {$setc TARGET_OS_WIN32 := FALSE} 208 {$setc TARGET_RT_MAC_68881 := FALSE} 209 {$setc TARGET_RT_MAC_CFM := FALSE} 210 {$setc TARGET_RT_MAC_MACHO := TRUE} 211 {$setc TYPED_FUNCTION_POINTERS := TRUE} 212 {$setc TYPE_BOOL := FALSE} 213 {$setc TYPE_EXTENDED := FALSE} 214 {$setc TYPE_LONGLONG := TRUE} 215 uses MacTypes,CFBase,CFString; 216 {$endc} {not MACOSALLINCLUDE} 217 218 {$ALIGN POWER} 219 220 {$ifc TARGET_OS_MAC} 221 222 { 223 The possible text analysis properties of an index, used by 224 SKIndexCreateWithURL or SKIndexCreateWithMutableData. 225 } 226 227 228 { 229 * kSKMinTermLength 230 * 231 * Summary: 232 * The minimum term length to index. 233 * 234 * Discussion: 235 * The kSKMinTermLength constant is an optional key in the text 236 * analysis properties dictionary whose corresponding value is a 237 * CFNumber object containing the minimum term length to index. If 238 * this key is not present, SearchKit indexing defaults to a minimum 239 * term length of 1. 240 * 241 * Availability: 242 * Mac OS X: in version 10.3 and later in CoreServices.framework 243 * CarbonLib: not available 244 * Non-Carbon CFM: not available 245 } 246 var kSKMinTermLength: CFStringRef; external name '_kSKMinTermLength'; (* attribute const *) 247 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *) 248 { 249 * kSKSubstitutions 250 * 251 * Summary: 252 * A dictionary of term substitutions. 253 * 254 * Discussion: 255 * The kSKSubstitutions constant is an optional key in the text 256 * analysis properties dictionary whose corresponding value is a 257 * CFDictionary object containing term substitutions. 258 * 259 * Availability: 260 * Mac OS X: in version 10.3 and later in CoreServices.framework 261 * CarbonLib: not available 262 * Non-Carbon CFM: not available 263 } 264 var kSKSubstitutions: CFStringRef; external name '_kSKSubstitutions'; (* attribute const *) 265 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *) 266 { 267 * kSKStopWords 268 * 269 * Summary: 270 * A set of stop words--words not to index. 271 * 272 * Discussion: 273 * The kSKStopWords constant is an optional key in the text analysis 274 * properties dictionary whose corresponding value is a CFSet object 275 * containing words not to index. 276 * 277 * Availability: 278 * Mac OS X: in version 10.3 and later in CoreServices.framework 279 * CarbonLib: not available 280 * Non-Carbon CFM: not available 281 } 282 var kSKStopWords: CFStringRef; external name '_kSKStopWords'; (* attribute const *) 283 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER *) 284 { 285 * kSKProximityIndexing 286 * 287 * Summary: 288 * The proximity indexing option. 289 * 290 * Discussion: 291 * The kSKProximityIndexing constant is an optional key in the text 292 * analysis properties dictionary whose corresponding value is a 293 * CFBoolean object containing the proximity indexing option. If 294 * this key is not present, SearchKit indexing defaults to not doing 295 * proximity indexing. 296 * 297 * Availability: 298 * Mac OS X: in version 10.4 and later in CoreServices.framework 299 * CarbonLib: not available 300 * Non-Carbon CFM: not available 301 } 302 var kSKProximityIndexing: CFStringRef; external name '_kSKProximityIndexing'; (* attribute const *) 303 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *) 304 { 305 * kSKMaximumTerms 306 * 307 * Summary: 308 * The maximum unique terms per document to index. 309 * 310 * Discussion: 311 * The kSKMaximumTerms constant is an optional key in the text 312 * analysis properties dictionary whose corresponding value is a 313 * CFNumber object containing the maximum unique terms per document 314 * to index. If this key is not present, SearchKit indexing defaults 315 * to 2000. If the value of this key is zero, there is no limit of 316 * the maximum unique terms per document to index. 317 * 318 * Availability: 319 * Mac OS X: in version 10.4 and later in CoreServices.framework 320 * CarbonLib: not available 321 * Non-Carbon CFM: not available 322 } 323 var kSKMaximumTerms: CFStringRef; external name '_kSKMaximumTerms'; (* attribute const *) 324 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *) 325 { 326 * kSKTermChars 327 * 328 * Summary: 329 * The extra valid characters for indexing. 330 * 331 * Discussion: 332 * The kSKTermCharSet constant is an optional key in the text 333 * analysis properties dictionary whose corresponding value is a 334 * CFString object containing the extra valid characters that a 335 * valid term (word) can contain. Used for indexing and query 336 * processing. 337 * 338 * Availability: 339 * Mac OS X: in version 10.4 and later in CoreServices.framework 340 * CarbonLib: not available 341 * Non-Carbon CFM: not available 342 } 343 var kSKTermChars: CFStringRef; external name '_kSKTermChars'; (* attribute const *) 344 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *) 345 { 346 * kSKStartTermChars 347 * 348 * Summary: 349 * The extra valid characters for indexing. 350 * 351 * Discussion: 352 * The kSKStartTermChars constant is an optional key in the text 353 * analysis properties dictionary whose corresponding value is a 354 * CFString object containing the extra valid characters that can 355 * occur as the first character of a term. Overrides the 356 * kSKTermChars for the first character of a term. 357 * 358 * Availability: 359 * Mac OS X: in version 10.4 and later in CoreServices.framework 360 * CarbonLib: not available 361 * Non-Carbon CFM: not available 362 } 363 var kSKStartTermChars: CFStringRef; external name '_kSKStartTermChars'; (* attribute const *) 364 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *) 365 { 366 * kSKEndTermChars 367 * 368 * Summary: 369 * The extra valid characters for indexing. 370 * 371 * Discussion: 372 * The kSKEndTermChars constant is an optional key in the text 373 * analysis properties dictionary whose corresponding value is a 374 * CFString object containing the extra valid characters that can 375 * occur as the last character of a term. Overrides the kSKTermChars 376 * for the last character of a term. 377 * 378 * Availability: 379 * Mac OS X: in version 10.4 and later in CoreServices.framework 380 * CarbonLib: not available 381 * Non-Carbon CFM: not available 382 } 383 var kSKEndTermChars: CFStringRef; external name '_kSKEndTermChars'; (* attribute const *) 384 (* AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER *) 385 { 386 * kSKLanguageTypes *** DEPRECATED *** 387 * 388 * Summary: 389 * An array of string objects that specify the languages to use for 390 * indexing. 391 * 392 * Discussion: 393 * The kSKLanguageTypes constant is an optional key in the text 394 * analysis properties dictionary whose corresponding value is an 395 * array of string objects that together specify the languages to 396 * use for indexing. Each string should be a two character ISO 639-1 397 * code indicating a language to use. For example, 'en' for English, 398 * 'ja' for Japanese, and so on. If this key is not present, 399 * SearchKit uses the Mac OS X preferences system to determine the 400 * primary language from the user's locale. 401 * 402 * Availability: 403 * Mac OS X: in version 10.3 and later in CoreServices.framework but deprecated in 10.4 404 * CarbonLib: not available 405 * Non-Carbon CFM: not available 406 } 407 var kSKLanguageTypes: CFStringRef; external name '_kSKLanguageTypes'; (* attribute const *) 408 (* AVAILABLE_MAC_OS_X_VERSION_10_3_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_4 *) 409 410 411 {$endc} {TARGET_OS_MAC} 412 {$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE} 413 414 end. 415 {$endc} {not MACOSALLINCLUDE} 416