⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 idtable.h

📁 IBM Lotus C++ API 7.0a for IBM Lotus Notes/Domino Directory Release --------- ------------------
💻 H
字号:

#if defined(OS400) && (__OS400_TGTVRM__ >= 510)
#pragma datamodel(P128)
#endif

/*********************************************************************/
/*                                                                   */
/* Licensed Materials - Property of IBM                              */
/*                                                                   */
/* L-GHUS-5VMPGW, L-GHUS-5S3PEE                                      */
/* (C) Copyright IBM Corp. 1989, 2002  All Rights Reserved           */
/*                                                                   */
/* US Government Users Restricted Rights - Use, duplication or       */
/* disclosure restricted by GSA ADP Schedule Contract with           */
/* IBM Corp.                                                         */
/*                                                                   */
/*********************************************************************/


#ifdef __cplusplus
extern "C" {
#endif

/*	ID Table Routines
*
*	This package is used to create and manipulate tables that contain
*	compressed double-word values that typically represent IDs.  The
*	primitives allow the caller to create an ID table, add or delete IDs,
*	and query for the presence of an ID.
*
*	Compression of the table is achieved by virtue of the fact that it
*	is assumed that the ID space is relatively "regular", that is, that
*	ID values differ from each other by some regular value, say 4.
*
*	ID tables are always stored in Canonical format.
*
*	(This .H file is global so that the ODS routines can access it; all
*	 access to the following structures should be via the programmatic
*	 interfaces provided.)
*/

#ifndef IDTABLE_DEFS
#define IDTABLE_DEFS


#define IDTABLE_MODIFIED 	0x0001	/* modified - set by Insert/Delete */
									/* and can be cleared by caller if desired */
#define IDTABLE_INVERTED	0x0002	/* sense of list inverted */
									/* (reserved for use by caller only) */

/*	Function Declarations */

STATUS LNPUBLIC IDCreateTable (DWORD Alignment, HANDLE far *rethTable);
STATUS LNPUBLIC IDDestroyTable(HANDLE hTable);
STATUS 	LNPUBLIC IDInsert (HANDLE hTable, DWORD id, BOOL far *retfInserted);
STATUS 	LNPUBLIC IDDelete (HANDLE hTable, DWORD id, BOOL far *retfDeleted);
STATUS 	LNPUBLIC IDDeleteAll (HANDLE hTable);
BOOL	LNPUBLIC IDScan (HANDLE hTable, BOOL fFirst, DWORD far *retID);
typedef STATUS (LNCALLBACKPTR IDENUMERATEPROC)
					(void far *Parameter, DWORD id);
STATUS	LNPUBLIC IDEnumerate (HANDLE hTable,
								IDENUMERATEPROC Routine,
								void far *Parameter);
DWORD	LNPUBLIC IDEntries (HANDLE hTable);
BOOL	LNPUBLIC IDIsPresent (HANDLE hTable, DWORD id);
DWORD	LNPUBLIC IDTableSize (HANDLE hTable);
STATUS	LNPUBLIC IDTableCopy (HANDLE hTable, HANDLE far *rethTable);
DWORD	LNPUBLIC IDTableSizeP (void far *pIDTable);
WORD	LNPUBLIC IDTableFlags (void far *pIDTable);
TIMEDATE LNPUBLIC IDTableTime (void far *pIDTable);
void	LNPUBLIC IDTableSetFlags (void far *pIDTable, WORD Flags);
void	LNPUBLIC IDTableSetTime (void far *pIDTable, TIMEDATE Time);
STATUS  LNPUBLIC IDTableIntersect	(HANDLE hSrc1Table,HANDLE hSrc2Table,HANDLE *rethDstTable);
BOOL	LNPUBLIC IDAreTablesEqual	(HANDLE hSrc1Table, HANDLE hSrc2Table);
STATUS	LNPUBLIC IDDeleteTable  (HANDLE hTable, HANDLE hIDsToDelete);
STATUS	LNPUBLIC IDInsertTable  (HANDLE hTable, HANDLE hIDsToAdd);


#endif


/*	End of ID Table Routines */

#ifdef __cplusplus
}
#endif


#if defined(OS400) && (__OS400_TGTVRM__ >= 510)
#pragma datamodel(pop)
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -