% GETVAL returns the default value of a param.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% DESCRIPTION: GETVAL returns the default value of a param
%
% CALL:        val = getVal(param);
%
% VERSION:     $Id: getVal.m,v 1.7 2011/02/22 15:42:33 hewitson Exp $
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function varargout = getVal(varargin)
  
  pin = varargin{1};
  
  if numel(pin) ~= 1 || nargin ~= 1
    error('### This method works only with one param object. It might be that the PLIST have two parameter with the key [%s]', pin(1).key);
  end

  if isa(pin.val, 'paramValue') && ~isempty(pin.val) && (pin.val.valIndex >= 1)
    varargout{1} = pin.val.options{pin.val.valIndex};
    return;
  end
    
  varargout{1} = pin.val;
   
end
