Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
don't malloc tons of dynars in mpi_waitany
[simgrid.git] / include / xbt / dynar.h
index 6dcebc9..d9796b5 100644 (file)
@@ -23,10 +23,12 @@ SG_BEGIN_DECL()
   *  
   * For performance concerns, the content of DynArr must be homogeneous (in contrary to dictionnaries -- see the
   * \ref XBT_dict section). You thus have to provide the function which will be used to free the content at
-  * structure creation (of type void_f_ppvoid_t or void_f_pvoid_t).
+  * structure creation (of type void_f_pvoid_t).
+  *
+  * @deprecated If you are using C++, you might want to use `std::vector` instead.
   *
   * \section XBT_dynar_exscal Example with scalar
-  * \dontinclude dynar.c
+  * \dontinclude dynar.cpp
   *
   * \skip Vars_decl
   * \skip dyn
@@ -64,6 +66,7 @@ SG_BEGIN_DECL()
 typedef struct xbt_dynar_s *xbt_dynar_t;
 
 XBT_PUBLIC(xbt_dynar_t) xbt_dynar_new(const unsigned long elm_size, void_f_pvoid_t const free_f);
+XBT_PUBLIC(void) xbt_dynar_init(xbt_dynar_t dynar, const unsigned long elmsize, void_f_pvoid_t const free_f);
 XBT_PUBLIC(void) xbt_dynar_free(xbt_dynar_t * dynar);
 XBT_PUBLIC(void) xbt_dynar_free_voidp(void *dynar);
 XBT_PUBLIC(void) xbt_dynar_free_container(xbt_dynar_t * dynar);
@@ -256,6 +259,6 @@ xbt_dynar_foreach (dyn,cpt,str) {
             (_cursor)++         )
 #endif
 /** @} */
-
 SG_END_DECL()
+
 #endif                          /* _XBT_DYNAR_H */