00001
00002 #line 99 "chain_ringwidths.w"
00003
00004 #ifdef __cplusplus
00005 extern"C"{
00006 #endif
00007 #ifndef RINGLIST_H
00008 #define RINGLIST_H
00009
00010 #line 363 "chain_ringwidths.w"
00011
00012 typedef struct boundpoint{
00013 int xpos;
00014 int ypos;
00015 double theta;
00016 int valid;
00017 struct boundpoint*next;
00018 }BOUNDPOINT;
00019
00020
00021 #line 105 "chain_ringwidths.w"
00022
00023
00024 #line 759 "chain_ringwidths.w"
00025
00026 typedef enum{red= 0,black= 1}rbcolortype;
00027
00028
00029 #line 768 "chain_ringwidths.w"
00030
00031 typedef struct rbnode{
00032 rbcolortype rbcolor;
00033 double key;
00034 BOUNDPOINT*point;
00035 struct rbnode*parent;
00036 struct rbnode*left;
00037 struct rbnode*right;
00038 }RBNODE;
00039
00040
00041 #line 106 "chain_ringwidths.w"
00042
00043
00044 #line 228 "chain_ringwidths.w"
00045
00046 typedef struct{
00047 double centrx;
00048 double centry;
00049 double paxis;
00050 double ortho;
00051 BOUNDPOINT*points;
00052 RBNODE*point_index;
00053 int stale;
00054 }BOUNDER;
00055
00056
00057 #line 107 "chain_ringwidths.w"
00058
00059 #endif
00060 #ifdef __cplusplus
00061 }
00062 #endif
00063
00064