/* --- Structure of a graph --- */

typedef struct arc    Arc;
typedef struct graph  Graph;

struct arc {
        int    eID[2],    /* IDs of two extreme points            */
               numC,      /* number of cells included in the list */
               *cID;      /* intersected cell list                */
        float  value[2];  /* the maximum and minimum value        */
};

struct graph {
        int    numN,      /* number of node (extrema points)      */
               *node;     /* point ID of nodes (extrema points)   */
        Arc    *ac;       /* arc data                             */
};