classdef SimulationOutput
%SIMULINK.SIMULATIONOUTPUT object contains all of the simulation output.
%   All outputs from a simulation, including the workspace variables, are
%   packaged into a single Simulink.SimulationOutput object and returned.
%   All of the data variable names associated with the object can be 
%   identified using the WHO method.
%
%   %Example
%       simOut = sim('vdp','SimulationMode','rapid','AbsTol','1e-5',...
%                    'SaveState','on','StateSaveName','xoutNew',...
%                    'SaveOutput','on','OutputSaveName','youtNew');
%       simOutVars = simOut.who
%       yout = simOut.youtNew
%
%   Simulink.SimulationOutput methods:
%      GET                   : returns the value of variable of a given name
%      FIND                  : finds the value of variable of a given name
%      WHO                   : lists the names of the data variables associated with an object
%      GETSIMULATIONMETADATA : returns metadata about the simulation run
%      SETUSERSTRING         : sets the UserString field on the metadata in the returned output object
%      SETUSERDATA           : sets the UserData field on the metadata in the returned output object
%
%   See also SIM, SIMULINK.SIMULATIONMETADATA

     
    %   Copyright 2009-2019 The MathWorks, Inc.

    methods
        function out=eq(~) %#ok<STOUT>
        end

        function out=find(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.FIND
            %   Finds the value of variable of a given name
            %
            % EXAMPLE
            %   >> simOut.find('name')
        end

        function out=get(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.GET
            %   Returns the value of variable of a given name
            %
            % EXAMPLE
            %   >> simOut.get('name')
        end

        function out=getSimulationMetadata(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.GETSIMULATIONMETADATA
            %   Get the SimulationMetadata object from the simulation output
            %
            % EXAMPLE
            %   >> simOut.getSimulationMetadata()
        end

        function out=isequal(~) %#ok<STOUT>
        end

        function out=isequaln(~) %#ok<STOUT>
        end

        function out=plot(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.PLOT
            %   Plot in the Simulation Data Inspector
            %
            % EXAMPLE
            %   >> plot(simOut)
        end

        function out=removeProperty(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.removeProperty
            %   Remove data property from the returned output object
            %
            % EXAMPLE
            %   >> simOut = simOut.removeProperty('logsout')
        end

        function out=setUserData(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.SETUSERDATA
            %   Set the UserData field on the simulation metadata in the returned
            %   output object
            %
            % EXAMPLE
            %   >> simOut = simOut.setUserData(userData)
        end

        function out=setUserString(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.SETUSERSTRING
            %   Set the UserString field on the simulation metadata in the returned
            %   output object
            %
            % EXAMPLE
            %   >> simOut = simOut.setUserString('userString')
        end

        function out=who(~) %#ok<STOUT>
            % SIMULINK.SIMULATIONOUTPUT.WHO
            %   Lists the names of the data variables associated with an object
            %
            % EXAMPLE
            %   >> simOut.who
        end

    end
    properties
        ErrorMessage;

        SimulationMetadata;

    end
end
