Mercurial > projects > dstep
view dstep/coreservices/searchkit/SKSearch.d @ 11:07194b026fa4
Added bindings to a couple of frameworks, new license + some other things
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sat, 01 Aug 2009 15:03:28 +0200 |
parents | |
children |
line wrap: on
line source
/** * Copyright: Copyright (c) 2009 Jacob Carlborg. * Authors: Jacob Carlborg * Version: Initial created: Jul 22, 2009 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) */ module dstep.coreservices.searchkit.SKSearch; //import dstep.AvailabilityMacros; import dstep.corefoundation.CFArray; import dstep.corefoundation.CFBase; import dstep.corefoundation.CFDate; import dstep.corefoundation.CFDictionary; import dstep.corefoundation.CFURL; import dstep.coreservices.searchkit.SKDocument; import dstep.coreservices.searchkit.SKIndex; struct __SKSearchGroup; struct __SKSearchResults; struct __SKSearch; alias __SKSearchGroup* SKSearchGroupRef; alias __SKSearchResults* SKSearchResultsRef; alias int SKSearchType; alias __SKSearch* SKSearchRef; alias uint SKSearchOptions; extern (C) { alias ubyte function (SKIndexRef, SKDocumentRef, void*) SKSearchResultsFilterCallBack; } enum /*SKSearchType*/ { kSKSearchRanked = 0, kSKSearchBooleanRanked = 1, kSKSearchRequiredRanked = 2, kSKSearchPrefixRanked = 3 } enum { kSKSearchOptionDefault = 0, kSKSearchOptionNoRelevanceScores = 1L << 0, kSKSearchOptionSpaceMeansOR = 1L << 1, kSKSearchOptionFindSimilar = 1L << 2 } extern (C) { uint SKSearchGroupGetTypeID (); uint SKSearchResultsGetTypeID (); SKSearchGroupRef SKSearchGroupCreate (CFArrayRef inArrayOfInIndexes); CFArrayRef SKSearchGroupCopyIndexes (SKSearchGroupRef inSearchGroup); SKSearchResultsRef SKSearchResultsCreateWithQuery (SKSearchGroupRef inSearchGroup, CFStringRef inQuery, int inSearchType, int inMaxFoundDocuments, void* inContext, SKSearchResultsFilterCallBack inFilterCallBack); SKSearchResultsRef SKSearchResultsCreateWithDocuments (SKSearchGroupRef inSearchGroup, CFArrayRef inExampleDocuments, int inMaxFoundDocuments, void* inContext, SKSearchResultsFilterCallBack inFilterCallBack); int SKSearchResultsGetCount (SKSearchResultsRef inSearchResults); int SKSearchResultsGetInfoInRange (SKSearchResultsRef inSearchResults, CFRange inRange, SKDocumentRef* outDocumentsArray, SKIndexRef* outIndexesArray, float* outScoresArray); CFArrayRef SKSearchResultsCopyMatchingTerms (SKSearchResultsRef inSearchResults, int inItem); uint SKSearchGetTypeID (); SKSearchRef SKSearchCreate (SKIndexRef inIndex, CFStringRef inQuery, uint inSearchOptions); void SKSearchCancel (SKSearchRef inSearch); ubyte SKSearchFindMatches (SKSearchRef inSearch, int inMaximumCount, SKDocumentID* outDocumentIDsArray, float* outScoresArray, double maximumTime, CFIndex* outFoundCount); void SKIndexCopyInfoForDocumentIDs (SKIndexRef inIndex, int inCount, SKDocumentID* inDocumentIDsArray, CFStringRef* outNamesArray, SKDocumentID* outParentIDsArray); void SKIndexCopyDocumentRefsForDocumentIDs (SKIndexRef inIndex, int inCount, SKDocumentID* inDocumentIDsArray, SKDocumentRef* outDocumentRefsArray); void SKIndexCopyDocumentURLsForDocumentIDs (SKIndexRef inIndex, int inCount, SKDocumentID* inDocumentIDsArray, CFURLRef* outDocumentURLsArray); }