00001 /*************************************************************************** 00002 $RCSfile$ 00003 ------------------- 00004 cvs : $Id: idlist.h 1102 2006-12-30 19:39:37Z martin $ 00005 begin : Mon Mar 01 2004 00006 copyright : (C) 2004 by Martin Preuss 00007 email : martin@libchipcard.de 00008 00009 *************************************************************************** 00010 * * 00011 * This library is free software; you can redistribute it and/or * 00012 * modify it under the terms of the GNU Lesser General Public * 00013 * License as published by the Free Software Foundation; either * 00014 * version 2.1 of the License, or (at your option) any later version. * 00015 * * 00016 * This library is distributed in the hope that it will be useful, * 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00019 * Lesser General Public License for more details. * 00020 * * 00021 * You should have received a copy of the GNU Lesser General Public * 00022 * License along with this library; if not, write to the Free Software * 00023 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * 00024 * MA 02111-1307 USA * 00025 * * 00026 ***************************************************************************/ 00027 00033 #ifndef GWENHYWFAR_IDLIST64_H 00034 #define GWENHYWFAR_IDLIST64_H 00035 00036 #ifdef __cplusplus 00037 extern "C" { 00038 #endif 00039 typedef struct GWEN_IDLIST64 GWEN_IDLIST64; 00040 typedef struct GWEN_IDLIST64_ITERATOR GWEN_IDLIST64_ITERATOR; 00041 #ifdef __cplusplus 00042 } 00043 #endif 00044 00045 #include <gwenhywfar/gwenhywfarapi.h> 00046 #include <gwenhywfar/types.h> 00047 00048 #ifdef __cplusplus 00049 extern "C" { 00050 #endif 00051 00065 GWENHYWFAR_API 00066 GWEN_IDLIST64 *GWEN_IdList64_new(); 00067 00071 GWENHYWFAR_API 00072 void GWEN_IdList64_free(GWEN_IDLIST64 *idl); 00073 00074 00075 00076 GWENHYWFAR_API 00077 void GWEN_IdList64_Attach(GWEN_IDLIST64 *idl); 00078 00079 00085 GWENHYWFAR_API 00086 GWEN_IDLIST64 *GWEN_IdList64_dup(const GWEN_IDLIST64 *idl); 00087 00088 00092 GWENHYWFAR_API 00093 void GWEN_IdList64_Clear(GWEN_IDLIST64 *idl); 00094 00098 GWENHYWFAR_API 00099 int GWEN_IdList64_AddId(GWEN_IDLIST64 *idl, uint64_t id); 00100 00105 GWENHYWFAR_API 00106 int GWEN_IdList64_DelId(GWEN_IDLIST64 *idl, uint64_t id); 00107 00112 GWENHYWFAR_API 00113 int GWEN_IdList64_HasId(const GWEN_IDLIST64 *idl, uint64_t id); 00114 00120 GWENHYWFAR_API DEPRECATED 00121 uint64_t GWEN_IdList64_GetFirstId(GWEN_IDLIST64 *idl); 00122 00128 GWENHYWFAR_API DEPRECATED 00129 uint64_t GWEN_IdList64_GetNextId(GWEN_IDLIST64 *idl); 00130 00136 GWENHYWFAR_API DEPRECATED 00137 uint64_t GWEN_IdList64_GetFirstId2(const GWEN_IDLIST64 *idl, 00138 uint64_t *hdl); 00139 00145 GWENHYWFAR_API DEPRECATED 00146 uint64_t GWEN_IdList64_GetNextId2(const GWEN_IDLIST64 *idl, 00147 uint64_t *hdl); 00148 00149 00153 GWENHYWFAR_API 00154 int GWEN_IdList64_Sort(GWEN_IDLIST64 *idl); 00155 00168 00169 GWENHYWFAR_API 00170 GWEN_IDLIST64_ITERATOR *GWEN_IdList64_Iterator_new(GWEN_IDLIST64 *idl); 00171 00172 GWENHYWFAR_API 00173 void GWEN_IdList64_Iterator_free(GWEN_IDLIST64_ITERATOR *it); 00174 00175 GWENHYWFAR_API 00176 uint64_t GWEN_IdList64_Iterator_GetFirstId(GWEN_IDLIST64_ITERATOR *it); 00177 00178 GWENHYWFAR_API 00179 uint64_t GWEN_IdList64_Iterator_GetNextId(GWEN_IDLIST64_ITERATOR *it); 00180 00184 #ifdef __cplusplus 00185 } 00186 #endif 00187 00188 00189 #endif /* GWENHYWFAR_IDLIST64_H */ 00190 00191