Ejemplo n.º 1
0
Archivo: pair.c Proyecto: EQ4/faudio
fa_string_t pair_show(fa_ptr_t a)
{
    fa_pair_t b = (fa_pair_t) a;
    fa_string_t s = fa_string("(");
    s = fa_string_dappend(s, fa_string_show(b->values[0]));
    s = fa_string_dappend(s, fa_string(","));
    s = fa_string_dappend(s, fa_string_show(b->values[1]));
    s = fa_string_dappend(s, fa_string(")"));
    return s;
}
Ejemplo n.º 2
0
fa_pair_t fa_signal_to_tree(fa_signal_t signal)
{
    switch (signal->tag) {
    case time_signal:
        return pair(string("time"), empty());

    case random_signal:
        return pair(string("random"), empty());

    case constant_signal:
        return pair(
                   fa_string_to_string(
                       fa_from_double(
                           constant_get(signal, value))),
                   empty());

    case lift_signal:
        return pair(
                   lift_get(signal, name),
                   list(fa_signal_to_tree(lift_get(signal, a))));

    case lift2_signal:
        return pair(
                   lift_get(signal, name),
                   list(
                       fa_signal_to_tree(lift2_get(signal, a)),
                       fa_signal_to_tree(lift2_get(signal, b))));

    case input_signal:
        return pair(
                   concat(
                       string("input "),
                       fa_string_show(fa_from_int32(input_get(signal, c)))),
                   empty());

    case output_signal:
        return pair(
                   concat(
                       string("output "),
                       fa_string_show(fa_from_int32(output_get(signal, c))),
                       string("[-"),
                       fa_string_show(fa_from_int32(output_get(signal, n))),
                       string("]")
                   ),

                   list(fa_signal_to_tree(output_get(signal, a))));

    default:
        assert(false);
    }
}
Ejemplo n.º 3
0
Archivo: custom.c Proyecto: EQ4/faudio
fa_ptr_t receive_(fa_ptr_t x, fa_signal_name_t n, fa_signal_message_t msg)
{
    printf("Received %s : %s!\n", fa_unstring(n), fa_unstring(fa_string_show(msg)));
    return x;
}