import streamit.*; import streamit.io.*; class source extends Filter { int N, pos; float[] r; public source(float[] r) {super(r);} public void init(float[] r){ output = new Channel(Float.TYPE,1); this.r=r; N=r.length; this.pos = 0; } public void work(){ output.pushFloat(r[pos++]); if (pos >= N) pos = 0; } } class sink extends Filter{ int N; public sink(int N) {super(N);} public void init(int N){ input = new Channel(Float.TYPE, 1); this.N=N; } public void work() { System.out.println(input.popFloat()); } } class FBtest extends StreamIt { static public void main(String[] t) { FBtest test=new FBtest(); test.run(t); } public void init() { int N_sim=1024*2; int N_samp=/* 32 */ 8; int N_ch=N_samp; int N_col=32; float[] r=new float[N_sim]; float[][] H=new float[N_ch][N_col]; float[][] F=new float[N_ch][N_col]; for (int i=0;i