00001 // This is gel/vifa/vifa_typedefs.h 00002 #ifndef VIFA_TYPEDEFS_H 00003 #define VIFA_TYPEDEFS_H 00004 00005 #include <vcl_vector.h> 00006 #include <vbl/vbl_smart_ptr.h> 00007 #include <vdgl/vdgl_fit_lines_params.h> 00008 #include <vtol/vtol_intensity_face_sptr.h> 00009 #include <vtol/vtol_edge_2d_sptr.h> 00010 #include <vtol/vtol_topology_object.h> 00011 #include <vifa/vifa_imp_line.h> 00012 00013 00014 // Intensity faces 00015 typedef vcl_vector<vtol_intensity_face_sptr> iface_list; 00016 typedef iface_list::iterator iface_iterator; 00017 00018 // Edges 00019 typedef vcl_vector<vtol_edge_2d_sptr> edge_2d_list; 00020 typedef edge_2d_list::iterator edge_2d_iterator; 00021 00022 // Edge list iterator 00023 typedef edge_list::iterator edge_iterator; 00024 00025 // Face list iterator 00026 typedef face_list::iterator face_iterator; 00027 00028 // Implicit lines 00029 typedef vifa_imp_line<double> imp_line; 00030 typedef vbl_smart_ptr<imp_line> imp_line_sptr; 00031 typedef vcl_vector<imp_line_sptr> imp_line_list; 00032 typedef imp_line_list::iterator imp_line_iterator; 00033 00034 typedef vcl_vector<imp_line_list*> imp_line_table; 00035 typedef imp_line_table::iterator imp_line_table_iterator; 00036 00037 // Line fitting parameters 00038 typedef vbl_smart_ptr<vdgl_fit_lines_params> vdgl_fit_lines_params_sptr; 00039 00040 00041 #endif // VIFA_TYPEDEFS_H