getOptions

A simple, user friendly way to handle and parse variable argument inputs (varargin) into MATLAB functions.
88 descargas
Actualizado 11 may 2020

getOptions is a simple, user friendly way to handle and parse variable argument inputs (varargin) into MATLAB functions.

Please see my 2014 write-up (https://bahanonu.com/getOptions) for details and reasons behind implementing and using this function.

Install by adding getOptions directory to path. Usage instructions in getOptions.m, in the README, on GitHub, or briefly below.

===
Instructions on using getOptions.

There are two ways to input options to a function that getOptions will parse. The first involves passing an 'options' parameter with a structure containing all options that the user would like to modify.

Method #1
opts.Option1= 1;
opts.Option2 = 0;
exampleFxn(inputArg1,'options',opts);

The second method involves passing Name-Value arguments as is normal in MATLAB.

Method #2
exampleFxn(inputArg1,'Option1',1,'Option2',0);

Next add getOptions to beginning of a function as below with all options put inside a structure.

function [out1] = exampleFxn(in1,varargin)
% ========================
% FUNCTION OPTIONS
% Description option #1
opts.Option1 = '';
% Description option #2
opts.Option2 = 1;
% Description option #3
opts.Option3 = 1;
% get options
opts = getOptions(opts,varargin); % ***HERE IS WHERE getOptions IS USED***
% disp(opts)
% unpack options into current workspace (not recommended)
% fn=fieldnames(opts);
% for i=1:length(fn)
% eval([fn{i} '=opts.' fn{i} ';']);
% end
% ========================

% Your function
end

Citar como

Biafra Ahanonu (2024). getOptions (https://github.com/bahanonu/getOptions/releases/tag/v1.0.1), GitHub. Recuperado .

Compatibilidad con la versión de MATLAB
Se creó con R2019a
Compatible con cualquier versión
Compatibilidad con las plataformas
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Versión Publicado Notas de la versión
1.0.1

See release notes for this release on GitHub: https://github.com/bahanonu/getOptions/releases/tag/v1.0.1

1.0.0

Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.
Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.