function f = getIOTableData(this)
%getIOTableData  Method to get the current Simulink linearization I/O 
%                settings for the I/O table in the GUI.

%  Author(s): John Glass
%  Copyright 1986-2003 The MathWorks, Inc.

import java.lang.* java.awt.*;
iodata = this.IOData;

if length(iodata) > 0
    f = javaArray('java.lang.Object',length(iodata),6);
    
    for ct = 1:length(iodata)
        f(ct,1) = java.lang.Boolean(strcmp(iodata(ct).Active,'on'));
        f(ct,2) = String(iodata(ct).Block);
        f(ct,3) = Integer(iodata(ct).PortNumber);
        %% Get the signal name
        ph = get_param(iodata(ct).Block,'PortHandles');
        f(ct,4) = String(get_param(ph.Outport(iodata(ct).PortNumber),'Name'));
        if strcmpi(iodata(ct).Type,'in')
            f(ct,5) = String( xlate('Input') );
        elseif strcmpi(iodata(ct).Type,'out')
            f(ct,5) = String( xlate('Output') );
        elseif strcmpi(iodata(ct).Type,'inout')
            f(ct,5) = String( xlate('Input - Output') );
        elseif strcmpi(iodata(ct).Type,'outin')
            f(ct,5) = String( xlate('Output - Input') );
        else
            f(ct,5) = String( xlate('None') );
        end
        f(ct,6) = java.lang.Boolean(strcmp(iodata(ct).OpenLoop,'on'));
    end
else
    f = javaArray('java.lang.Object',1,5);
    f(1,1) = java.lang.Boolean(0);
    f(1,2) = String('Add linearization IOs by right clicking on a signal');
    f(1,3) = Integer(0);
    f(1,4) = String('');
    f(1,5) = String('');
    f(1,6) = java.lang.Boolean(0);    
end
