Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[xbt] Add unit test got xbt_dict with arbitrary (not a NULL temrinated string) key
[simgrid.git] / src / xbt / setset_private.h
index 1db9798..128db63 100644 (file)
@@ -1,3 +1,9 @@
+/* Copyright (c) 2010, 2014. The SimGrid Team.
+ * All rights reserved.                                                     */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
+
 #include "xbt/dict.h"
 #include "xbt/dynar.h"
 #include "xbt/setset.h"
@@ -12,7 +18,6 @@ typedef struct s_xbt_setset_elm {
 typedef union u_xbt_setset_elm_entry {
   /* Information when the entry is being used */
   struct {
-    unsigned int refcount;    
     xbt_setset_elm_t obj;
   } info;
   /* Information when the entry is free */
@@ -22,32 +27,24 @@ typedef union u_xbt_setset_elm_entry {
 } u_xbt_setset_elm_entry_t, *xbt_setset_elm_entry_t;
 
 typedef struct s_xbt_setset_set {
-  xbt_setset_t setset;         /* setset that contains this set */
-  unsigned int elmcount;       /* number of elements */
-  unsigned int size;           /* in integers */
-  unsigned int *bitmap;        /* the bit array */
+  xbt_setset_t setset;          /* setset that contains this set */
+  unsigned int size;            /* in integers */
+  unsigned int *bitmap;         /* the bit array */
 } s_xbt_setset_set_t;
 
 typedef struct s_xbt_setset {
-  xbt_dynar_t elm_array;    /* of s_xbt_setset_elm_entry_t, to find elements by index */
-  xbt_fifo_t sets;         /* of s_xbt_setset_set_t, memberships in actual sets of setset */
+  xbt_dynar_t elm_array;        /* of s_xbt_setset_elm_entry_t, to find elements by index */
+  xbt_fifo_t sets;              /* of s_xbt_setset_set_t, memberships in actual sets of setset */
 } s_xbt_setset_t;
 
 typedef struct s_xbt_setset_cursor {
-  int idx;       /* Actual postition of the cursor (bit number) */
-  xbt_setset_set_t set;   /* The set associated to the cursor */
+  int idx;                      /* Actual postition of the cursor (bit number) */
+  xbt_setset_set_t set;         /* The set associated to the cursor */
 } s_xbt_setset_cursor_t;
 
 /* Some internal functions */
 
-/* Add an object to the setset, this will calculate its index */
-xbt_setset_elm_entry_t _xbt_setset_elm_add(xbt_setset_t setset, void *obj);
-
-/* Remove from the setset the object stored at idx */
-void _xbt_setset_elm_remove(xbt_setset_t setset, unsigned long idx);
-
-/* Increase the refcount of an element */
-void _xbt_setset_elm_use(xbt_setset_t setset, unsigned long idx);
+int bitcount(int);
 
 /* Get the object associated to a given index */
 void *_xbt_setset_idx_to_obj(xbt_setset_t setset, unsigned long idx);
@@ -60,10 +57,3 @@ void _set_bit(unsigned int bit, unsigned int *bitmap);
 
 /* Unset the nth bit of an array of integers */
 void _unset_bit(unsigned int bit, unsigned int *bitmap);
-
-
-
-
-
-
-