/* reader */ #define df_integer_constant(o_0,i_0) {o_0 = i_0;} #define df_real_constant(o_0,i_0) {o_0 = i_0;} #define df_rec_r(o_0,i_0) {o_0 = i_0;} #define df_rec_w(o_0,i_0) {o_0 = i_0;} /* instance Num */ #define df_add(o_0,i_0,i_1) {o_0 = (i_0) + (i_1);} #define df_mul(o_0,i_0,i_1) {o_0 = (i_0) * (i_1);} #define df_mul_add(o_0,i_0,i_1,i_2) {o_0 = (i_0) * (i_1) + (i_2);} #define df_sub(o_0,i_0,i_1) {o_0 = (i_0) - (i_1);} #define df_negate(o_0,i_0) {o_0 = -(i_0);} #define df_abs(o_0,i_0) {o_0 = (i_0) < 0 ? -(i_0) : (i_0);} #define df_fabsf(o_0,i_0) {o_0 = fabsf(i_0);} #define df_labs(o_0,i_0) {o_0 = labs(i_0);} #define df_signum(o_0,i_0) {o_0 = i_0 > 0 ? 1 (i_0 < 0 ? -1 : 0);}} /* instance Integral */ #define df_mod(o_0,i_0,i_1) {o_0 = i_0 % i_1;} #define df_fmodf(o_0,i_0,i_1) {o_0 = fmodf(i_0,i_1);} /* instance Fractional */ #define df_div(o_0,i_0,i_1) {o_0 = (i_0) / (i_1);} #define df_recip(o_0,i_0) {o_0 = 1.0 / i_0;} /* instance Floating */ #define df_exp(o_0,i_0) {o_0 = expf(i_0);} #define df_sqrt(o_0,i_0) {o_0 = sqrtf(i_0);} #define df_log(o_0,i_0) {o_0 = logf(i_0);} #define df_pow(o_0,i_0,i_1) {o_0 = powf(i_0,i_1);} #define df_sin(o_0,i_0) {o_0 = sinf(i_0);} #define df_cos(o_0,i_0) {o_0 = cosf(i_0);} #define df_tan(o_0,i_0) {o_0 = tanf(i_0);} /* cast */ #define df_float_to_int32(o_0,i_0) {o_0 = (int32_t)i_0;} #define df_int32_to_float(o_0,i_0) {o_0 = (float)i_0;} /* identity */ #define df_identity(o_0,i_0) {o_0 = i_0;} /* instance Ord */ #define df_lt(o_0,i_0,i_1) {o_0 = i_0 < i_1 ? true : false;} #define df_lte(o_0,i_0,i_1) {o_0 = i_0 <= i_1 ? true : false;} #define df_gt(o_0,i_0,i_1) {o_0 = i_0 > i_1 ? true : false;} #define df_gte(o_0,i_0,i_1) {o_0 = i_0 >= i_1 ? true : false;} #define df_max(o_0,i_0,i_1) {o_0 = i_0 > i_1 ? i_0 : i_1;} #define df_min(o_0,i_0,i_1) {o_0 = i_0 < i_1 ? i_0 : i_1;} /* instance Eq */ #define df_eq(o_0,i_0,i_1) {o_0 = i_0 == i_1 ? true : false;} /* instance RealFrac */ #define df_floorf(o_0,i_0) {o_0 = floorf(i_0);} #define df_ceilf(o_0,i_0) {o_0 = ceilf(i_0);} #define df_roundf(o_0,i_0) {o_0 = roundf(i_0);} #define df_lrintf(o_0,i_0) {o_0 = lrintf(i_0);} /* instance Bits */ #define df_bw_and(o_0,i_0,i_1) {o_0 = i_0 & i_1;} #define df_bw_or(o_0,i_0,i_1) {o_0 = i_0 | i_1;} #define df_bw_not(o_0,i_0) {o_0 = ~ i_0;} /* Control */ #define df_and(o_0,i_0,i_1) {o_0 = i_0 && i_1 ? true : false;} #define df_or(o_0,i_0,i_1) {o_0 = i_0 || i_1 ? true : false;} #define df_not(o_0,i_0) {o_0 = i_0 ? false : true;} #define df_select2(o_0,i_0,i_1,i_2) {o_0 = i_0 ? i_1 : i_2;} /* Array */ #define df_a_read(o_0,i_0,i_1) {o_0 = i_0[i_1];} #define df_a_write(i_0,i_1,i_2) {i_0[i_1] = i_2;} /* World|Environment */ #define df_sample_rate(o_0) {o_0 = w_sr(w);} #define df_b_read(o_0,i_0,i_1) {o_0 = w_b_read1(w,i_0,i_1);} #define df_b_write(i_0,i_1,i_2) {w_b_write1(w,i_0,i_1,i_2);} #define df_in1(o_0) {o_0 = w_in1(w,fc);} #define df_out1(i_0) {w_out1(w,fc,i_0);} #define df_out2(i_0,i_1) {w_out2(w,fc,i_0,i_1);} #define df_out3(i_0,i_1,i_2) {w_out3(w,fc,i_0,i_1,i_2);} #define df_ctl1(o_0,i_0) {o_0 = w_c_get1(w,i_0);} #define df_kr_nframes(o_0) {o_0 = (long int)w_nf;} #define df_kr_edge(o_0) {o_0 = fc == 0 ? true : false;}