Go to the source code of this file.
Functions | |
void | update_cpu () |
Update cpu pane. | |
void | update_cpu_mhz () |
Update mhz variable in cpu pane. | |
void | update_mem () |
Update mem pane. | |
void | update_devs () |
Update devices pane. | |
void | update_settings () |
Update settings pane. | |
void | update_misc () |
Update misc pane. | |
void | update_process () |
Update the process panel. | |
void | update_cmd_ver () |
Update cmdline and version info. | |
void | update_channels () |
Update communication channels panel. | |
void | update_net_info () |
Update networking information. | |
void | update_fs_info () |
Update filesystems information. | |
void | update_modules_info () |
Update modules information. |
void update_channels | ( | ) |
Update communication channels panel.
Updates communication channels tab
Definition at line 640 of file update.c.
References cn_info, channels_info::dma, get_channels_info(), channels_info::iomem, channels_info::ioports, lookup_widget(), and window1.
Referenced by main(), and on_btn_comm_reload_clicked().
00641 { 00642 00643 /* IMPORTANT: 00644 We should not lock with gdk_threads_enter because this function is 00645 called from a callback and callbacks are already running inside a gdk 00646 lock. 00647 In addition, this function is called from main thread before the collector 00648 thread is created, so we don't need to prevent the access from the other 00649 thread. 00650 */ 00651 00652 GtkTextView *gtextv; 00653 GtkTextBuffer *gtbuffer; 00654 00655 /* Getting information */ 00656 if(get_channels_info(&cn_info)==-1){ 00657 /* Values after calling get_channels info are safe 00658 We don't need to do anything here. 00659 */ 00660 } 00661 00662 00663 gtextv=GTK_TEXT_VIEW(lookup_widget(window1, "gtextv_ioports")); 00664 gtbuffer=gtk_text_view_get_buffer(gtextv); 00665 gtk_text_buffer_set_text(gtbuffer,cn_info.ioports->str,cn_info.ioports->len); 00666 00667 gtextv=GTK_TEXT_VIEW(lookup_widget(window1, "gtextv_iomem")); 00668 gtbuffer=gtk_text_view_get_buffer(gtextv); 00669 gtk_text_buffer_set_text(gtbuffer,cn_info.iomem->str,cn_info.iomem->len); 00670 00671 gtextv=GTK_TEXT_VIEW(lookup_widget(window1, "gtextv_dma")); 00672 gtbuffer=gtk_text_view_get_buffer(gtextv); 00673 gtk_text_buffer_set_text(gtbuffer,cn_info.dma->str,cn_info.dma->len); 00674 00675 }
void update_cmd_ver | ( | ) |
Update cmdline and version info.
Updates command line and version information in the window
Definition at line 614 of file update.c.
References cmd_ver::cmd, cmdversion, get_cmd_ver_info(), lookup_widget(), cmd_ver::version, and window1.
Referenced by main().
00615 { 00616 GtkLabel *lbl; 00617 00618 /* Get the information */ 00619 if(get_cmd_ver_info(&cmdversion)==-1){ 00620 /* We don't need to do anything. The cmdversion structure 00621 has the default values. 00622 */ 00623 } 00624 00625 gdk_threads_enter(); 00626 00627 lbl=GTK_LABEL(lookup_widget(window1,"lbl_cmd")); 00628 gtk_label_set_text(lbl,cmdversion.cmd->str); 00629 00630 lbl=GTK_LABEL(lookup_widget(window1,"lbl_version")); 00631 gtk_label_set_text(lbl,cmdversion.version->str); 00632 00633 gdk_threads_leave(); 00634 00635 }
void update_cpu | ( | ) |
Update cpu pane.
Update gtk widgets for cpu panel This function updates labels to show recent values. Before, it calls to get_cpu_info to collect data
Definition at line 166 of file update.c.
References cpu_info::bogomips, cpu_info::cache, cpu, cpu_info::cpu_family, cpu_info::cpuid_level, cpu_info::flags, cpu_info::fpu, cpu_info::fpu_exception, get_cpu_info(), lookup_widget(), cpu_info::Mhz, cpu_info::model, cpu_info::model_name, cpu_info::processor, cpu_info::stepping, cpu_info::vendor_id, window1, and cpu_info::wp.
Referenced by main().
00167 { 00168 00169 get_cpu_info (&cpu); 00170 00171 GtkLabel *widget; 00172 00173 /*Not updated so, we don't need thread locking*/ 00174 00175 widget = GTK_LABEL( lookup_widget (window1, "lbl_processor")); 00176 gtk_label_set_text (widget, (gchar *) cpu.processor); 00177 00178 widget = GTK_LABEL( lookup_widget (window1, "lbl_vendor")); 00179 gtk_label_set_text (widget, (gchar *) cpu.vendor_id); 00180 00181 widget = GTK_LABEL( lookup_widget (window1, "lbl_family")); 00182 gtk_label_set_text (widget, (gchar *) cpu.cpu_family); 00183 00184 00185 widget = GTK_LABEL( lookup_widget (window1, "lbl_model")); 00186 gtk_label_set_text (widget, (gchar *) cpu.model); 00187 00188 widget = GTK_LABEL(lookup_widget (window1, "lbl_model_name")); 00189 gtk_label_set_text (widget, (gchar *) cpu.model_name); 00190 00191 widget = GTK_LABEL( lookup_widget (window1, "lbl_stepping")); 00192 gtk_label_set_text (widget, (gchar *) cpu.stepping); 00193 00194 widget = GTK_LABEL( lookup_widget (window1, "lbl_Mhz")); 00195 gtk_label_set_text (widget, (gchar *) cpu.Mhz); 00196 00197 widget = GTK_LABEL( lookup_widget (window1, "lbl_cache")); 00198 gtk_label_set_text (widget, (gchar *) cpu.cache); 00199 00200 widget = GTK_LABEL( lookup_widget (window1, "lbl_fpu")); 00201 gtk_label_set_text (widget, (gchar *) cpu.fpu); 00202 00203 widget = GTK_LABEL( lookup_widget (window1, "lbl_fpu_exception")); 00204 gtk_label_set_text (widget, (gchar *) cpu.fpu_exception); 00205 00206 widget = GTK_LABEL( lookup_widget (window1, "lbl_cpu_id_level")); 00207 gtk_label_set_text (widget, (gchar *) cpu.cpuid_level); 00208 00209 widget = GTK_LABEL( lookup_widget (window1, "lbl_wp")); 00210 gtk_label_set_text (widget, (gchar *) cpu.wp); 00211 00212 widget = GTK_LABEL( lookup_widget (window1, "lbl_bogomips")); 00213 gtk_label_set_text (widget, (gchar *) cpu.bogomips); 00214 00215 widget = GTK_LABEL( lookup_widget (window1, "lbl_flags")); 00216 gtk_label_set_text (widget, (gchar *) cpu.flags); 00217 00218 00219 }
void update_cpu_mhz | ( | void | ) |
Update mhz variable in cpu pane.
Update MHz label in cpu pane This is the only dynamic feature in cpu pane.
Definition at line 224 of file update.c.
References get_mhz_info(), lookup_widget(), and window1.
Referenced by refresh().
00225 { 00226 GtkLabel *mhz_label; 00227 char str[10]; 00228 00229 get_mhz_info(str); 00230 00231 gdk_threads_enter(); 00232 00233 mhz_label=GTK_LABEL(lookup_widget(window1,"lbl_Mhz")); 00234 gtk_label_set_text(mhz_label,str); 00235 00236 gdk_threads_leave(); 00237 }
void update_devs | ( | ) |
Update devices pane.
Update treeviews for devices pane This is called from a callback
Definition at line 242 of file update.c.
References dev_info::blocks, dev_info::characters, devs, get_devs_info(), lkmonitor_fill_tv(), lookup_widget(), TV_DEVS, and window1.
Referenced by main(), and on_btn_dev_load_clicked().
00243 { 00244 if(get_devs_info(&devs)==-1){ 00245 /*File doesn't exist. Don't do anything*/ 00246 return; 00247 } 00248 00249 GtkListStore *model; 00250 GtkTreeView *gtv; 00251 GtkTreeIter iter; 00252 00253 /* IMPORTANT: 00254 We should not lock with gdk_threads_enter because this function is 00255 called from a callback and callbacks are already running inside a gdk 00256 lock. 00257 In addition, this function is called from main thread before the collector 00258 thread is created, so we don't need to prevent the access from the other 00259 thread. 00260 */ 00261 00262 /* We want the model of the GtkTreeView for char devices */ 00263 gtv=GTK_TREE_VIEW(lookup_widget(window1,"gtv_char")); 00264 model=GTK_LIST_STORE(gtk_tree_view_get_model(gtv)); 00265 00266 gtk_tree_view_set_model(gtv,NULL); 00267 gtk_list_store_clear(model); 00268 lkmonitor_fill_tv(model,gtv,iter,devs.characters->str,TV_DEVS); 00269 gtk_tree_view_set_model(gtv,GTK_TREE_MODEL(model)); 00270 00271 /* We want the model of the GtkTreeView for block devices */ 00272 gtv=GTK_TREE_VIEW(lookup_widget(window1,"gtv_block")); 00273 model=GTK_LIST_STORE(gtk_tree_view_get_model(gtv)); 00274 gtk_tree_view_set_model(gtv,NULL); 00275 gtk_list_store_clear(model); 00276 lkmonitor_fill_tv(model,gtv,iter,devs.blocks->str,TV_DEVS); 00277 gtk_tree_view_set_model(gtv,GTK_TREE_MODEL(model)); 00278 00279 }
void update_fs_info | ( | ) |
Update filesystems information.
Updates filesystems tab
Definition at line 759 of file update.c.
References fs_info::devs, fsinfo, get_fs_info(), lookup_widget(), fs_info::nodevs, and window1.
Referenced by refresh().
00760 { 00761 00762 GtkTextBuffer *gtbuffer; 00763 GtkTextView *gtextv; 00764 int ret; 00765 00766 /* Get information */ 00767 ret = get_fs_info(&fsinfo); 00768 00769 if(ret == -1){ 00770 /* Return values in fsinfo are safe. Don't need do anything here*/ 00771 } 00772 00773 gdk_threads_enter(); 00774 00775 /* Show in the window*/ 00776 00777 gtextv=GTK_TEXT_VIEW(lookup_widget(window1,"gtextv_fs")); 00778 gtbuffer=gtk_text_view_get_buffer(gtextv); 00779 gtk_text_buffer_set_text(gtbuffer,fsinfo.devs->str,fsinfo.devs->len); 00780 00781 00782 gtextv=GTK_TEXT_VIEW(lookup_widget(window1,"gtextv_pfs")); 00783 gtbuffer=gtk_text_view_get_buffer(gtextv); 00784 gtk_text_buffer_set_text(gtbuffer,fsinfo.nodevs->str,fsinfo.nodevs->len); 00785 00786 gdk_threads_leave(); 00787 00788 00789 }
void update_mem | ( | ) |
Update mem pane.
Update gtk widgets for memory panel This function updates labels, progress bar and other widgets to show the most recent values. Before, it calls to get_mem_info to collect data
Definition at line 66 of file update.c.
References mem_info::active, mem_info::buffers, mem_info::cached, mem_info::dirty, mem_info::free, get_mem_info(), mem_info::high_free, mem_info::high_total, mem_info::hugepages_free, mem_info::hugepages_size, mem_info::hugepages_total, mem_info::inactive, lookup_widget(), mem_info::low_free, mem_info::low_total, mem, mem_info::swap_cached, mem_info::swap_free, mem_info::swap_total, mem_info::total, and window1.
Referenced by refresh().
00067 { 00068 00069 GtkLabel *widget; 00070 GtkProgressBar *progreso; 00071 gfloat total, free; 00072 00073 get_mem_info (&mem); 00074 00075 //Get Gtk thread lock 00076 gdk_threads_enter(); 00077 00078 00079 widget = GTK_LABEL(lookup_widget (window1, "lbl_total")); 00080 gtk_label_set_text (widget, (gchar *) mem.total); 00081 00082 widget = GTK_LABEL( lookup_widget (window1, "lbl_free")); 00083 gtk_label_set_text (widget, (gchar *) mem.free); 00084 00085 widget = GTK_LABEL(lookup_widget (window1, "lbl_buffers")); 00086 gtk_label_set_text (widget, (gchar *) mem.buffers); 00087 00088 widget = GTK_LABEL( lookup_widget (window1, "lbl_cached")); 00089 gtk_label_set_text (widget, (gchar *) mem.cached); 00090 00091 widget = GTK_LABEL( lookup_widget (window1, "lbl_swap_cached")); 00092 gtk_label_set_text (widget, (gchar *) mem.swap_cached); 00093 00094 widget = GTK_LABEL( lookup_widget (window1, "lbl_active")); 00095 gtk_label_set_text (widget, (gchar *) mem.active); 00096 00097 widget = GTK_LABEL( lookup_widget (window1, "lbl_inactive")); 00098 gtk_label_set_text (widget, (gchar *) mem.inactive); 00099 00100 widget = GTK_LABEL( lookup_widget (window1, "lbl_dirty")); 00101 gtk_label_set_text (widget, (gchar *) mem.dirty); 00102 00103 widget = GTK_LABEL( lookup_widget (window1, "lbl_hp_total")); 00104 gtk_label_set_text (widget, (gchar *) mem.hugepages_total); 00105 00106 widget = GTK_LABEL( lookup_widget (window1, "lbl_hp_free")); 00107 gtk_label_set_text (widget, (gchar *) mem.hugepages_free); 00108 00109 widget = GTK_LABEL( lookup_widget (window1, "lbl_hp_size")); 00110 gtk_label_set_text (widget, (gchar *) mem.hugepages_size); 00111 00112 widget = GTK_LABEL( lookup_widget (window1, "lbl_high_total")); 00113 gtk_label_set_text (widget, (gchar *) mem.high_total); 00114 00115 widget = GTK_LABEL( lookup_widget (window1, "lbl_high_free")); 00116 gtk_label_set_text (widget, (gchar *) mem.high_free); 00117 00118 widget = GTK_LABEL( lookup_widget (window1, "lbl_low_total")); 00119 gtk_label_set_text (widget, (gchar *) mem.low_total); 00120 00121 00122 widget = GTK_LABEL( lookup_widget (window1, "lbl_low_free")); 00123 gtk_label_set_text (widget, (gchar *) mem.low_free); 00124 00125 widget = GTK_LABEL( lookup_widget (window1, "lbl_swap_total")); 00126 gtk_label_set_text (widget, (gchar *) mem.swap_total); 00127 00128 widget = GTK_LABEL( lookup_widget (window1, "lbl_swap_free")); 00129 gtk_label_set_text (widget, (gchar *) mem.swap_free); 00130 00131 /*Compute percentage of memory use*/ 00132 total = atoi (strtok (mem.total, " ")); 00133 free = atoi (strtok (mem.free, " ")); 00134 00135 g_assert(total!=0); 00136 00137 progreso = GTK_PROGRESS_BAR(lookup_widget (window1, "pb_mem")); 00138 gtk_progress_bar_set_fraction (progreso, 00139 (gfloat) CLAMP(((total - free) / total),0,1)); 00140 00141 00142 /*Compute percentage of swap use. Reuse variables.*/ 00143 00144 00145 total = atoi (strtok (mem.swap_total, " ")); 00146 free = atoi (strtok (mem.swap_free, " ")); 00147 00148 progreso = GTK_PROGRESS_BAR (lookup_widget (window1, "pb_swap")); 00149 00150 if(total!=0){ 00151 gtk_progress_bar_set_fraction (progreso, 00152 (gfloat) CLAMP(((total - free) / total),0,1)); 00153 } 00154 else 00155 gtk_progress_bar_set_text(progreso, (gchar *)_("Not present")); 00156 00157 gdk_threads_leave(); 00158 }
void update_misc | ( | ) |
Update misc pane.
Update misc panel Updates labels and spinbuttons
Definition at line 379 of file update.c.
References acpi, acpi_info::battery, battery_info::cap, battery_info::cap_low, battery_info::cap_warning, stats_info::cpu, stats_info::ctxt, get_acpi_info(), get_stats_info(), battery_info::last_cap, lookup_widget(), battery_info::rem, stats, acpi_info::temp, acpi_info::temp_critical, battery_info::type, and window1.
Referenced by refresh().
00380 { 00381 GtkLabel *lbl; 00382 GtkProgressBar *pb; 00383 gfloat total,free; 00384 static float old_total,old_use; 00385 float use; 00386 gchar percent[4]; 00387 gchar user[10]; 00388 gchar nice[10]; 00389 gchar system[10]; 00390 gchar idle[10]; 00391 gchar iowait[10]; 00392 gchar irq[10]; 00393 gchar softirq[10]; 00394 int ret_stats, ret_acpi; 00395 00396 00397 ret_acpi = get_acpi_info(&acpi); 00398 00399 ret_stats = get_stats_info(&stats); 00400 sscanf(stats.cpu->str,"%s %s %s %s %s %s %s",user,nice,system,idle,iowait,\ 00401 irq,softirq); 00402 gdk_threads_enter(); 00403 00404 if(ret_stats!=-1){ 00405 lbl=GTK_LABEL(lookup_widget(window1,"lbl_user")); 00406 gtk_label_set_text(lbl,user); 00407 lbl=GTK_LABEL(lookup_widget(window1,"lbl_nice")); 00408 gtk_label_set_text(lbl,nice); 00409 lbl=GTK_LABEL(lookup_widget(window1,"lbl_system")); 00410 gtk_label_set_text(lbl,system); 00411 lbl=GTK_LABEL(lookup_widget(window1,"lbl_idle")); 00412 gtk_label_set_text(lbl,idle); 00413 lbl=GTK_LABEL(lookup_widget(window1,"lbl_iowait")); 00414 gtk_label_set_text(lbl,iowait); 00415 lbl=GTK_LABEL(lookup_widget(window1,"lbl_irq")); 00416 gtk_label_set_text(lbl,irq); 00417 lbl=GTK_LABEL(lookup_widget(window1,"lbl_softirq")); 00418 gtk_label_set_text(lbl,softirq); 00419 00420 lbl=GTK_LABEL(lookup_widget(window1,"lbl_context")); 00421 gtk_label_set_text(lbl,stats.ctxt->str); 00422 00423 total=atof(user)+atof(nice)+atof(system)+atof(idle)+atof(iowait)+ 00424 atof(irq)+atof(softirq); 00425 00426 free=atof(idle)+atof(iowait)+atof(irq)+atof(softirq); 00427 use=total-free; 00428 00429 pb=GTK_PROGRESS_BAR(lookup_widget(window1,"pb_cpu")); 00430 gtk_progress_bar_set_fraction(pb,CLAMP((use-old_use)/(total-old_total),0,1)); 00431 sprintf(percent,"%.0f%s",CLAMP((use-old_use),0,100),"%"); 00432 gtk_progress_bar_set_text(pb,percent); 00433 00434 old_use=use; 00435 old_total=total; 00436 00437 } 00438 00439 /*Update ACPI*/ 00440 00441 if(ret_acpi != -1){ 00442 00443 lbl=GTK_LABEL(lookup_widget(window1,"lbl_cap")); 00444 gtk_label_set_text(lbl,acpi.battery.cap->str); 00445 lbl=GTK_LABEL(lookup_widget(window1,"lbl_last_cap")); 00446 gtk_label_set_text(lbl,acpi.battery.last_cap->str); 00447 lbl=GTK_LABEL(lookup_widget(window1,"lbl_cap_warning")); 00448 gtk_label_set_text(lbl,acpi.battery.cap_warning->str); 00449 lbl=GTK_LABEL(lookup_widget(window1,"lbl_cap_low")); 00450 gtk_label_set_text(lbl,acpi.battery.cap_low->str); 00451 lbl=GTK_LABEL(lookup_widget(window1,"lbl_batt_type")); 00452 gtk_label_set_text(lbl,acpi.battery.type->str); 00453 00454 if(strcmp(acpi.temp->str,"")!=0){ 00455 total=atof(acpi.temp_critical->str); 00456 free=atof(acpi.temp->str); 00457 00458 pb=GTK_PROGRESS_BAR(lookup_widget(window1,"pb_temp")); 00459 gtk_progress_bar_set_fraction(pb,free/total); 00460 gtk_progress_bar_set_text(pb,acpi.temp->str); 00461 }else{ 00462 pb=GTK_PROGRESS_BAR(lookup_widget(window1,"pb_temp")); 00463 gtk_progress_bar_set_text(pb,_("Unknown")); 00464 } 00465 00466 if(strcmp(acpi.battery.rem->str,"")!=0){ 00467 total=atof(acpi.battery.cap->str); 00468 free=atof(acpi.battery.rem->str); 00469 00470 pb=GTK_PROGRESS_BAR(lookup_widget(window1,"pb_batt")); 00471 gtk_progress_bar_set_fraction(pb,free/total); 00472 gtk_progress_bar_set_text(pb,acpi.battery.rem->str); 00473 }else{ 00474 pb=GTK_PROGRESS_BAR(lookup_widget(window1,"pb_batt")); 00475 gtk_progress_bar_set_text(pb,_("Unknown")); 00476 } 00477 00478 } 00479 00480 gdk_threads_leave(); 00481 }
void update_modules_info | ( | ) |
Update modules information.
Updates modules tab
Definition at line 795 of file update.c.
References modules_info::contents, get_mod_info(), lkmonitor_fill_tv(), lookup_widget(), modinfo, TV_MODS, and window1.
Referenced by main(), and on_modules_refresh_clicked().
00796 { 00797 00798 GtkListStore *model; 00799 GtkTreeView *gtv; 00800 GtkTreeIter iter; 00801 int ret; 00802 00803 /* Get information */ 00804 ret = get_mod_info(&modinfo); 00805 00806 /* IMPORTANT: 00807 We should not lock with gdk_threads_enter because this function is 00808 called from a callback and callbacks are already running inside a gdk 00809 lock. 00810 In addition, this function is called from main thread before the collector 00811 thread is created, so we don't need to prevent the access from the other 00812 thread. 00813 */ 00814 00815 if(ret != -1){ 00816 /* We want the model of the GtkTreeView */ 00817 gtv=GTK_TREE_VIEW(lookup_widget(window1,"gtv_modules")); 00818 model=GTK_LIST_STORE(gtk_tree_view_get_model(gtv)); 00819 00820 gtk_tree_view_set_model(gtv,NULL); 00821 gtk_list_store_clear(model); 00822 lkmonitor_fill_tv(model,gtv,iter,modinfo.contents->str,TV_MODS); 00823 gtk_tree_view_set_model(gtv,GTK_TREE_MODEL(model)); 00824 } 00825 00826 }
void update_net_info | ( | ) |
Update networking information.
Updates net tab
Definition at line 679 of file update.c.
References net_dev_info::bytes, net_dev_info::compressed, net_dev_info::drop, net_dev_info::errs, net_dev_info::fifo, get_net_info(), lkmonitor_itoa(), lookup_widget(), netinfo, net_dev_info::packets, net_dev_info::r_frame, net_dev_info::r_multicast, net_dev_info::t_carrier, net_dev_info::t_colls, and window1.
Referenced by main(), and refresh().
00680 { 00681 GtkComboBox *gcb_netdevs; 00682 GtkLabel *lbl; 00683 int ret; 00684 00685 /* Get device list */ 00686 gdk_threads_enter(); 00687 gcb_netdevs=GTK_COMBO_BOX(lookup_widget(window1,"cb_net_devs")); 00688 gdk_threads_leave(); 00689 00690 if(GTK_WIDGET_IS_SENSITIVE(gcb_netdevs)){ 00691 /* Get info for the active device */ 00692 ret = get_net_info(&netinfo,gtk_combo_box_get_active(gcb_netdevs)); 00693 00694 if(ret != -1){ 00695 gdk_threads_enter(); 00696 00697 /* Show in the window... */ 00698 00699 /* Bytes */ 00700 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_bytes")); 00701 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.bytes[0])); 00702 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_bytes")); 00703 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.bytes[1])); 00704 00705 /* Packets */ 00706 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_packets")); 00707 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.packets[0])); 00708 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_packets")); 00709 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.packets[1])); 00710 00711 /* Errors */ 00712 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_errors")); 00713 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.errs[0])); 00714 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_errors")); 00715 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.errs[1])); 00716 00717 /* Drop */ 00718 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_drop")); 00719 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.drop[0])); 00720 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_drop")); 00721 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.drop[1])); 00722 00723 /* Fifo */ 00724 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_fifo")); 00725 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.fifo[0])); 00726 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_fifo")); 00727 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.fifo[1])); 00728 00729 /* Compressed */ 00730 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_compressed")); 00731 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.compressed[0])); 00732 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_compressed")); 00733 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.compressed[1])); 00734 00735 00736 /* Receiving specific data */ 00737 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_frame")); 00738 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.r_frame)); 00739 lbl=GTK_LABEL(lookup_widget(window1,"lbl_r_multicast")); 00740 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.r_multicast)); 00741 00742 /* Transmiting specific data */ 00743 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_colls")); 00744 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.t_colls)); 00745 lbl=GTK_LABEL(lookup_widget(window1,"lbl_t_carrier")); 00746 gtk_label_set_text(lbl,(gchar *)lkmonitor_itoa(netinfo.t_carrier)); 00747 00748 gdk_threads_leave(); 00749 00750 } 00751 00752 } 00753 00754 }
void update_process | ( | ) |
Update the process panel.
Update the process tab
Definition at line 580 of file update.c.
References cmdversion, get_loadavg_info(), cmd_ver::loadavg, lookup_widget(), lnode::pid, and window1.
Referenced by refresh().
00581 { 00582 GtkLabel *lbl; 00583 GString *text; 00584 float one,five,fifteen; 00585 int pid,ret; 00586 char executing[15]; /*big enough to read that value*/ 00587 00588 00589 /* First the process list */ 00590 update_process_list(); 00591 00592 /*Now we want to update the load average information*/ 00593 ret = get_loadavg_info(&cmdversion); 00594 00595 sscanf(cmdversion.loadavg->str,"%f %f %f %s %d",&one,&five,&fifteen, executing,&pid); 00596 text=g_string_new(""); 00597 if(ret != -1) 00598 g_string_printf(text,"%.2f %.2f %.2f",one,five,fifteen); 00599 00600 gdk_threads_enter(); 00601 00602 lbl=GTK_LABEL(lookup_widget(window1,"lbl_load")); 00603 gtk_label_set_text(lbl,text->str); 00604 00605 lbl=GTK_LABEL(lookup_widget(window1,"lbl_entities")); 00606 gtk_label_set_text(lbl,executing); 00607 00608 gdk_threads_leave(); 00609 00610 }
void update_settings | ( | ) |
Update settings pane.
Update gtk widgets for settings panel Called from a callback
Definition at line 284 of file update.c.
References settings_info::domain, settings_info::fdasig, settings_info::fdfreed, settings_info::fdmax, get_settings_info(), settings_info::host, settings_info::inasig, settings_info::inmax, lookup_widget(), settings_info::max_opcall, settings_info::max_seminset, settings_info::max_semsets, settings_info::max_semsys, settings_info::page_max, settings_info::posix_mpq, settings_info::posix_mq, settings_info::posix_ms, settings_info::seg_max, settings_info::seg_size, settings, settings_info::threads, and window1.
Referenced by main(), on_btn_load_clicked(), and on_btn_write_clicked().
00285 { 00286 GtkSpinButton *spb; 00287 GtkLabel *lbl; 00288 GtkEntry *ent; 00289 gchar str[10]; /* For numeric conversion. */ 00290 00291 if(get_settings_info(&settings)==1){ 00292 /* I leave this section just in case. Should the code in get_settings_info 00293 doesn't find the date, default values are set. We can safely update 00294 the gtk widgets. 00295 */ 00296 } 00297 00298 /* IMPORTANT: 00299 We should not lock with gdk_threads_enter because this function is 00300 called from a callback and callbacks are already running inside a gdk 00301 lock. 00302 In addition, this function is called from main thread before the collector 00303 thread is created, so we don't need to prevent the access from the other 00304 thread. 00305 */ 00306 00307 /* Identification */ 00308 ent=GTK_ENTRY(lookup_widget(window1,"ent_hostname")); 00309 gtk_entry_set_text(ent,settings.host->str); 00310 00311 ent=GTK_ENTRY(lookup_widget(window1,"ent_domainname")); 00312 gtk_entry_set_text(ent,settings.domain->str); 00313 00314 00315 /* threads */ 00316 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_maxthreads")); 00317 gtk_spin_button_set_value(spb,(gdouble)settings.threads); 00318 00319 /* files */ 00320 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_fdmax")); 00321 gtk_spin_button_set_value(spb,(gdouble)settings.fdmax); 00322 00323 lbl=GTK_LABEL(lookup_widget(window1,"lbl_inmax")); 00324 sprintf(str,"%d",settings.inmax); 00325 gtk_label_set_text(lbl,str); 00326 00327 lbl=GTK_LABEL(lookup_widget(window1,"lbl_fda")); 00328 sprintf(str,"%d",settings.fdasig); 00329 gtk_label_set_text(lbl,str); 00330 00331 lbl=GTK_LABEL(lookup_widget(window1,"lbl_ufd")); 00332 sprintf(str,"%d",settings.fdfreed); 00333 gtk_label_set_text(lbl,str); 00334 00335 lbl=GTK_LABEL(lookup_widget(window1,"lbl_ina")); 00336 sprintf(str,"%d",settings.inasig); 00337 gtk_label_set_text(lbl,str); 00338 00339 /* RT POSIX Signals */ 00340 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_mq")); 00341 gtk_spin_button_set_value(spb,(gdouble)settings.posix_mq); 00342 00343 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_max_mpq")); 00344 gtk_spin_button_set_value(spb,(gdouble)settings.posix_mpq); 00345 00346 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_max_ms")); 00347 gtk_spin_button_set_value(spb,(gdouble)settings.posix_ms); 00348 00349 /* Shared Memory */ 00350 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_max_pages")); 00351 gtk_spin_button_set_value(spb,(gdouble)settings.page_max); 00352 00353 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_max_segs")); 00354 gtk_spin_button_set_value(spb,(gdouble)settings.seg_max); 00355 00356 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_seg_size")); 00357 gtk_spin_button_set_value(spb,(gdouble)settings.seg_size); 00358 00359 /* Semaphores */ 00360 00361 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_sem_per_id")); 00362 gtk_spin_button_set_value(spb,(gdouble)settings.max_seminset); 00363 00364 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_sem_val")); 00365 gtk_spin_button_set_value(spb,(gdouble)settings.max_semsys); 00366 00367 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_ops")); 00368 gtk_spin_button_set_value(spb,(gdouble)settings.max_opcall); 00369 00370 spb=GTK_SPIN_BUTTON(lookup_widget(window1,"spb_sem_id")); 00371 gtk_spin_button_set_value(spb,(gdouble)settings.max_semsets); 00372 00373 00374 }