summaryrefslogtreecommitdiff
path: root/include/erasurecode/erasurecode.h
diff options
context:
space:
mode:
authorKevin Greenan <kmgreen2@gmail.com>2014-08-16 19:01:38 -0700
committerKevin Greenan <kmgreen2@gmail.com>2014-08-20 09:15:36 -0700
commitd251ed8f98abcbd90eb1f81a09da93d54427efd7 (patch)
tree1bd5dd2587669185ec7a61033c71c9d2779976e1 /include/erasurecode/erasurecode.h
parent2e4860ca50fe3525696e9c32d4b80fdc50654f96 (diff)
downloadliberasurecode-d251ed8f98abcbd90eb1f81a09da93d54427efd7.tar.gz
API change for liberasurecode_fragments_needed
Still needed: 1.) RS and XOR backends need to honor the 'exclude' argument. 2.) Need to add tests.
Diffstat (limited to 'include/erasurecode/erasurecode.h')
-rw-r--r--include/erasurecode/erasurecode.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/include/erasurecode/erasurecode.h b/include/erasurecode/erasurecode.h
index da8b3c2..9db76da 100644
--- a/include/erasurecode/erasurecode.h
+++ b/include/erasurecode/erasurecode.h
@@ -258,21 +258,23 @@ int liberasurecode_reconstruct_fragment(int desc,
char* out_fragment); /* output */
/**
- * Determine which fragments are needed to reconstruct some subset
- * of missing fragments. The two lists passed into the method (missing_idxs,
- * and fragments_needed), must be allocated by the user.
+ * Return a list of lists with valid rebuild indexes given
+ * a list of missing indexes.
*
- * @param desc - liberasurecode descriptor/handle
- * from liberasurecode_instance_create()
- * @param missing_idxs - -1 terminated list of missing indexes
- * @param fragements_needed - integer array of length at least k + 1, on
- * successful completion, this array will be a -1 terminated list of
- * required fragment indexes.
+ * @desc: liberasurecode instance descriptor (obtained with
+ * liberasurecode_instance_create)
+ * @fragments_to_reconstruct list of indexes to reconstruct
+ * @fragments_to_exclude list of indexes to exclude from
+ * reconstruction equation
+ * @fragments_needed list of fragments needed to reconstruct
+ * fragments in fragments_to_reconstruct
*
* @return 0 on success, non-zero on error
*/
int liberasurecode_fragments_needed(int desc,
- int *missing_idxs, int *fragments_needed);
+ int *fragments_to_reconstruct,
+ int *fragments_to_exclude,
+ int *fragments_needed);
/* ==~=*=~==~=*=~== liberasurecode fragment metadata routines ==~*==~=*=~==~ */