X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=isl_id_private.h;h=6266b475e54b614da653659c8a2c89f7fca89f21;hb=831d570fe1f68872766700bc969b7377d2f2b123;hp=a472d770ca842e9f2e004f3eb8a05deb16843157;hpb=f53869239275299d045f11ddbf71c9f590e73979;p=platform%2Fupstream%2Fisl.git diff --git a/isl_id_private.h b/isl_id_private.h index a472d77..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,15 @@ 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;