#include <glib.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/time.h>
#include <time.h>
#include "entity.h"
static void
render_args (ENode * node)
{
int i;
int argc;
gchar **argv;
char str[256];
char *dir;
argc = entity_get_argc ();
argv = entity_get_argv ();
sprintf (str, "%d", argc);
enode_attrib_str (node, "argc", str);
dir = econfig_get_attr ("entity-startup-dir");
enode_attrib_str (node, "startup-directory", dir);
for (i = 0; i < argc; i++) {
ENode *new_node = enode_new_child (node, "arg", NULL);
enode_attrib_str (new_node, "name", argv[i]);
}
}
void
system_args_renderer_register (void)
{
Element *element;
ElementAttr *e_attr;
element = g_new0 (Element, 1);
element->render_func = render_args;
element->tag = "system-args";
element->description = "Get arguments passed to entity on command line.";
element_register (element);
e_attr = g_new0 (ElementAttr, 1);
e_attr->attribute = "argc";
e_attr->description = "Argument count.";
e_attr->value_desc = "integer";
element_register_attrib (element, e_attr);
e_attr = g_new0 (ElementAttr, 1);
e_attr->attribute = "startup-directory";
e_attr->description = "A string representing the current directory.";
e_attr->value_desc = "string";
element_register_attrib (element, e_attr);
}
syntax highlighted by Code2HTML, v. 0.9.1