Source code of Windows XP (NT5)
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.
|
|
/* httpsrch.h */
//-----------------
// FULL TEXT SEARCH
//-----------------
// Variables used to echange information between server and client
#define FTS_DOWNLOAD \
LPBYTE lpTopicBuf; /* dest buffer for topics */ \ LPBYTE lpOccBuf; /* dest buffer for occurences */ \ DWORD dwTopicBsize; /* topic buffer size */ \ DWORD dwOccBsize; /* Occurence buffer size */ \ DWORD lcTotalNumOfTopics; /* The total number of topics returned */ \ DWORD lcReturnedTopics; /* The total number of topics the user wants to get returned */ \ DWORD lcDownloadedTopics; /* number of topics downloaded during the last request (HTTP) */ \ DWORD lcMaxTopic; /* Max TopicId number (internal) */ \ DWORD lcMaxDownloadedTopic;/* Max TopicId number downloaded (HTTP) */ \ DWORD lLastTopicId; /* Last accessed topicId */ \ DWORD dwStart; /* first topic in the list to download for current result window */ \ DWORD dwCount; /* how many topics to download for current result window & Offset in Occurence file (last) */ \ DWORD dwOccFileOffset
typedef struct _httpFTS_TAG { HANDLE hStruct; // handle on this structure MUST be first field
FTS_DOWNLOAD; // Client/Server info interface
/* Info related to the query */
HANDLE hTitle; // virtual handle on the client side
DWORD dwFlags; HANDLE hStrQuery; // handle on the query string
LPCSTR lpstrQuery; // The Query
LPVOID lpGroup; // LPGROUP lpGroup,
WORD wNear; WORD pad; DWORD dwCountQ; // dwCount from the Query
LPVOID lpGroupHits;
// Global result for this query
DWORD dwGStart; // first topic in the list that has been downloaded from the beginning
DWORD dwGCount; // how many topics have been downloaded from the beginning
} HTTPQ, *LPHTTPQ;
// parameters downloaded by the server: This structure MUST
// match exactly the "Partial download variables Section"
// in the above HTTPQ structure declaration.
typedef struct _httpFTS_VARTAG { FTS_DOWNLOAD;
} VHTTPQ, *LPVHTTPQ;
#define DWNLD_TOPIC_SIZE 20000
#define DWNLD_OCC_SIZE 44000
// number of topics to download in a window of result
#define DWNLD_CNT 10
// comparison macros
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
#define MAX(a, b) (((a) > (b)) ? (a) : (b))
#define ABS(x) ((x > 0) ? (x) : (-x))
//-----------------
// WORDWHEEL SEARCH
//-----------------
// Variables used to echange information between server and client
#define WWS_DOWNLOAD \
LPBYTE lpGroupDestBuf; /* dest buffer for the result group */ \ DWORD lcItemReturned; /* number of items returned till now */ \ DWORD lcTotalNumOfItem; /* The total number of Item */ \ DWORD lcDownloadedTopics; /* number of topics downloaded during the last request (HTTP) */ \ DWORD lcMaxTopic; /* Max TopicId number (internal) */ \ DWORD lcMaxDownloadedTopic;/* Max TopicId number downloaded (HTTP) */ \ DWORD lLastTopicId; /* Last accessed topicId */ \ DWORD dwStart; /* first topic in the list to download for current result window & how many topics to download for current result window & Offset in Occurence file (last) */ \ DWORD dwCount
typedef struct _httpWWS_TAG { HANDLE hStruct; // handle on this structure MUST be first field
WWS_DOWNLOAD; // Client/Server info interface
/* Info related to the query */
HANDLE hCww; // handle on client word wheel container
DWORD dwFlags; HANDLE hStrQuery; // handle on the query string
LPCSTR lpstrQuery; // The Query
LPVOID lpGroup; // LPGROUP lpGroup,
DWORD dwCountQ; // dwCount from the Query
LPVOID lpGroupHits;
// Global result for this query
DWORD dwGStart; // first topic in the list that has been downloaded from the beginning
DWORD dwGCount; // how many topics have been downloaded from the beginning
} WW_HTTPQ, *LPWW_HTTPQ;
// parameters downloaded by the server: This structure MUST
// match exactly the "Partial download variables Section"
// in the above HTTPQ structure declaration.
typedef struct _httpWWS_VARTAG { WWS_DOWNLOAD;
} WW_VHTTPQ, *LPWW_VHTTPQ;
|