OpenClovis Logo

clBitmapApi.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2002-2012 OpenClovis Solutions Inc. All Rights Reserved.
3  *
4  * This file is available under a commercial license from the
5  * copyright holder or the GNU General Public License Version 2.0.
6  *
7  * The source code for this program is not published or otherwise
8  * divested of its trade secrets, irrespective of what has been
9  * deposited with the U.S. Copyright office.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * General Public License for more details.
15  *
16  * For more information, see the file COPYING provided with this
17  * material.
18  */
19 /*******************************************************************************
20  * ModuleName : utils
21  * File : clBitmapApi.h
22  *******************************************************************************/
23 
24 /******************************************************************************
25  * Description :
26  *
27  * OpenClovis Bitmap Library API file.
28  *
29  ****************************************************************************/
30 
43 #ifndef _CL_BITMAP_API_H_
44 #define _CL_BITMAP_API_H_
45 
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49 
50 #include <clBitmap.h>
51 
52 
53 /*****************************************************************************
54  * Bitmap Data types
55  *****************************************************************************/
60 typedef ClRcT (*ClBitmapWalkCbT)
61  (ClBitmapHandleT hBitmap, ClUint32T bitNum,
62  void *pCookie) ;
63 
64 /*****************************************************************************
65  * Bitmap functions
66  *****************************************************************************/
67 
101 ClRcT
102 clBitmapCreate(CL_OUT ClBitmapHandleT *phBitmap,
103  CL_IN ClUint32T bitNum);
104 
129 ClRcT
130 clBitmapDestroy(CL_IN ClBitmapHandleT hBitmap);
131 
162 ClRcT
163 clBitmapBitSet(CL_IN ClBitmapHandleT hBitmap,
164  CL_IN ClUint32T bitNum);
165 
166 ClRcT
167 clBitmapAllBitsSet(ClBitmapHandleT hBitmap);
168 
199 ClRcT
200 clBitmapBitClear(CL_IN ClBitmapHandleT hBitmap,
201  CL_IN ClUint32T bitNum);
202 
203 ClRcT
204 clBitmapAllBitsClear(ClBitmapHandleT hBitmap);
205 
241 ClInt32T
242 clBitmapIsBitSet(CL_IN ClBitmapHandleT hBitmap,
243  CL_IN ClUint32T bitNum,
244  CL_OUT ClRcT *pRetCode);
245 
282 ClRcT
283 clBitmapWalkUnlocked(CL_IN ClBitmapHandleT hBitmap,
284  CL_IN ClBitmapWalkCbT fpUserSetBitWalkCb,
285  CL_IN void *pCookie);
286 
320 ClRcT
321 clBitmapWalk(CL_IN ClBitmapHandleT hBitmap,
322  CL_IN ClBitmapWalkCbT fpUserSetBitWalkCb,
323  CL_IN void *pCookie);
324 
347 ClUint32T
348 clBitmapLen(CL_IN ClBitmapHandleT hBitmap);
349 
374 ClRcT
375 clBitmapNumBitsSet(CL_IN ClBitmapHandleT hBitmap,
376  CL_OUT ClUint32T *pNumBits);
377 
408 ClRcT
409 clBitmapNextClearBitSetNGet(CL_IN ClBitmapHandleT hBitmap,
410  CL_IN ClUint32T length,
411  CL_OUT ClUint32T *pBitSet);
412 
447 ClRcT
448 clBitmap2BufferGet(CL_IN ClBitmapHandleT hBitmap,
449  CL_OUT ClUint32T *pListLen,
450  CL_OUT ClUint8T **ppPositionList);
451 
482 ClRcT
483 clBitmapBuffer2BitmapGet(CL_IN ClUint32T listLen,
484  CL_IN ClUint8T *pPositionList,
485  CL_OUT ClBitmapHandleT *phBitmap);
486 
522 ClRcT
523 clBitmap2PositionListGet(CL_IN ClBitmapHandleT hBitmap,
524  CL_OUT ClUint32T *pListLen,
525  CL_OUT ClUint32T **ppPositionList);
526 
557 ClRcT
558 clBitmapPositionList2BitmapGet(CL_IN ClUint32T listLen,
559  CL_IN ClUint32T *pPositionList,
560  CL_OUT ClBitmapHandleT *phBitmap);
561 
592 ClRcT
593 clBitmapBufferBitsCopy(CL_IN ClUint32T listLen,
594  CL_IN ClUint8T *pPositionList,
595  CL_IN ClBitmapHandleT hBitmap);
596 
597 #ifdef __cplusplus
598 }
599 #endif
600 
601 #endif /* _CL_BITMAP_API_H_ */
602 

Generated on Tue Jan 10 10:29:15 PST 2012 for OpenClovis SDK using Doxygen