## empathy-utils empathy-utils |

## Synopsis

    #define             EMPATHY_GET_PRIV                    (obj,type)
    #define             EMP_STR_EMPTY                       (x)
    void                empathy_init                        (void);
    gchar *             empathy_substring                   (const gchar *str,
                                                             gint start,
                                                             gint end);
    gint                empathy_strcasecmp                  (const gchar *s1,
                                                             const gchar *s2);
    gint                empathy_strncasecmp                 (const gchar *s1,
                                                             const gchar *s2,
                                                             gsize n);
    gboolean            empathy_xml_validate                (xmlDoc *doc,
                                                             const gchar *dtd_filename);
    xmlNodePtr          empathy_xml_node_get_child          (xmlNodePtr node,
                                                             const gchar *child_name);
    xmlChar *           empathy_xml_node_get_child_content  (xmlNodePtr node,
                                                             const gchar *child_name);
    xmlNodePtr          empathy_xml_node_find_child_prop_value
                                                            (xmlNodePtr node,
                                                             const gchar *prop_name,
                                                             const gchar *prop_value);
    const gchar *       empathy_presence_get_default_message
                                                            (TpConnectionPresenceType presence);
    const gchar *       empathy_presence_to_str             (TpConnectionPresenceType presence);
    TpConnectionPresenceType  empathy_presence_from_str     (const gchar *str);
    gchar *             empathy_file_lookup                 (const gchar *filename,
                                                             const gchar *subdir);
    gboolean            empathy_proxy_equal                 (gconstpointer a,
                                                             gconstpointer b);
    guint               empathy_proxy_hash                  (gconstpointer key);
    gboolean            empathy_check_available_state       (void);
    gint                empathy_uint_compare                (gconstpointer a,
                                                             gconstpointer b);
    gchar *             empathy_protocol_icon_name          (const gchar *protocol);
    const gchar *       empathy_protocol_name_to_display_name
                                                            (const gchar *proto_name);
    #define             EMPATHY_ARRAY_TYPE_OBJECT
    GType               empathy_type_dbus_ao                (void);
    void                empathy_signal_connect_weak         (gpointer instance,
                                                             const gchar *detailed_signal,
                                                             GCallback c_handler,
                                                             GObject *user_data);

## Description

## Details

### EMPATHY_GET_PRIV()

    #define EMPATHY_GET_PRIV(obj,type) ((type##Priv *) ((type *) obj)->priv)

`obj` : |
`type` : |

### EMP_STR_EMPTY()

    #define EMP_STR_EMPTY(x) ((x) == NULL || (x)[0] == '\0')

`x` : |

### empathy_init ()

    void                empathy_init                        (void);

### empathy_substring ()

    gchar *             empathy_substring                   (const gchar *str,
                                                             gint start,
                                                             gint end);

`str` : |
`start` : |
`end` : |
Returns : |

### empathy_strcasecmp ()

    gint                empathy_strcasecmp                  (const gchar *s1,
                                                             const gchar *s2);

`s1` : |
`s2` : |
Returns : |

### empathy_strncasecmp ()

    gint                empathy_strncasecmp                 (const gchar *s1,
                                                             const gchar *s2,
                                                             gsize n);

`s1` : |
`s2` : |
`n` : |
Returns : |

### empathy_xml_validate ()

    gboolean            empathy_xml_validate                (xmlDoc *doc,
                                                             const gchar *dtd_filename);

`doc` : |
`dtd_filename` : |
Returns : |

### empathy_xml_node_get_child ()

    xmlNodePtr          empathy_xml_node_get_child          (xmlNodePtr node,
                                                             const gchar *child_name);

`node` : |
`child_name` : |
Returns : |

### empathy_xml_node_get_child_content ()

    xmlChar *           empathy_xml_node_get_child_content  (xmlNodePtr node,
                                                             const gchar *child_name);

`node` : |
`child_name` : |
Returns : |

### empathy_xml_node_find_child_prop_value ()

    xmlNodePtr          empathy_xml_node_find_child_prop_value
                                                            (xmlNodePtr node,
                                                             const gchar *prop_name,
                                                             const gchar *prop_value);

`node` : |
`prop_name` : |
`prop_value` : |
Returns : |

### empathy_presence_get_default_message ()

    const gchar *       empathy_presence_get_default_message
                                                            (TpConnectionPresenceType presence);

`presence` : |
Returns : |

### empathy_presence_to_str ()

    const gchar *       empathy_presence_to_str             (TpConnectionPresenceType presence);

`presence` : |
Returns : |

### empathy_presence_from_str ()

    TpConnectionPresenceType  empathy_presence_from_str     (const gchar *str);

`str` : |
Returns : |

### empathy_file_lookup ()

    gchar *             empathy_file_lookup                 (const gchar *filename,
                                                             const gchar *subdir);

`filename` : |
`subdir` : |
Returns : |

### empathy_proxy_equal ()

    gboolean            empathy_proxy_equal                 (gconstpointer a,
                                                             gconstpointer b);

`a` : |
`b` : |
Returns : |

### empathy_proxy_hash ()

    guint               empathy_proxy_hash                  (gconstpointer key);

`key` : |
Returns : |

### empathy_check_available_state ()

    gboolean            empathy_check_available_state       (void);

Returns : |

### empathy_uint_compare ()

    gint                empathy_uint_compare                (gconstpointer a,
                                                             gconstpointer b);

`a` : |
`b` : |
Returns : |

### empathy_protocol_icon_name ()

    gchar *             empathy_protocol_icon_name          (const gchar *protocol);

`protocol` : |
Returns : |

### empathy_protocol_name_to_display_name ()

    const gchar *       empathy_protocol_name_to_display_name
                                                            (const gchar *proto_name);

`proto_name` : |
Returns : |

### EMPATHY_ARRAY_TYPE_OBJECT

    #define EMPATHY_ARRAY_TYPE_OBJECT (empathy_type_dbus_ao ())

### empathy_type_dbus_ao ()

    GType               empathy_type_dbus_ao                (void);

Returns : |

### empathy_signal_connect_weak ()

    void                empathy_signal_connect_weak         (gpointer instance,
                                                             const gchar *detailed_signal,
                                                             GCallback c_handler,
                                                             GObject *user_data);

Connects a GCallback function to a signal for a particular object, as if with `g_signal_connect()`. Additionally, arranges for the signal handler to be disconnected if `user_data` is destroyed.

This is intended to be a convenient way for objects to use themselves as user_data for callbacks without having to explicitly disconnect all the handlers in their finalizers.

`instance` : | the instance to connect to.
`detailed_signal` : | a string of the form "signal-name::detail".
`c_handler` : | the GCallback to connect.
`user_data` : | an object to pass as data to c_handler calls.