25 lines
758 B
C
25 lines
758 B
C
#ifndef INCLUDED_C_FLOWEDGE_H
|
|
#define INCLUDED_C_FLOWEDGE_H
|
|
|
|
#ifndef INCLUDED_C_TYPES_H
|
|
#include <c_Types.h>
|
|
#endif /*INCLUDED_C_TYPES_H*/
|
|
|
|
|
|
/* ------------------------------------------------------------------------------------------------------------------ */
|
|
/* */
|
|
|
|
typedef struct {
|
|
c_size_t from; /* Source vertex of the directed edge */
|
|
c_size_t to; /* Destination vertex of the directed edge */
|
|
double capacity; /* Total flow capacity threshold limit */
|
|
double flow; /* Current active allocated flow amount */
|
|
} c_FlowEdge_t;
|
|
|
|
/**
|
|
* @brief Resolves the companion residual edge ID using a high-speed bitwise XOR short-circuit
|
|
*/
|
|
#define C_FLOW_EDGE_REVERSE(edge_id) ((edge_id) ^ 1)
|
|
|
|
#endif /*INCLUDED_C_FLOWEDGE_H*/
|