GRM Reference

Plot Functions

Functions

void grm_finalize(void)
int grm_clear(void)
void grm_dump_graphics_tree(FILE *f)
char *grm_dump_graphics_tree_str(void)
unsigned int grm_max_plotid(void)
int grm_merge(const grm_args_t *args)
int grm_merge_extended(const grm_args_t *args, int hold, const char *identificator)
int grm_merge_hold(const grm_args_t *args)
int grm_merge_named(const grm_args_t *args, const char *identificator)
int grm_plot(const grm_args_t *args)
int grm_render(void)
int grm_process_tree(void)
int grm_export(const char *file_path)
int grm_switch(unsigned int id)
int grm_load_graphics_tree(FILE *file)

Argument Container Functions

Defines

grm_args_first_value(args, keyword, first_value_format, first_value, array_length)

Typedefs

typedef struct _arg_private_t arg_private_t
typedef struct _args_node_t args_node_t
typedef struct _grm_args_t grm_args_t
typedef grm_args_t *grm_args_ptr_t
typedef struct _args_iterator_private_t args_iterator_private_t
typedef struct _args_iterator_t grm_args_iterator_t
typedef struct _args_value_iterator_private_t args_value_iterator_private_t
typedef struct _grm_args_value_iterator_t grm_args_value_iterator_t

Functions

grm_args_value_iterator_t *grm_arg_value_iter(const arg_t *arg)
grm_args_t *grm_args_new(void)
void grm_args_delete(grm_args_t *args)
int grm_args_push(grm_args_t *args, const char *key, const char *value_format, ...)
int grm_args_push_buf(grm_args_t *args, const char *key, const char *value_format, const void *buffer, int apply_padding)
int grm_args_contains(const grm_args_t *args, const char *keyword)
int grm_args_first_value(const grm_args_t *args, const char *keyword, const char *first_value_format, void *first_value, unsigned int *array_length)
int grm_args_values(const grm_args_t *args, const char *keyword, const char *expected_format, ...)
void grm_args_clear(grm_args_t *args)
void grm_args_remove(grm_args_t *args, const char *key)
grm_args_iterator_t *grm_args_iter(const grm_args_t *args)
grm_args_ptr_t grm_length(double value, const char *unit)
struct arg_t

Public Members

const char *key
void *value_ptr
const char *value_format
arg_private_t *priv
struct _args_iterator_t

Public Members

arg_t *(*next)(struct _args_iterator_t*)
arg_t *arg
args_iterator_private_t *priv
struct _grm_args_value_iterator_t

Public Members

void *(*next)(struct _grm_args_value_iterator_t*)
void *value_ptr
char format
int is_array
size_t array_length
args_value_iterator_private_t *priv

Argument Output Functions

Functions

void grm_dump(const grm_args_t *args, FILE *f)
void grm_dump_json(const grm_args_t *args, FILE *f)
char *grm_dump_json_str(void)

Base64 Functions

Functions

char *grm_base64_decode(char *dst, const char *src, size_t *dst_len, int *was_successful)
char *grm_base64_encode(char *dst, const char *src, size_t src_len, int *was_successful)

Event Functions

Typedefs

typedef void (*grm_event_callback_t)(const grm_event_t*)

Enums

enum grm_event_type_t

Values:

enumerator GRM_EVENT_NEW_PLOT
enumerator GRM_EVENT_UPDATE_PLOT
enumerator GRM_EVENT_SIZE
enumerator GRM_EVENT_MERGE_END
enumerator GRM_EVENT_REQUEST
enumerator GRM_EVENT_INTEGRAL_UPDATE
enumerator _GRM_EVENT_TYPE_COUNT

Functions

int grm_register(grm_event_type_t type, grm_event_callback_t callback)
int grm_unregister(grm_event_type_t type)
struct grm_new_plot_event_t

Public Members

grm_event_type_t type
int plot_id
struct grm_update_plot_event_t

Public Members

grm_event_type_t type
int plot_id
struct grm_size_event_t

Public Members

grm_event_type_t type
int plot_id
int width
int height
struct grm_merge_end_event_t

Public Members

grm_event_type_t type
const char *identificator
struct grm_request_event_t

Public Members

grm_event_type_t type
const char *request_string
struct grm_integral_update_event_t

Public Members

grm_event_type_t type
double int_lim_low
double int_lim_high
union grm_event_t

Public Members

grm_new_plot_event_t new_plot_event
grm_size_event_t size_event
grm_update_plot_event_t update_plot_event
grm_merge_end_event_t merge_end_event
grm_request_event_t request_event
grm_integral_update_event_t integral_update_event

Import Functions

Typedefs

typedef struct _grm_file_args_t grm_file_args_t

Functions

int grm_interactive_plot_from_file(grm_args_t *args, int argc, char **argv)
int grm_plot_from_file(int argc, char **argv)

Interaction Functions

Functions

int grm_input(const grm_args_t *input_args)
int grm_get_box(const int x1, const int y1, const int x2, const int y2, const int keep_aspect_ratio, int *x, int *y, int *w, int *h)
int grm_is3d(const int x, const int y)
grm_tooltip_info_t *grm_get_tooltip(int mouse_x, int mouse_y)
grm_tooltip_info_t **grm_get_tooltips_x(int mouse_x, int mouse_y, unsigned int *array_length)
grm_accumulated_tooltip_info_t *grm_get_accumulated_tooltip_x(int mouse_x, int mouse_y)
int grm_get_hover_mode(int mouse_x, int mouse_y, int disable_movable_xform)
struct grm_tooltip_info_t

Public Members

double x
double y
int x_px
int y_px
char *xlabel
char *ylabel
char *label
struct grm_accumulated_tooltip_info_t

Public Members

int n
double x
double *y
int x_px
int y_px
char *xlabel
char **ylabels

Networking Functions

Defines

GRM_SENDER
GRM_RECEIVER

Functions

void *grm_open(int is_receiver, const char *name, unsigned int id, const char *(*custom_recv)(const char*, unsigned int), int (*custom_send)(const char*, unsigned int, const char*))
grm_args_t *grm_recv(const void *p, grm_args_t *args)
int grm_send(const void *p, const char *data_desc, ...)
int grm_send_buf(const void *p, const char *data_desc, const void *buffer, int apply_padding)
int grm_send_ref(const void *p, const char *key, char format, const void *ref, int len)
int grm_send_args(const void *p, const grm_args_t *args)
void grm_close(const void *p)

Util Functions

Defines

EXPORT