Main Page | Class List | File List | Class Members | File Members

chain_provisional.h

00001 #ifndef ADD_RINGWIDTHS_H
00002 #define ADD_RINGWIDTHS_H 1
00003 #include "mosaic.h"
00004 #include "chain.h"
00005 #include "trees_widthvec.h"
00006 #include "trees_profile.h"
00007 #include "boundary.h"
00008 #include "project_utilities.h"
00009 
00010 BEGIN_C_DECLARATIONS
00011 
00012 /* A value that will never be a valid LIST_NODE ring_id. */
00013 #define INVALID_ID INT_MIN
00014 
00015 void provisionalrings_destruct (void *data);
00016 
00017 void scale_boundary (BOUNDER * bound, double scale);
00018 
00019 LIST_NODE * make_chain (BOUNDER * bound);
00020 
00021 void chain_extrapolate (IMAGE_BYTE * mimage, MOSAIC_INDEX * mindex,
00022                         double scale, double x, double y,
00023                         double orig_x, double orig_y, double orig_phi,
00024                         LIST_NODE * guide, BOUNDBOX_LIST box,
00025                         double *width, PROFILE_LIST * prof,
00026                         LIST_NODE ** extrapolated,
00027                         LIST_NODE ** small_extrapolated);
00028 
00029 void chain_interpolate (IMAGE_BYTE * mimage, MOSAIC_INDEX * mindex,
00030                         double scale, double x, double y,
00031                         LIST_NODE * inner, LIST_NODE * outer,
00032                         BOUNDBOX_LIST box, double *w_before,
00033                         PROFILE_LIST * prof_before, double *w_after,
00034                         PROFILE_LIST * prof_after, LIST_NODE ** interpolated,
00035                         LIST_NODE ** small_interpolated);
00036 
00037 void chain_collapse (IMAGE_BYTE * mimage, MOSAIC_INDEX * mindex,
00038                      LIST_NODE * inner, LIST_NODE * outer, double *width,
00039                      PROFILE_LIST * prof);
00040 
00041 int provisional_point_in_roi (MOSAIC_INDEX * mindex, double x, double y);
00042 
00043 double provisional_point_distance (double x, double y, LIST_NODE * boundary);
00044 
00045 int provisional_insert (char *doc, int provbnum, IMAGE_BYTE * mimage,
00046                         MOSAIC_INDEX * mindex, double scale,
00047                         double x, double y,
00048                         LIST_NODE * inner, LIST_NODE * outer);
00049 
00050 int provisional_extend (char *doc, int provbnum, IMAGE_BYTE * mimage,
00051                         MOSAIC_INDEX * mindex, double scale,
00052                         double x, double y,
00053                         LIST_NODE * initial, LIST_NODE * final);
00054 
00055 int provisional_delete (char *doc, int provbnum, IMAGE_BYTE * mimage,
00056                         MOSAIC_INDEX * mindex, LIST_NODE * inner,
00057                         LIST_NODE * deleted, LIST_NODE * outer,
00058                         LIST_NODE * small);
00059 
00060 int provisional_check (double x, double y,
00061                        LIST_NODE * inner, LIST_NODE * outer);
00062 
00063 int have_provisional_changes (char * doc, char * pname);
00064 
00065 LIST_NODE * get_provisional_full_chain (char * doc, char * pname);
00066 
00067 LIST_NODE * get_provisional_small_chain (char * doc, char * pname);
00068 
00069 int get_provisional_insert_point (char * doc, char * pname);
00070 
00071 int find_provisional_widths (char * doc, char * pname, double * * widthhandle);
00072 
00073 int find_provisional_profiles (char * doc, char * pname,
00074                                PROFILE_LIST * * profhandle);
00075 
00076 int find_provisional_diff_profiles (char * doc, char * pname,
00077                                     PROFILE_LIST * * diffprofhandle);
00078 
00079 int find_provisional_earlywidths (char * doc, char * pname,
00080                                   double * * earlywidthhandle);
00081 
00082 int find_provisional_latewidths (char * doc, char * pname,
00083                                  double * * latewidthhandle);
00084 
00085 int find_provisional_boundbox (char * doc, char * pname,
00086                                BOUNDBOX_LIST * boundboxhandle);
00087 
00088 END_C_DECLARATIONS
00089 
00090 #endif /* !ADD_RINGWIDTHS_H */

Generated on Wed Nov 24 15:02:16 2004 for trees by  doxygen 1.3.9.1