Add a wrapper macro for pmap_get(), which has the return type as additional parameter.
[libfirm] / include / libfirm / adt / bipartite.h
index 5da67ca..4d89079 100644 (file)
 
 #include "../begin.h"
 
-typedef struct _bipartite_t bipartite_t;
+/**
+ * @ingroup algorithms
+ * @defgroup bipartite Bipartite Matching
+ * Solved bipartite matching problem.
+ * (Variant with only 0/1 costs)
+ * @{
+ */
 
+/** internal representation of bipartite matching problem */
+typedef struct bipartite_t bipartite_t;
+
+/** Create new bipartite matching problem with @p n_left elements on left side
+ * and @p n_right elements on right side */
 FIRM_API bipartite_t *bipartite_new(int n_left, int n_right);
+/** Free memory occupied by bipartite matching problem */
 FIRM_API void bipartite_free(bipartite_t *gr);
+/** Add edge from @p i (on the left side) to @p j (on the right side) */
 FIRM_API void bipartite_add(bipartite_t *gr, int i, int j);
+/** Remove edge from @p i (on the left side) to @p j (on the right side) */
 FIRM_API void bipartite_remv(bipartite_t *gr, int i, int j);
+/** Return 1 if edge from @p i (on the left side) to @p j (on the right side)
+ * exists, 0 otherwise */
 FIRM_API int bipartite_adj(const bipartite_t *gr, int i, int j);
+/** Solve bipartite matching problem */
 FIRM_API void bipartite_matching(const bipartite_t *gr, int *matching);
 
 /**
@@ -47,6 +64,8 @@ FIRM_API void bipartite_dump_f(FILE *f, const bipartite_t *gr);
  */
 FIRM_API void bipartite_dump(const char *name, const bipartite_t *gr);
 
+/** @} */
+
 #include "../end.h"
 
 #endif /* _BIPARTITE_H */