log: add \n
[oweals/gnunet.git] / src / set / gnunet-service-set_union_strata_estimator.h
index bb8d09d3180c8b2593310607faf659d26d8c86a6..4d8ab31a224680e3ad9a398e442bd8e5807d4311 100644 (file)
@@ -1,6 +1,6 @@
 /*
       This file is part of GNUnet
-      (C) 2012 Christian Grothoff (and other contributing authors)
+      Copyright (C) 2012 GNUnet e.V.
 
       GNUnet is free software; you can redistribute it and/or modify
       it under the terms of the GNU General Public License as published
@@ -14,8 +14,8 @@
 
       You should have received a copy of the GNU General Public License
       along with GNUnet; see the file COPYING.  If not, write to the
-      Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-      Boston, MA 02111-1307, USA.
+      Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+      Boston, MA 02110-1301, USA.
 */
 
 /**
@@ -45,8 +45,19 @@ extern "C"
  */
 struct StrataEstimator
 {
+  /**
+   * The IBFs of this strata estimator.
+   */
   struct InvertibleBloomFilter **strata;
+
+  /**
+   * Size of the IBF array in @e strata
+   */
   unsigned int strata_count;
+
+  /**
+   * Size of each IBF stratum (in bytes)
+   */
   unsigned int ibf_size;
 };
 
@@ -55,10 +66,12 @@ struct StrataEstimator
  * Write the given strata estimator to the buffer.
  *
  * @param se strata estimator to serialize
- * @param buf buffer to write to, must be of appropriate size
+ * @param[out] buf buffer to write to, must be of appropriate size
+ * @return number of bytes written to @a buf
  */
-void
-strata_estimator_write (const struct StrataEstimator *se, void *buf);
+size_t
+strata_estimator_write (const struct StrataEstimator *se,
+                        void *buf);
 
 
 /**
@@ -66,10 +79,16 @@ strata_estimator_write (const struct StrataEstimator *se, void *buf);
  * estimator.  The strata estimator must already be allocated.
  *
  * @param buf buffer to read from
- * @param se strata estimator to write to
+ * @param buf_len number of bytes in @a buf
+ * @param is_compressed is the data compressed?
+ * @param[out] se strata estimator to write to
+ * @return #GNUNET_OK on success
  */
-void
-strata_estimator_read (const void *buf, struct StrataEstimator *se);
+int
+strata_estimator_read (const void *buf,
+                       size_t buf_len,
+                       int is_compressed,
+                       struct StrataEstimator *se);
 
 
 /**
@@ -78,10 +97,12 @@ strata_estimator_read (const void *buf, struct StrataEstimator *se);
  * @param strata_count number of stratas, that is, number of ibfs in the estimator
  * @param ibf_size size of each ibf stratum
  * @param ibf_hashnum hashnum parameter of each ibf
- * @return a freshly allocated, empty strata estimator
+ * @return a freshly allocated, empty strata estimator, NULL on error
  */
 struct StrataEstimator *
-strata_estimator_create (unsigned int strata_count, uint32_t ibf_size, uint8_t ibf_hashnum);
+strata_estimator_create (unsigned int strata_count,
+                         uint32_t ibf_size,
+                         uint8_t ibf_hashnum);
 
 
 /**
@@ -104,7 +125,8 @@ strata_estimator_difference (const struct StrataEstimator *se1,
  * @param key key to add
  */
 void
-strata_estimator_insert (struct StrataEstimator *se, struct IBF_Key key);
+strata_estimator_insert (struct StrataEstimator *se,
+                         struct IBF_Key key);
 
 
 /**
@@ -114,7 +136,8 @@ strata_estimator_insert (struct StrataEstimator *se, struct IBF_Key key);
  * @param key key to remove
  */
 void
-strata_estimator_remove (struct StrataEstimator *se, struct IBF_Key key);
+strata_estimator_remove (struct StrataEstimator *se,
+                         struct IBF_Key key);
 
 
 /**
@@ -144,4 +167,3 @@ strata_estimator_dup (struct StrataEstimator *se);
 #endif
 
 #endif
-