commit ee3681a33fa8a6543889832a184fa5b0eb0a5542
parent e9de0bee60f464b9cb95cd3db93422bd0d1ec071
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date: Wed, 18 Apr 2018 10:50:08 +0200
Add an API call to get max medium rank.
Diffstat:
3 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/src/senc.h b/src/senc.h
@@ -161,6 +161,11 @@ senc_scene_ref_put
* StarEnclosures descriptor. It is an handle toward an analyze result.
******************************************************************************/
SENC_API res_T
+senc_descriptor_get_max_medium
+ (const struct senc_descriptor* descriptor,
+ unsigned* rank);
+
+SENC_API res_T
senc_descriptor_get_enclosure_count
(const struct senc_descriptor* descriptor,
unsigned* count);
diff --git a/src/senc_descriptor.c b/src/senc_descriptor.c
@@ -84,6 +84,16 @@ struct mem_allocator*
* Exported functions
******************************************************************************/
res_T
+senc_descriptor_get_max_medium
+ (const struct senc_descriptor* desc, unsigned* rank)
+{
+ if(!desc || !rank) return RES_BAD_ARG;
+ ASSERT(desc->scene->nmeds < UINT_MAX); /* API type */
+ *rank = (unsigned)desc->scene->nmeds;
+ return RES_OK;
+}
+
+res_T
senc_descriptor_get_enclosure_count
(const struct senc_descriptor* desc, unsigned* count)
{
diff --git a/src/test_senc_descriptor.c b/src/test_senc_descriptor.c
@@ -63,6 +63,13 @@ main(int argc, char** argv)
CHK(senc_descriptor_ref_put(NULL) == RES_BAD_ARG);
CHK(senc_descriptor_ref_put(desc) == RES_OK);
+ CHK(senc_descriptor_get_max_medium(NULL, &count) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_max_medium(desc, NULL) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_enclosure_count(NULL, NULL) == RES_BAD_ARG);
+ CHK(senc_descriptor_get_max_medium(desc, &count) == RES_OK);
+
+ CHK(count == 2);
+
CHK(senc_descriptor_get_enclosure_count(NULL, &count) == RES_BAD_ARG);
CHK(senc_descriptor_get_enclosure_count(desc, NULL) == RES_BAD_ARG);
CHK(senc_descriptor_get_enclosure_count(NULL, NULL) == RES_BAD_ARG);