/* -*- mode: c; c-basic-offset: 4; tab-width: 4; indent-tabs-mode: t -*-
+ * vim: ts=4 sw=4 noet ai cindent syntax=c
*
* Conky, a system monitor, based on torsmo
*
* Please see COPYING for details
*
* Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen
- * Copyright (c) 2005-2009 Brenden Matthews, Philip Kovacs, et. al.
+ * Copyright (c) 2005-2010 Brenden Matthews, Philip Kovacs, et. al.
* (see AUTHORS)
* All rights reserved.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
- * vim: ts=4 sw=4 noet ai cindent syntax=c
- *
*/
#ifndef _conky_h_
* in every code file optionally using the feature
*/
+/* forward define to make gcc happy */
+struct text_object;
+
#ifdef AUDACIOUS
#include "audacious.h"
#endif
#include "mpd.h"
#endif
-#ifdef NVIDIA
-#include "nvidia.h"
-#endif
-
#ifdef HAVE_CURL
#include "ccurl_thread.h"
#endif /* HAVE_CURL */
#include "apcupsd.h"
#endif
-#ifdef NCURSES
-#include <ncurses.h>
-#endif
-
/* sony support */
#include "sony.h"
* one doesn't know what to choose. Defaults to 256. */
extern unsigned int text_buffer_size;
-struct entropy_s {
- unsigned int entropy_avail;
- unsigned int poolsize;
-};
-
struct usr_info {
char *names;
char *times;
+ char *ctime;
char *terms;
int number;
};
-struct gateway_info {
- char *iface;
- char *ip;
- int count;
-};
-
#ifdef X11
struct monitor_info {
int number;
void set_updatereset(int);
int get_updatereset(void);
+int percent_print(char *, int, unsigned);
+void human_readable(long long, char *, int);
+
struct conftree {
char* string;
struct conftree* horz_next;
#define MAX_TEMPLATES 10
char **get_templates(void);
-enum {
- INFO_CPU = 0,
- INFO_MAIL = 1,
- INFO_MEM = 2,
- INFO_NET = 3,
- INFO_PROCS = 4,
- INFO_RUN_PROCS = 5,
- INFO_UPTIME = 6,
- INFO_BUFFERS = 7,
- INFO_FS = 8,
- INFO_SYSFS = 9,
- INFO_MIXER = 10,
- INFO_LOADAVG = 11,
- INFO_UNAME = 12,
- INFO_FREQ = 13,
-#ifdef MPD
- INFO_MPD = 14,
-#endif
- INFO_TOP = 15,
- INFO_WIFI = 16,
- INFO_DISKIO = 17,
- INFO_I8K = 18,
-#ifdef TCP_PORT_MONITOR
- INFO_TCP_PORT_MONITOR = 19,
-#endif
-#ifdef AUDACIOUS
- INFO_AUDACIOUS = 20,
-#endif
-#ifdef BMPX
- INFO_BMPX = 21,
-#endif
-#ifdef XMMS2
- INFO_XMMS2 = 22,
-#endif
- INFO_ENTROPY = 23,
-#ifdef IBM
- INFO_SMAPI = 25,
-#endif
- INFO_USERS = 26,
- INFO_GW = 27,
-#ifdef NVIDIA
- INFO_NVIDIA = 28,
-#endif
-#ifdef X11
- INFO_X11 = 29,
-#endif
- INFO_DNS = 30,
-#ifdef MOC
- INFO_MOC = 31,
-#endif
-#ifdef APCUPSD
- INFO_APCUPSD = 32,
-#endif
-#ifdef WEATHER
- INFO_WEATHER = 33,
-#endif
-};
-
/* get_battery_stuff() item selector
* needed by conky.c, linux.c and freebsd.c */
enum {
unsigned short procs;
unsigned short run_procs;
+ unsigned short threads;
+ unsigned short run_threads;
float *cpu_usage;
/* struct cpu_stat cpu_summed; what the hell is this? */
- unsigned int cpu_count;
+ int cpu_count;
int cpu_avg_samples;
int net_avg_samples;
float loadavg[3];
- struct mail_s *mail;
- int mail_running;
#ifdef XMMS2
struct xmms2_s xmms2;
#endif
struct bmpx_s bmpx;
#endif
struct usr_info users;
- struct gateway_info gw_info;
- struct dns_data nameserver_info;
struct process *cpu[10];
struct process *memu[10];
struct process *time[10];
#endif
struct process *first_process;
unsigned long looped;
- struct entropy_s entropy;
double music_player_interval;
#ifdef X11
/* defined in users.c */
void update_users(void);
+void update_user_time(char *tty);
/* defined in conky.c */
extern double current_update_time, last_update_time, update_interval;
extern int inotify_fd;
/* defined in conky.c
- * evaluates 'text' and places the result in 'buffer'
+ * evaluates 'text' and places the result in 'p' of max length 'p_max_size'
*/
-void evaluate(const char *text, char *buffer);
+void evaluate(const char *text, char *p, int p_max_size);
/* maximum size of config TEXT buffer, i.e. below TEXT line. */
extern unsigned int max_user_text;
/* path to config file */
extern char *current_config;
-/* just a wrapper for read_exec() defined in conky.c */
-void do_read_exec(const char *data, char *buf, const int size);
-
#ifdef X11
#define TO_X 1
#endif /* X11 */
#define UNUSED(a) (void)a
#define UNUSED_ATTR __attribute__ ((unused))
+void parse_conky_vars(struct text_object *, const char *,
+ char *, int, struct information *);
+
+void generate_text_internal(char *, int, struct text_object,
+ struct information *);
#endif /* _conky_h_ */