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.
1053 lines
30 KiB
1053 lines
30 KiB
5 years ago
|
/*
|
||
|
File: FindByContent.h
|
||
|
|
||
|
Contains: Public search interface for the Find by Content shared library
|
||
|
|
||
|
Version: QuickTime 7.3
|
||
|
|
||
|
Copyright: (c) 2007 (c) 1997-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 __FINDBYCONTENT__
|
||
|
#define __FINDBYCONTENT__
|
||
|
|
||
|
#ifndef __MACTYPES__
|
||
|
#include <MacTypes.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __FILES__
|
||
|
#include <Files.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __MACERRORS__
|
||
|
#include <MacErrors.h>
|
||
|
#endif
|
||
|
|
||
|
#ifndef __CFSTRING__
|
||
|
#include <CFString.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
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Language constants used with FBCIndexItemsInLanguages: these numbers are bits
|
||
|
in a 64-bit array that consists of two UInt32 words. In the current implementation
|
||
|
the low word is always 0, so values for the high word are given. If both UInt32
|
||
|
words are 0, the default value of kDefaultLanguagesHighWord is used.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* These are the new names for the language constants*/
|
||
|
enum {
|
||
|
/* languages that use the Roman character mapping*/
|
||
|
kFBCenglishHighWord = (long)0x80000000,
|
||
|
kFBCdutchHighWord = 0x40000000, /* also Afrikaans*/
|
||
|
kFBCgermanHighWord = 0x20000000,
|
||
|
kFBCswedishHighWord = 0x10000000, /* also Norwegian*/
|
||
|
kFBCdanishHighWord = 0x08000000,
|
||
|
kFBCspanishHighWord = 0x04000000, /* also Catalan*/
|
||
|
kFBCportugueseHighWord = 0x02000000,
|
||
|
kFBCitalianHighWord = 0x01000000,
|
||
|
kFBCfrenchHighWord = 0x00800000,
|
||
|
kFBCromanHighWord = 0x00400000, /* other languages using Roman alphabet*/
|
||
|
/* Languages that use other mappings*/
|
||
|
kFBCicelandicHighWord = 0x00200000, /* also Faroese*/
|
||
|
kFBChebrewHighWord = 0x00100000, /* also Yiddish*/
|
||
|
kFBCarabicHighWord = 0x00080000, /* also Farsi, Urdu*/
|
||
|
kFBCcenteuroHighWord = 0x00040000, /* Central European languages not using Cyrillic*/
|
||
|
kFBCcroatianHighWord = 0x00020000,
|
||
|
kFBCturkishHighWord = 0x00010000,
|
||
|
kFBCromanianHighWord = 0x00008000,
|
||
|
kFBCgreekHighWord = 0x00004000,
|
||
|
kFBCcyrillicHighWord = 0x00002000, /* all languages using Cyrillic*/
|
||
|
kFBCdevanagariHighWord = 0x00001000,
|
||
|
kFBCgujuratiHighWord = 0x00000800,
|
||
|
kFBCgurmukhiHighWord = 0x00000400,
|
||
|
kFBCjapaneseHighWord = 0x00000200,
|
||
|
kFBCkoreanHighWord = 0x00000100,
|
||
|
kFBCdefaultLanguagesHighWord = (long)0xFF800000 /* sum of first 9*/
|
||
|
};
|
||
|
|
||
|
/*A new error, needs to be moved to MacErrors.h*/
|
||
|
enum {
|
||
|
kFBCnotAllFoldersSearchable = -30533
|
||
|
};
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Phase values
|
||
|
These values are passed to the client's callback function to indicate what
|
||
|
the FBC code is doing. They are meaningless in OS X.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
enum {
|
||
|
/* indexing phases*/
|
||
|
kFBCphIndexing = 0,
|
||
|
kFBCphFlushing = 1,
|
||
|
kFBCphMerging = 2,
|
||
|
kFBCphMakingIndexAccessor = 3,
|
||
|
kFBCphCompacting = 4,
|
||
|
kFBCphIndexWaiting = 5, /* access phases*/
|
||
|
kFBCphSearching = 6,
|
||
|
kFBCphMakingAccessAccessor = 7,
|
||
|
kFBCphAccessWaiting = 8, /* summarization*/
|
||
|
kFBCphSummarizing = 9, /* indexing or access*/
|
||
|
kFBCphIdle = 10,
|
||
|
kFBCphCanceling = 11
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
kFBCsummarizationFailed = -30533
|
||
|
};
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Pointer types
|
||
|
These point to memory allocated by the FBC shared library, and must be deallocated
|
||
|
by calls that are defined below.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* A collection of state information for searching*/
|
||
|
typedef struct OpaqueFBCSearchSession* FBCSearchSession;
|
||
|
/* An object containing summary information, from which summary text can be obtained*/
|
||
|
typedef struct OpaqueFBCSummaryRef* FBCSummaryRef;
|
||
|
/* An ordinary C string (used for hit/doc terms)*/
|
||
|
typedef char * FBCWordItem;
|
||
|
/* An array of WordItems*/
|
||
|
typedef FBCWordItem * FBCWordList;
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Callback function type for progress reporting and cancelation during
|
||
|
searching and indexing. The client's callback function should call
|
||
|
WaitNextEvent; a "sleep" value of 1 is suggested. If the callback function
|
||
|
wants to cancel the current operation (indexing, search, or doc-terms
|
||
|
retrieval) it should return true.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
typedef CALLBACK_API_C( Boolean , FBCCallbackProcPtr )(UInt16 phase, float percentDone, void *data);
|
||
|
typedef TVECTOR_UPP_TYPE(FBCCallbackProcPtr) FBCCallbackUPP;
|
||
|
/*
|
||
|
* NewFBCCallbackUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: in CarbonLib 1.0.2 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( FBCCallbackUPP )
|
||
|
NewFBCCallbackUPP(FBCCallbackProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppFBCCallbackProcInfo = 0x00000F91 }; /* 1_byte Func(2_bytes, 4_bytes, 4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(FBCCallbackUPP) NewFBCCallbackUPP(FBCCallbackProcPtr userRoutine) { return userRoutine; }
|
||
|
#else
|
||
|
#define NewFBCCallbackUPP(userRoutine) (userRoutine)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeFBCCallbackUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: in CarbonLib 1.0.2 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeFBCCallbackUPP(FBCCallbackUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeFBCCallbackUPP(FBCCallbackUPP) {}
|
||
|
#else
|
||
|
#define DisposeFBCCallbackUPP(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeFBCCallbackUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: in CarbonLib 1.0.2 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( Boolean )
|
||
|
InvokeFBCCallbackUPP(
|
||
|
UInt16 phase,
|
||
|
float percentDone,
|
||
|
void * data,
|
||
|
FBCCallbackUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(Boolean) InvokeFBCCallbackUPP(UInt16 phase, float percentDone, void * data, FBCCallbackUPP userUPP) { return (*userUPP)(phase, percentDone, data); }
|
||
|
#else
|
||
|
#define InvokeFBCCallbackUPP(phase, percentDone, data, userUPP) (*userUPP)(phase, percentDone, data)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Set the callback function for progress reporting and cancelation during
|
||
|
searching and indexing.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCSetSessionCallback()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
FBCSetSessionCallback(
|
||
|
FBCSearchSession searchSession,
|
||
|
FBCCallbackUPP fn,
|
||
|
void * data);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, use FBCSetSessionCallback*/
|
||
|
/*
|
||
|
* FBCSetCallback()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
FBCSetCallback(
|
||
|
FBCCallbackUPP fn,
|
||
|
void * data);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Callback function type for hit testing during searching
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
typedef CALLBACK_API_C( Boolean , FBCHitTestProcPtr )(const FSRef *theFile, void *data);
|
||
|
typedef TVECTOR_UPP_TYPE(FBCHitTestProcPtr) FBCHitTestUPP;
|
||
|
#if CALL_NOT_IN_CARBON
|
||
|
/*
|
||
|
* NewFBCHitTestUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( FBCHitTestUPP )
|
||
|
NewFBCHitTestUPP(FBCHitTestProcPtr userRoutine);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
enum { uppFBCHitTestProcInfo = 0x000003D1 }; /* 1_byte Func(4_bytes, 4_bytes) */
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(FBCHitTestUPP) NewFBCHitTestUPP(FBCHitTestProcPtr userRoutine) { return userRoutine; }
|
||
|
#else
|
||
|
#define NewFBCHitTestUPP(userRoutine) (userRoutine)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* DisposeFBCHitTestUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
DisposeFBCHitTestUPP(FBCHitTestUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(void) DisposeFBCHitTestUPP(FBCHitTestUPP) {}
|
||
|
#else
|
||
|
#define DisposeFBCHitTestUPP(userUPP)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
/*
|
||
|
* InvokeFBCHitTestUPP()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: available as macro/inline
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( Boolean )
|
||
|
InvokeFBCHitTestUPP(
|
||
|
const FSRef * theFile,
|
||
|
void * data,
|
||
|
FBCHitTestUPP userUPP);
|
||
|
#if !OPAQUE_UPP_TYPES
|
||
|
#ifdef __cplusplus
|
||
|
inline DEFINE_API_C(Boolean) InvokeFBCHitTestUPP(const FSRef * theFile, void * data, FBCHitTestUPP userUPP) { return (*userUPP)(theFile, data); }
|
||
|
#else
|
||
|
#define InvokeFBCHitTestUPP(theFile, data, userUPP) (*userUPP)(theFile, data)
|
||
|
#endif
|
||
|
#endif
|
||
|
|
||
|
#endif /* CALL_NOT_IN_CARBON */
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Set the hit-testing function for searches.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
/*
|
||
|
* FBCSetSessionHitTest()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
FBCSetSessionHitTest(
|
||
|
FBCSearchSession theSession,
|
||
|
FBCHitTestUPP fn,
|
||
|
void * data);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Set the amount of heap space to reserve for the client's use when FBC
|
||
|
allocates memory.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCSetHeapReservation()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( void )
|
||
|
FBCSetHeapReservation(UInt32 bytes);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Find out whether a volume is indexed.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCVolumeIsIndexed()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( Boolean )
|
||
|
FBCVolumeIsIndexed(SInt16 theVRefNum);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Find out whether a volume is remote.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCVolumeIsRemote()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( Boolean )
|
||
|
FBCVolumeIsRemote(SInt16 theVRefNum);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Find out the date & time of an index's last completed update.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCVolumeIndexTimeStamp()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCVolumeIndexTimeStamp(
|
||
|
SInt16 theVRefNum,
|
||
|
UInt32 * timeStamp);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Find out the physical size of an index.
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCVolumeIndexPhysicalSize()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCVolumeIndexPhysicalSize(
|
||
|
SInt16 theVRefNum,
|
||
|
UInt32 * size);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Create & configure a search session
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCCreateSearchSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCCreateSearchSession(FBCSearchSession * searchSession);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCCloneSearchSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCCloneSearchSession(
|
||
|
FBCSearchSession original,
|
||
|
FBCSearchSession * clone);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCAddAllVolumesToSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCAddAllVolumesToSession(
|
||
|
FBCSearchSession theSession,
|
||
|
Boolean includeRemote);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCSetSessionVolumes()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCSetSessionVolumes(
|
||
|
FBCSearchSession theSession,
|
||
|
const SInt16 vRefNums[],
|
||
|
UInt16 numVolumes);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCAddVolumeToSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCAddVolumeToSession(
|
||
|
FBCSearchSession theSession,
|
||
|
SInt16 vRefNum);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCRemoveVolumeFromSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCRemoveVolumeFromSession(
|
||
|
FBCSearchSession theSession,
|
||
|
SInt16 vRefNum);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCGetSessionVolumeCount()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetSessionVolumeCount(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt16 * count);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCGetSessionVolumes()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetSessionVolumes(
|
||
|
FBCSearchSession theSession,
|
||
|
SInt16 vRefNums[],
|
||
|
UInt16 * numVolumes);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Execute a search
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCDoQuerySearch()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCDoQuerySearch(
|
||
|
FBCSearchSession theSession,
|
||
|
char * queryText,
|
||
|
const FSSpec targetDirs[],
|
||
|
UInt32 numTargets,
|
||
|
UInt32 maxHits,
|
||
|
UInt32 maxHitWords);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCDoCFStringSearch()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available in CarbonLib 1.x
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCDoCFStringSearch(
|
||
|
FBCSearchSession theSession,
|
||
|
CFStringRef queryString,
|
||
|
const FSSpec targetDirs[],
|
||
|
UInt32 numTargets,
|
||
|
UInt32 maxHits,
|
||
|
UInt32 maxHitWords);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCDoExampleSearch()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCDoExampleSearch(
|
||
|
FBCSearchSession theSession,
|
||
|
const UInt32 * exampleHitNums,
|
||
|
UInt32 numExamples,
|
||
|
const FSSpec targetDirs[],
|
||
|
UInt32 numTargets,
|
||
|
UInt32 maxHits,
|
||
|
UInt32 maxHitWords);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, use FBCBlindExampleSearchWithCallback to be able to cancel*/
|
||
|
/*
|
||
|
* FBCBlindExampleSearch()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCBlindExampleSearch(
|
||
|
const FSSpec examples[],
|
||
|
UInt32 numExamples,
|
||
|
const FSSpec targetDirs[],
|
||
|
UInt32 numTargets,
|
||
|
UInt32 maxHits,
|
||
|
UInt32 maxHitWords,
|
||
|
Boolean allIndexes,
|
||
|
Boolean includeRemote,
|
||
|
FBCSearchSession * theSession);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCBlindExampleSearchWithCallback()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCBlindExampleSearchWithCallback(
|
||
|
const FSSpec examples[],
|
||
|
UInt32 numExamples,
|
||
|
const FSSpec targetDirs[],
|
||
|
UInt32 numTargets,
|
||
|
UInt32 maxHits,
|
||
|
UInt32 maxHitWords,
|
||
|
Boolean allIndexes,
|
||
|
Boolean includeRemote,
|
||
|
FBCSearchSession * theSession,
|
||
|
FBCCallbackUPP callback,
|
||
|
void * callbackData,
|
||
|
FBCHitTestUPP userHitTest,
|
||
|
void * userHitTestData);
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Get information about hits [wrapper for THitItem C++ API]
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCGetHitCount()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetHitCount(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt32 * count);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCGetHitDocument()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetHitDocument(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt32 hitNumber,
|
||
|
FSSpec * theDocument);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCGetHitDocumentRef()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available in CarbonLib 1.x
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetHitDocumentRef(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt32 hitNumber,
|
||
|
FSRef * theDocument);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCGetHitScore()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetHitScore(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt32 hitNumber,
|
||
|
float * score);
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Summarize text
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCSummarize()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCSummarize(
|
||
|
const void * inBuf,
|
||
|
UInt32 inLength,
|
||
|
void * outBuf,
|
||
|
UInt32 * outLength,
|
||
|
UInt32 * numSentences);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCSummarizeCFString()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSStatus )
|
||
|
FBCSummarizeCFString(
|
||
|
CFStringRef inString,
|
||
|
CFStringRef * outString,
|
||
|
UInt32 * numSentences);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCGetSummaryOfCFString()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSStatus )
|
||
|
FBCGetSummaryOfCFString(
|
||
|
CFStringRef inString,
|
||
|
FBCSummaryRef * summary);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCGetSummarySentenceCount()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSStatus )
|
||
|
FBCGetSummarySentenceCount(
|
||
|
FBCSummaryRef summary,
|
||
|
UInt32 * numSentences);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCGetSummarySentences()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSStatus )
|
||
|
FBCGetSummarySentences(
|
||
|
FBCSummaryRef summary,
|
||
|
CFStringRef * outString,
|
||
|
UInt32 * numSentences,
|
||
|
Boolean paragraphs);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCDisposeSummary()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available
|
||
|
* Mac OS X: in version 10.2 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSStatus )
|
||
|
FBCDisposeSummary(FBCSummaryRef summary);
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Deallocate hit lists and search sessions
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCReleaseSessionHits()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCReleaseSessionHits(FBCSearchSession theSession);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCDestroySearchSession()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCDestroySearchSession(FBCSearchSession theSession);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
Index one or more files and/or folders
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCIndexItems()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 9.0 and later
|
||
|
* CarbonLib: not available in CarbonLib 1.x
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCIndexItems(
|
||
|
FSSpecArrayPtr theItems,
|
||
|
UInt32 itemCount);
|
||
|
|
||
|
|
||
|
/*
|
||
|
* FBCIndexItemsInLanguages()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available in CarbonLib 1.x
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCIndexItemsInLanguages(
|
||
|
FSSpecArrayPtr theItems,
|
||
|
UInt32 itemCount,
|
||
|
UInt32 languageHighBits,
|
||
|
UInt32 languageLowBits);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
(OS X only) Given a folder, find the folder that contains the index file
|
||
|
of the given index
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCFindIndexFileFolderForFolder()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available in CarbonLib 1.x
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCFindIndexFileFolderForFolder(
|
||
|
const FSRef * inFolder,
|
||
|
FSRef * outFolder);
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
(OS X only) Given a folder, delete the index file that indexes it
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* FBCDeleteIndexFileForFolder()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: not available
|
||
|
* CarbonLib: not available in CarbonLib 1.x
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCDeleteIndexFileForFolder(const FSRef * folder);
|
||
|
|
||
|
|
||
|
|
||
|
/*
|
||
|
***************************************************************************
|
||
|
The following are deprecated and obsolete for both OS X and OS 9
|
||
|
***************************************************************************
|
||
|
*/
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCGetMatchedWords()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetMatchedWords(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt32 hitNumber,
|
||
|
UInt32 * wordCount,
|
||
|
FBCWordList * list);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCGetTopicWords()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCGetTopicWords(
|
||
|
FBCSearchSession theSession,
|
||
|
UInt32 hitNumber,
|
||
|
UInt32 * wordCount,
|
||
|
FBCWordList * list);
|
||
|
|
||
|
|
||
|
/* OS X DEPRECATED, NO-OP (will be removed from OS X exports in a future release)*/
|
||
|
/*
|
||
|
* FBCDestroyWordList()
|
||
|
*
|
||
|
* Availability:
|
||
|
* Non-Carbon CFM: in FindByContent 8.5 and later
|
||
|
* CarbonLib: in CarbonLib 1.0 and later
|
||
|
* Mac OS X: in version 10.0 and later
|
||
|
*/
|
||
|
EXTERN_API_C( OSErr )
|
||
|
FBCDestroyWordList(
|
||
|
FBCWordList theList,
|
||
|
UInt32 wordCount);
|
||
|
|
||
|
|
||
|
/* These names are deprecated, use the new ones above*/
|
||
|
enum {
|
||
|
/* languages that use the Roman character mapping*/
|
||
|
englishHighWord = kFBCenglishHighWord,
|
||
|
dutchHighWord = kFBCdutchHighWord, /* also Afrikaans*/
|
||
|
germanHighWord = kFBCgermanHighWord,
|
||
|
swedishHighWord = kFBCswedishHighWord, /* also Norwegian*/
|
||
|
danishHighWord = kFBCdanishHighWord,
|
||
|
spanishHighWord = kFBCspanishHighWord, /* also Catalan*/
|
||
|
portugueseHighWord = kFBCportugueseHighWord,
|
||
|
italianHighWord = kFBCitalianHighWord,
|
||
|
frenchHighWord = kFBCfrenchHighWord,
|
||
|
romanHighWord = kFBCromanHighWord, /* other languages using Roman alphabet*/
|
||
|
/* Languages that use other mappings*/
|
||
|
icelandicHighWord = kFBCicelandicHighWord, /* also Faroese*/
|
||
|
hebrewHighWord = kFBChebrewHighWord, /* also Yiddish*/
|
||
|
arabicHighWord = kFBCarabicHighWord, /* also Farsi, Urdu*/
|
||
|
centeuroHighWord = kFBCcenteuroHighWord, /* Central European languages not using Cyrillic*/
|
||
|
croatianHighWord = kFBCcroatianHighWord,
|
||
|
turkishHighWord = kFBCturkishHighWord,
|
||
|
romanianHighWord = kFBCromanianHighWord,
|
||
|
greekHighWord = kFBCgreekHighWord,
|
||
|
cyrillicHighWord = kFBCcyrillicHighWord, /* all languages using Cyrillic*/
|
||
|
devanagariHighWord = kFBCdevanagariHighWord,
|
||
|
gujuratiHighWord = kFBCgujuratiHighWord,
|
||
|
gurmukhiHighWord = kFBCgurmukhiHighWord,
|
||
|
japaneseHighWord = kFBCjapaneseHighWord,
|
||
|
koreanHighWord = kFBCkoreanHighWord,
|
||
|
kDefaultLanguagesHighWord = kFBCdefaultLanguagesHighWord /* sum of first 9*/
|
||
|
};
|
||
|
|
||
|
|
||
|
#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 /* __FINDBYCONTENT__ */
|
||
|
|