X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=isl_id_private.h;h=6266b475e54b614da653659c8a2c89f7fca89f21;hb=3d9f65131f9da197bca3a30eccf3a70107f50f03;hp=6fb17937ad277ac66ecf638a633d555b2f638bc1;hpb=64e0c9a630d2cec74cc60b23156cf63a3083de43;p=platform%2Fupstream%2Fisl.git diff --git a/isl_id_private.h b/isl_id_private.h index 6fb1793..6266b47 100644 --- a/isl_id_private.h +++ b/isl_id_private.h @@ -1,7 +1,7 @@ /* * Copyright 2008-2009 Katholieke Universiteit Leuven * - * Use of this software is governed by the GNU LGPLv2.1 license + * Use of this software is governed by the MIT license * * Written by Sven Verdoolaege, K.U.Leuven, Departement * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium @@ -12,6 +12,11 @@ #include +/* Represent a name and/or user pointer. + * + * If "free_user" is set, then it will be called on "user" when + * the last instance of the isl_id is freed. + */ struct isl_id { int ref; isl_ctx *ctx; @@ -19,8 +24,17 @@ struct isl_id { const char *name; void *user; uint32_t hash; + + __isl_give void (*free_user)(void *user); }; +#undef EL +#define EL isl_id + +#include + uint32_t isl_hash_id(uint32_t hash, __isl_keep isl_id *id); +extern isl_id isl_id_none; + #endif