示例#1
0
static void
arv_gc_struct_entry_node_set_integer_value (ArvGcInteger *gc_integer, gint64 value, GError **error)
{
    ArvGcStructEntryNode *struct_entry = ARV_GC_STRUCT_ENTRY_NODE (gc_integer);
    ArvDomNode *struct_register;
    GError *local_error = NULL;
    guint lsb;
    guint msb;

    struct_register = arv_dom_node_get_parent_node (ARV_DOM_NODE (gc_integer));
    if (!ARV_IS_GC_REGISTER_NODE (struct_register))
        return;

    lsb = _get_lsb (struct_entry, &local_error);

    if (local_error != NULL) {
        g_propagate_error (error, local_error);
        return;
    }

    msb = _get_msb (struct_entry, &local_error);

    if (local_error != NULL) {
        g_propagate_error (error, local_error);
        return;
    }

    arv_gc_register_node_set_masked_integer_value (ARV_GC_REGISTER_NODE (struct_register), lsb, msb, value, &local_error);

    if (local_error != NULL) {
        g_propagate_error (error, local_error);
        return;
    }
}
示例#2
0
static void
arv_gc_struct_entry_node_set (ArvGcRegister *gc_register, void *buffer, guint64 length)
{
	ArvDomNode *struct_register = arv_dom_node_get_parent_node (ARV_DOM_NODE (gc_register));

	if (ARV_IS_GC_REGISTER (struct_register))
		return arv_gc_register_set (ARV_GC_REGISTER (struct_register), buffer, length);
}
示例#3
0
static void
arv_gc_struct_entry_node_set (ArvGcRegister *gc_register, void *buffer, guint64 length, GError **error)
{
    ArvDomNode *struct_register = arv_dom_node_get_parent_node (ARV_DOM_NODE (gc_register));

    g_return_if_fail (ARV_IS_GC_REGISTER (struct_register));

    return arv_gc_register_set (ARV_GC_REGISTER (struct_register), buffer, length, error);
}
示例#4
0
static guint64
arv_gc_struct_entry_node_get_length (ArvGcRegister *gc_register)
{
	ArvDomNode *struct_register = arv_dom_node_get_parent_node (ARV_DOM_NODE (gc_register));

	if (ARV_IS_GC_REGISTER (struct_register))
		return arv_gc_register_get_length (ARV_GC_REGISTER (struct_register));

	return 0;
}
示例#5
0
static void
arv_gc_struct_entry_node_set_integer_value (ArvGcInteger *gc_integer, gint64 value)
{
	ArvGcStructEntryNode *struct_entry = ARV_GC_STRUCT_ENTRY_NODE (gc_integer);
	ArvDomNode *struct_register;
	guint lsb;
	guint msb;

	struct_register = arv_dom_node_get_parent_node (ARV_DOM_NODE (gc_integer));
	if (!ARV_IS_GC_REGISTER_NODE (struct_register))
		return;

	lsb = _get_lsb (struct_entry);
	msb = _get_msb (struct_entry);

	arv_gc_register_node_set_masked_integer_value (ARV_GC_REGISTER_NODE (struct_register), lsb, msb, value);
}
示例#6
0
static guint64
arv_gc_struct_entry_node_get_length (ArvGcRegister *gc_register, GError **error)
{
    ArvDomNode *struct_register = arv_dom_node_get_parent_node (ARV_DOM_NODE (gc_register));
    GError *local_error = NULL;
    gint64 length;

    g_return_val_if_fail (ARV_IS_GC_REGISTER (struct_register), 0);

    length = arv_gc_register_get_length (ARV_GC_REGISTER (struct_register), &local_error);

    if (local_error != NULL) {
        g_propagate_error (error, local_error);
        return 0;
    }

    return length;
}
示例#7
0
static void
arv_dom_parser_end_element (void *user_data,
			    const xmlChar *name)
{
	ArvDomSaxParserState *state = user_data;

	if (state->is_error) {
		state->error_depth--;
		if (state->error_depth > 0) {
			return;
		}

		state->is_error = FALSE;
		return;
	}

	state->current_node = arv_dom_node_get_parent_node (state->current_node);
}