X-Git-Url: https://code.grnet.gr/git/archipelago/blobdiff_plain/57df6922fba25b765101284f6ba22e649d85434b..b05581e9af12a5e09e579732e6dff36d62e0e0f8:/xseg/xtypes/xobj.h diff --git a/xseg/xtypes/xobj.h b/xseg/xtypes/xobj.h index 3ad4565..637b232 100644 --- a/xseg/xtypes/xobj.h +++ b/xseg/xtypes/xobj.h @@ -1,3 +1,37 @@ +/* + * Copyright 2012 GRNET S.A. All rights reserved. + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * 1. Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * 2. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and + * documentation are those of the authors and should not be + * interpreted as representing official policies, either expressed + * or implied, of GRNET S.A. + */ + #ifndef __XOBJ_H__ #define __XOBJ_H__ @@ -44,11 +78,14 @@ int xobj_alloc_obj(struct xobject_h * obj_h, uint64_t nr); int xobj_handler_init(struct xobject_h *obj_h, void *container, uint32_t magic, uint64_t size, struct xheap *heap); -void xobj_init_iter(struct xobject_h *obj_h, struct xobject_iter *it); +void xobj_iter_init(struct xobject_h *obj_h, struct xobject_iter *it); int xobj_iterate(struct xobject_h *obj_h, struct xobject_iter *it, void **obj); int xobj_check(struct xobject_h *obj_h, void *obj); int xobj_isFree(struct xobject_h *obj_h, void *obj); +int __xobj_check(struct xobject_h *obj_h, void *obj); +int __xobj_isFree(struct xobject_h *obj_h, void *obj); + //TODO //xobj_handler_destroy() //releases allocated pages