model_server/edge/src/node.cxx
/*
 * find_edges_from_preds
 *	return an elist of this node's predecessors
 *      for predecesors in other subgraphs, the main edge is returned,
 *
 *      if *this* is a sugiyama dummy node, however, the edges from the
 *      *direct* predecessors are returned (not necessarily the main edges).
 */
find_edges_from_preds
return an elist of this node's predecessors
for predecesors in other subgraphs, the main edge is returned.

if *this* is a sugiyama dummy node, however, the edges from the
*direct* predecessors are returned (not necessarily the main edges).
find_edges_from_preds return an elist of this node ' s predecessors for predecesors in other subgraphs the main edge is returned . if * this * is a sugiyama dummy node however the edges from the * direct * predecessors are returned ( not necessarily the main edges ) .
elist* 
node::find_edges_from_preds()
{
    elist* result = new elist;
    node* c;
    result->clean();
    slist_iterator_forw nextpred(*(slist*) this->predlist);
    while (c = (node*) nextpred()) {
      if ( !this->isdummy()) 
        result->append(this->getbackgraph()->find_edge(c, this));
      else {
        elist* ee = c->find_edges_from_preds();
        result->appendlist(ee);
        ee->clean();
      }
    }
    return result;
}
elist * node :: find_edges_from_preds ( ) { elist * result = new elist ; node * c ; result -> clean ( ) ; slist_iterator_forw nextpred ( * ( slist * ) this -> predlist ) ; while ( c = ( node * ) nextpred ( ) ) { if ( ! this -> isdummy ( ) ) result -> append ( this -> getbackgraph ( ) -> find_edge ( c , this ) ) ; else { elist * ee = c -> find_edges_from_preds ( ) ; result -> appendlist ( ee ) ; ee -> clean ( ) ; } } return result ; }
find_edges_from_preds
      return an elist of this node's predecessors
      for predecesors in other subgraphs, the main edge is returned,
find_edges_from_preds return an elist of this node ' s predecessors for predecesors in other subgraphs the main edge is returned