function [signal]=i_gen_windows( X )

    % start with a blank slate
    
    signal = zeros( floor( size( X, 1 ) / 2 ) * size( X, 2 ) + ceil( size(X,1)/2 ), 1 );
    
    % for each window
    
    for i = 1 : size( X, 2 )
        farg = (i-1)*(floor(size(X,1)/2))+1;
        blarg = farg+size(X,1)-1;
        signal(farg:blarg,1)=signal(farg:blarg,1)+real(ifft(X(:,i)));
        %signal(farg:blarg,1)=signal(farg:blarg,1)+real(ifft(X(:,i)));
    end
    
end
