Compare commits
3 Commits
wip/sysinf
...
pr-1320
Author | SHA1 | Date | |
---|---|---|---|
ca2b4d498c | |||
085d9c368c | |||
fb422732f2 |
@ -26,7 +26,6 @@ char *sysinfo_backend_get_disk(void);
|
|||||||
char *sysinfo_backend_get_memory(void);
|
char *sysinfo_backend_get_memory(void);
|
||||||
char *sysinfo_backend_get_cpu(void);
|
char *sysinfo_backend_get_cpu(void);
|
||||||
char *sysinfo_backend_get_gpu(void);
|
char *sysinfo_backend_get_gpu(void);
|
||||||
char *sysinfo_backend_get_resolution (void);
|
|
||||||
char *sysinfo_backend_get_sound(void);
|
char *sysinfo_backend_get_sound(void);
|
||||||
char *sysinfo_backend_get_uptime(void);
|
char *sysinfo_backend_get_uptime(void);
|
||||||
char *sysinfo_backend_get_network(void);
|
char *sysinfo_backend_get_network(void);
|
||||||
|
@ -64,7 +64,6 @@ static hwinfo hwinfos[] = {
|
|||||||
{"memory", "Memory", sysinfo_backend_get_memory},
|
{"memory", "Memory", sysinfo_backend_get_memory},
|
||||||
{"storage", "Storage", sysinfo_backend_get_disk},
|
{"storage", "Storage", sysinfo_backend_get_disk},
|
||||||
{"vga", "VGA", sysinfo_backend_get_gpu},
|
{"vga", "VGA", sysinfo_backend_get_gpu},
|
||||||
{"display", "Display", sysinfo_backend_get_resolution, TRUE},
|
|
||||||
{"sound", "Sound", sysinfo_backend_get_sound, TRUE},
|
{"sound", "Sound", sysinfo_backend_get_sound, TRUE},
|
||||||
{"ethernet", "Ethernet", sysinfo_backend_get_network, TRUE},
|
{"ethernet", "Ethernet", sysinfo_backend_get_network, TRUE},
|
||||||
{"uptime", "Uptime", sysinfo_backend_get_uptime},
|
{"uptime", "Uptime", sysinfo_backend_get_uptime},
|
||||||
|
@ -42,7 +42,6 @@ typedef enum
|
|||||||
QUERY_WMI_CPU,
|
QUERY_WMI_CPU,
|
||||||
QUERY_WMI_VGA,
|
QUERY_WMI_VGA,
|
||||||
QUERY_WMI_HDD,
|
QUERY_WMI_HDD,
|
||||||
QUERY_WMI_RES,
|
|
||||||
} QueryWmiType;
|
} QueryWmiType;
|
||||||
|
|
||||||
void print_info (void);
|
void print_info (void);
|
||||||
@ -50,7 +49,6 @@ int get_cpu_arch (void);
|
|||||||
char *query_wmi (QueryWmiType mode);
|
char *query_wmi (QueryWmiType mode);
|
||||||
char *read_os_name (IWbemClassObject *object);
|
char *read_os_name (IWbemClassObject *object);
|
||||||
char *read_cpu_info (IWbemClassObject *object);
|
char *read_cpu_info (IWbemClassObject *object);
|
||||||
char *read_res_info (IWbemClassObject *object);
|
|
||||||
char *read_vga_name (IWbemClassObject *object);
|
char *read_vga_name (IWbemClassObject *object);
|
||||||
|
|
||||||
guint64 hdd_capacity;
|
guint64 hdd_capacity;
|
||||||
@ -119,12 +117,6 @@ sysinfo_backend_get_gpu (void)
|
|||||||
return g_strdup (vga_name);
|
return g_strdup (vga_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
|
||||||
sysinfo_backend_get_resolution (void)
|
|
||||||
{
|
|
||||||
return query_wmi (QUERY_WMI_RES);
|
|
||||||
}
|
|
||||||
|
|
||||||
char *
|
char *
|
||||||
sysinfo_backend_get_os (void)
|
sysinfo_backend_get_os (void)
|
||||||
{
|
{
|
||||||
@ -211,9 +203,6 @@ static char *query_wmi (QueryWmiType type)
|
|||||||
case QUERY_WMI_HDD:
|
case QUERY_WMI_HDD:
|
||||||
query = SysAllocString (L"SELECT Name, Capacity, FreeSpace FROM Win32_Volume");
|
query = SysAllocString (L"SELECT Name, Capacity, FreeSpace FROM Win32_Volume");
|
||||||
break;
|
break;
|
||||||
case QUERY_WMI_RES:
|
|
||||||
query = SysAllocString (L"SELECT CurrentHorizontalResolution, CurrentVerticalResolution, CurrentRefreshRate FROM Win32_VideoController");
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
goto release_queryLanguageName;
|
goto release_queryLanguageName;
|
||||||
}
|
}
|
||||||
@ -256,10 +245,6 @@ static char *query_wmi (QueryWmiType type)
|
|||||||
line = read_hdd_info (object);
|
line = read_hdd_info (object);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case QUERY_WMI_RES:
|
|
||||||
line = read_res_info (object);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -405,43 +390,7 @@ static char *read_vga_name (IWbemClassObject *object)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return g_strchomp (name_utf8);
|
return name_utf8;
|
||||||
}
|
|
||||||
|
|
||||||
static char *read_res_info (IWbemClassObject *object)
|
|
||||||
{
|
|
||||||
HRESULT hr;
|
|
||||||
VARIANT variant;
|
|
||||||
guint64 xres, yres, rate;
|
|
||||||
|
|
||||||
hr = object->lpVtbl->Get (object, L"CurrentHorizontalResolution", 0, &variant, NULL, NULL);
|
|
||||||
if (FAILED (hr))
|
|
||||||
{
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
xres = variant_to_uint64 (&variant);
|
|
||||||
VariantClear (&variant);
|
|
||||||
|
|
||||||
hr = object->lpVtbl->Get (object, L"CurrentVerticalResolution", 0, &variant, NULL, NULL);
|
|
||||||
if (FAILED (hr))
|
|
||||||
{
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
yres = variant_to_uint64 (&variant);
|
|
||||||
VariantClear (&variant);
|
|
||||||
|
|
||||||
hr = object->lpVtbl->Get (object, L"CurrentRefreshRate", 0, &variant, NULL, NULL);
|
|
||||||
if (FAILED (hr))
|
|
||||||
{
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
rate = variant_to_uint64 (&variant);
|
|
||||||
VariantClear (&variant);
|
|
||||||
|
|
||||||
return g_strdup_printf ("%"G_GUINT64_FORMAT"x%"G_GUINT64_FORMAT" (%"G_GUINT64_FORMAT"Hz)", xres, yres, rate);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *read_hdd_info (IWbemClassObject *object)
|
static char *read_hdd_info (IWbemClassObject *object)
|
||||||
@ -532,9 +481,6 @@ static guint64 variant_to_uint64 (VARIANT *variant)
|
|||||||
{
|
{
|
||||||
switch (V_VT (variant))
|
switch (V_VT (variant))
|
||||||
{
|
{
|
||||||
case VT_I4:
|
|
||||||
return (guint64)MAX(variant->intVal, 0);
|
|
||||||
|
|
||||||
case VT_UI8:
|
case VT_UI8:
|
||||||
return variant->ullVal;
|
return variant->ullVal;
|
||||||
|
|
||||||
|
@ -257,35 +257,39 @@ lag_check (void)
|
|||||||
GSList *list = serv_list;
|
GSList *list = serv_list;
|
||||||
unsigned long tim;
|
unsigned long tim;
|
||||||
char tbuf[128];
|
char tbuf[128];
|
||||||
time_t now = time (0);
|
time_t now = time(NULL);
|
||||||
time_t lag;
|
|
||||||
|
|
||||||
tim = make_ping_time ();
|
tim = make_ping_time ();
|
||||||
|
|
||||||
|
time_t ping_interval = 15;
|
||||||
|
time_t ping_timeout = 30;
|
||||||
|
|
||||||
|
if (prefs.hex_net_ping_timeout != 0)
|
||||||
|
{
|
||||||
|
ping_timeout = prefs.hex_net_ping_timeout;
|
||||||
|
ping_interval = ping_timeout/2;
|
||||||
|
}
|
||||||
|
|
||||||
while (list)
|
while (list)
|
||||||
{
|
{
|
||||||
serv = list->data;
|
serv = list->data;
|
||||||
if (serv->connected && serv->end_of_motd)
|
if (serv->connected && serv->end_of_motd)
|
||||||
{
|
{
|
||||||
lag = now - serv->ping_recv;
|
if(!serv->lag_sent && (now - serv->ping_recv) > ping_interval)
|
||||||
if (prefs.hex_net_ping_timeout != 0 && lag > prefs.hex_net_ping_timeout && lag > 0)
|
|
||||||
{
|
|
||||||
sprintf (tbuf, "%" G_GINT64_FORMAT, (gint64) lag);
|
|
||||||
EMIT_SIGNAL (XP_TE_PINGTIMEOUT, serv->server_session, tbuf, NULL,
|
|
||||||
NULL, NULL, 0);
|
|
||||||
if (prefs.hex_net_auto_reconnect)
|
|
||||||
serv->auto_reconnect (serv, FALSE, -1);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
g_snprintf (tbuf, sizeof (tbuf), "LAG%lu", tim);
|
g_snprintf (tbuf, sizeof (tbuf), "LAG%lu", tim);
|
||||||
serv->p_ping (serv, "", tbuf);
|
serv->p_ping (serv, "", tbuf);
|
||||||
|
serv->lag_sent = tim;
|
||||||
|
fe_set_lag (serv, -1);
|
||||||
|
}
|
||||||
|
|
||||||
if (!serv->lag_sent)
|
if (prefs.hex_net_ping_timeout != 0 && (now - serv->socket_recv) > ping_timeout)
|
||||||
{
|
{
|
||||||
serv->lag_sent = tim;
|
sprintf (tbuf, "%" G_GINT64_FORMAT, (gint64) now - serv->socket_recv);
|
||||||
fe_set_lag (serv, -1);
|
EMIT_SIGNAL (XP_TE_PINGTIMEOUT, serv->server_session, tbuf, NULL,
|
||||||
}
|
NULL, NULL, 0);
|
||||||
|
if (prefs.hex_net_auto_reconnect)
|
||||||
|
serv->auto_reconnect (serv, FALSE, -1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
list = list->next;
|
list = list->next;
|
||||||
@ -366,10 +370,11 @@ hexchat_misc_checks (void) /* this gets called every 1/2 second */
|
|||||||
if (count % 2)
|
if (count % 2)
|
||||||
dcc_check_timeouts (); /* every 1 second */
|
dcc_check_timeouts (); /* every 1 second */
|
||||||
|
|
||||||
if (count >= 60) /* every 30 seconds */
|
if (count % 2) /* every 1 second*/
|
||||||
|
lag_check ();
|
||||||
|
|
||||||
|
if (count > 3600)
|
||||||
{
|
{
|
||||||
if (prefs.hex_gui_lagometer)
|
|
||||||
lag_check ();
|
|
||||||
count = 0;
|
count = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -530,6 +530,7 @@ typedef struct server
|
|||||||
/*time_t connect_time;*/ /* when did it connect? */
|
/*time_t connect_time;*/ /* when did it connect? */
|
||||||
unsigned long lag_sent; /* we are still waiting for this ping response*/
|
unsigned long lag_sent; /* we are still waiting for this ping response*/
|
||||||
time_t ping_recv; /* when we last got a ping reply */
|
time_t ping_recv; /* when we last got a ping reply */
|
||||||
|
time_t socket_recv; /* when we last received something from the socket */
|
||||||
time_t away_time; /* when we were marked away */
|
time_t away_time; /* when we were marked away */
|
||||||
|
|
||||||
char *encoding;
|
char *encoding;
|
||||||
|
@ -314,6 +314,8 @@ server_read (GIOChannel *source, GIOCondition condition, server *serv)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
serv->socket_recv = time (NULL);
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
|
|
||||||
lbuf[len] = 0;
|
lbuf[len] = 0;
|
||||||
|
@ -127,6 +127,9 @@ EndProject
|
|||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "external", "external", "{021EC1D0-FF67-4700-9AB2-EAABF1159C09}"
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "external", "external", "{021EC1D0-FF67-4700-9AB2-EAABF1159C09}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libenchant_win8", "..\src\libenchant_win8\libenchant_win8.vcxproj", "{BF0EBC16-68AD-4CD1-864C-5B56836EBE2A}"
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libenchant_win8", "..\src\libenchant_win8\libenchant_win8.vcxproj", "{BF0EBC16-68AD-4CD1-864C-5B56836EBE2A}"
|
||||||
|
ProjectSection(ProjectDependencies) = postProject
|
||||||
|
{87554B59-006C-4D94-9714-897B27067BA3} = {87554B59-006C-4D94-9714-897B27067BA3}
|
||||||
|
EndProjectSection
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Reference in New Issue
Block a user