6243{
6245 int forward_edges_count = 0;
6247 int backward_edges_count = 0;
6248 int i, ret;
6249
6250
6251
6253 forward_edges_count = 0;
6255 backward_edges_count = 0;
6256
6257 for ( i=0; i<ring->
size; ++i )
6258 {
6263 {
6264 LWDEBUGF(3,
"Forward edge %d is %d", forward_edges_count,
id);
6265 forward_edges[forward_edges_count].
edge_id = id;
6266 forward_edges[forward_edges_count++].
face_left = face;
6268 }
6269 else
6270 {
6271 LWDEBUGF(3,
"Backward edge %d is %d", forward_edges_count,
id);
6272 backward_edges[backward_edges_count].
edge_id = id;
6273 backward_edges[backward_edges_count++].
face_right = face;
6275 }
6276 }
6277
6278
6279 if ( forward_edges_count )
6280 {
6282 forward_edges_count,
6284 if ( ret == -1 )
6285 {
6287 lwfree( backward_edges );
6289 return -1;
6290 }
6291 if ( ret != forward_edges_count )
6292 {
6294 lwfree( backward_edges );
6295 lwerror(
"Unexpected error: %d edges updated when expecting %d (forward)",
6296 ret, forward_edges_count);
6297 return -1;
6298 }
6299 }
6300
6301
6302 if ( backward_edges_count )
6303 {
6305 backward_edges_count,
6307 if ( ret == -1 )
6308 {
6310 lwfree( backward_edges );
6312 return -1;
6313 }
6314 if ( ret != backward_edges_count )
6315 {
6317 lwfree( backward_edges );
6318 lwerror(
"Unexpected error: %d edges updated when expecting %d (backward)",
6319 ret, backward_edges_count);
6320 return -1;
6321 }
6322 }
6323
6325 lwfree( backward_edges );
6326
6327 return 0;
6328}
void * lwalloc(size_t size)
#define LWT_COL_EDGE_FACE_RIGHT
LWT_INT64 LWT_ELEMID
Identifier of topology element.
#define LWT_COL_EDGE_FACE_LEFT
#define LWDEBUGF(level, msg,...)
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
const char * lwt_be_lastErrorMessage(const LWT_BE_IFACE *be)
static int lwt_be_updateEdgesById(LWT_TOPOLOGY *topo, const LWT_ISO_EDGE *edges, int numedges, int upd_fields)
LWT_EDGERING_ELEM ** elems
const LWT_BE_IFACE * be_iface