1 // This is gel/vifa/vifa_typedefs.h
2 #ifndef VIFA_TYPEDEFS_H
3 #define VIFA_TYPEDEFS_H
4 
5 #include <iostream>
6 #include <vector>
7 #ifdef _MSC_VER
8 #  include <vcl_msvc_warnings.h>
9 #endif
10 #include <vbl/vbl_smart_ptr.h>
11 #include <vdgl/vdgl_fit_lines_params.h>
12 #include <vtol/vtol_intensity_face_sptr.h>
13 #include <vtol/vtol_edge_2d_sptr.h>
14 #include <vtol/vtol_topology_object.h>
15 #include <vifa/vifa_imp_line.h>
16 
17 
18 // Intensity faces
19 typedef std::vector<vtol_intensity_face_sptr>  iface_list;
20 typedef iface_list::iterator          iface_iterator;
21 
22 // Edges
23 typedef std::vector<vtol_edge_2d_sptr> edge_2d_list;
24 typedef edge_2d_list::iterator        edge_2d_iterator;
25 
26 // Edge list iterator
27 typedef edge_list::iterator           edge_iterator;
28 
29 // Face list iterator
30 typedef face_list::iterator           face_iterator;
31 
32 // Implicit lines
33 typedef vifa_imp_line<double>         imp_line;
34 typedef vbl_smart_ptr<imp_line>       imp_line_sptr;
35 typedef std::vector<imp_line_sptr>     imp_line_list;
36 typedef imp_line_list::iterator       imp_line_iterator;
37 
38 typedef std::vector<imp_line_list*>    imp_line_table;
39 typedef imp_line_table::iterator      imp_line_table_iterator;
40 
41 // Line fitting parameters
42 typedef vbl_smart_ptr<vdgl_fit_lines_params>  vdgl_fit_lines_params_sptr;
43 
44 
45 #endif  // VIFA_TYPEDEFS_H
46