Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

segv_menus.cxx

Go to the documentation of this file.
00001 #include <vgui/vgui.h>
00002 #include <vgui/vgui_key.h>
00003 #include <vgui/vgui_menu.h>
00004 #include <segv/segv_segmentation_manager.h>
00005 #include <segv/segv_menus.h>
00006 
00007 //Static munu callback functions
00008 
00009 void segv_menus::quit_callback()
00010 {
00011   segv_segmentation_manager::instance()->quit();
00012 }
00013 
00014 
00015 void segv_menus::load_image_callback()
00016 {
00017   segv_segmentation_manager::instance()->load_image();
00018 }
00019 
00020 void segv_menus::clear_display_callback()
00021 {
00022   segv_segmentation_manager::instance()->clear_display();
00023 }
00024 
00025 void segv_menus::original_image_callback()
00026 {
00027   segv_segmentation_manager::instance()->original_image();
00028 }
00029 
00030 void segv_menus::roi_callback()
00031 {
00032   segv_segmentation_manager::instance()->roi();
00033 }
00034 
00035 void segv_menus::gaussian_callback()
00036 {
00037   segv_segmentation_manager::instance()->gaussian();
00038 }
00039 
00040 void segv_menus::downsample_callback()
00041 {
00042   segv_segmentation_manager::instance()->downsample();
00043 }
00044 
00045 void segv_menus::convolution_callback()
00046 {
00047   segv_segmentation_manager::instance()->convolution();
00048 }
00049 
00050 void segv_menus::harris_measure_callback()
00051 {
00052   segv_segmentation_manager::instance()->harris_measure();
00053 }
00054 
00055 void segv_menus::beaudet_measure_callback()
00056 {
00057   segv_segmentation_manager::instance()->beaudet_measure();
00058 }
00059 
00060 void segv_menus::vd_edges_callback()
00061 {
00062   segv_segmentation_manager::instance()->vd_edges();
00063 }
00064 
00065 void segv_menus::regions_callback()
00066 {
00067   segv_segmentation_manager::instance()->regions();
00068 }
00069 
00070 void segv_menus::fit_lines_callback()
00071 {
00072   segv_segmentation_manager::instance()->fit_lines();
00073 }
00074 
00075 void segv_menus::test_camera_parms_callback()
00076 {
00077   segv_segmentation_manager::instance()->test_camera_parms();
00078 }
00079 #if 0
00080 #ifdef HAS_XERCES
00081 void segv_menus::read_xml_edges_callback()
00082 {
00083   segv_segmentation_manager::instance()->read_xml_edges();
00084 }
00085 #endif
00086 #endif
00087 
00088 void segv_menus::test_face_callback()
00089 {
00090 segv_segmentation_manager::instance()->test_face();
00091 }
00092 
00093 void segv_menus::test_digital_lines_callback()
00094 {
00095 segv_segmentation_manager::instance()->test_digital_lines();
00096 }
00097 
00098 
00099 void segv_menus::display_IHS_callback()
00100 {
00101 segv_segmentation_manager::instance()->display_IHS();
00102 }
00103 
00104 void segv_menus::rotate_image_callback()
00105 {
00106 segv_segmentation_manager::instance()->rotate_image();
00107 }
00108 
00109 void segv_menus::compute_mutual_info_callback()
00110 {
00111 segv_segmentation_manager::instance()->compute_mutual_info();
00112 }
00113 
00114 
00115 void segv_menus::create_box_callback()
00116 {
00117   segv_segmentation_manager::instance()->create_box();
00118 }
00119 
00120 void segv_menus::create_polygon_callback()
00121 {
00122   segv_segmentation_manager::instance()->create_polygon();
00123 }
00124 
00125 void segv_menus::compute_background_info_callback()
00126 {
00127 segv_segmentation_manager::instance()->compute_background_info();
00128 }
00129 
00130 void segv_menus::set_foreground_face_callback()
00131 {
00132   segv_segmentation_manager::instance()->set_foreground_face();
00133 }
00134 
00135 void segv_menus::set_background_face_callback()
00136 {
00137   segv_segmentation_manager::instance()->set_background_face();
00138 }
00139 
00140 void segv_menus::compute_parallel_coverage_callback()
00141 {
00142 segv_segmentation_manager::instance()->compute_parallel_coverage();
00143 }
00144 
00145 void segv_menus::compute_watershed_regions_callback()
00146 {
00147   segv_segmentation_manager::instance()->compute_watershed_regions();
00148 }
00149 
00150 void segv_menus::find_vehicle_callback()
00151 {
00152   segv_segmentation_manager::instance()->find_vehicle();
00153 }
00154 
00155 void segv_menus::display_histogram_track_callback()
00156 {
00157   segv_segmentation_manager::instance()->display_histogram_track();
00158 }
00159 
00160 void segv_menus::set_range_params_callback()
00161 {
00162   segv_segmentation_manager::instance()->set_range_params();
00163 }
00164 
00165 //segv_menus definition
00166 vgui_menu segv_menus::get_menu()
00167 {
00168   vgui_menu menubar;
00169   vgui_menu menufile;
00170   vgui_menu menuview;
00171   vgui_menu menuedit;
00172   //file menu entries
00173   menufile.add( "Quit", quit_callback,(vgui_key)'q', vgui_CTRL);
00174   menufile.add( "Load Image", load_image_callback,(vgui_key)'l', vgui_CTRL);
00175 #if 0 // was: #if HAS_XERCES
00176   menufile.add( "Load XML Edges", read_xml_edges_callback);
00177 #endif
00178   //view menu entries
00179   menuview.add("Original Image", original_image_callback);
00180   menuview.add("Clear Display", clear_display_callback);
00181   menuview.add("Display IHS", display_IHS_callback);
00182   menuview.add("Rotate", rotate_image_callback);
00183   menuview.add("Display Histogram Track File", display_histogram_track_callback);
00184   menuview.add("Set Range Params", set_range_params_callback);
00185 
00186   //edit menu entries
00187   menuedit.add("Region Of Interest", roi_callback);
00188   menuedit.add("Gaussian", gaussian_callback);
00189   menuedit.add("Downsample", downsample_callback);
00190   menuedit.add("Convolution", convolution_callback);
00191   menuedit.add("Harris", harris_measure_callback);
00192   menuedit.add("Beaudet", beaudet_measure_callback);
00193   menuedit.add("VD Edges", vd_edges_callback);
00194   menuedit.add("Edgel Regions", regions_callback);
00195   menuedit.add("Watershed Regions", compute_watershed_regions_callback);
00196   menuedit.add("Line Segments", fit_lines_callback);
00197   menuedit.add("TestFace", test_face_callback);
00198   menuedit.add("TestDigitalCurves", test_digital_lines_callback);
00199   menuedit.add("Test Camera Parms",test_camera_parms_callback);
00200   menuedit.add("Create Box", create_box_callback);
00201   menuedit.add("Create Polygon", create_polygon_callback,(vgui_key)'a', vgui_CTRL);
00202   menuedit.add("Compute Mutual Info",compute_mutual_info_callback);
00203 
00204 
00205   menuedit.add("Compute Fore/Background entropy",compute_background_info_callback);
00206   menuedit.add("Set Background Face", set_background_face_callback);
00207 
00208   menuedit.add("Set Foreground Face", set_foreground_face_callback);
00209   menuedit.add("Compute parallel coverage",compute_parallel_coverage_callback);
00210   menuedit.add("Find Vehicle", find_vehicle_callback);
00211 
00212   //Top level menu layout
00213   menubar.add( "File", menufile);
00214   menubar.add( "View", menuview);
00215   menubar.add( "Edit", menuedit);
00216   return menubar;
00217 }
00218 

Generated on Thu Jan 10 14:54:48 2008 for contrib/brl/bseg/segv by  doxygen 1.4.4