function varargout=getWfdbClass(varargin) % % wfdbClass=getWfdbClass(comandName) % % Returns a 'wfdbClass' Java object defined my the string 'commandName' with system % wide run time settings defined by the toolbox WFDBLOALIB file. This class will % execute the WFDB native binary associate with 'commandName'. % % Written by Ikaro Silva, November 23, 2013 % Last Modified: January 16, 2014 % % Since 0.9.5 % See also WFDBEXEC, WFDB, WFDBLOADLIB %endOfHelp mlock; persistent config if(isempty(config)) %Add classes to dynamic path [~,config]=wfdbloadlib; end inputs={'commandName'}; outputs={'javaWfdbExec','config'}; for n=1:nargin if(~isempty(varargin{n})) eval([inputs{n} '=varargin{n};']); end end %Load the Java class in memory if it has not been loaded yet %with system wide parameters defined by wfdbloadlib.m javaWfdbExec=javaObject('org.physionet.wfdb.Wfdbexec',commandName,config.WFDB_CUSTOMLIB); javaWfdbExec.setInitialWaitTime(config.NETWORK_WAIT_TIME); javaWfdbExec.setLogLevel(config.DEBUG_LEVEL); javaWfdbExec.setWFDB_PATH(config.WFDB_PATH); javaWfdbExec.setWFDBCAL(config.WFDBCAL); for n=1:nargout eval(['varargout{n}=' outputs{n} ';']); end