#ifndef INCLUDED_C_FLOWEDGE_H #define INCLUDED_C_FLOWEDGE_H #ifndef INCLUDED_C_TYPES_H #include #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*/