0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 function ensureDirExists(directory)
0013
0014 global PD;
0015
0016
0017 if ~isempty(dir(directory))
0018 return
0019 end
0020
0021
0022 slash = find(directory == PD);
0023 if isempty(slash)
0024 basedir = '.';
0025 cdir = directory;
0026 else
0027 if (slash(end) == length(directory))
0028 if (length(slash) == 1)
0029 basedir = '.';
0030 cdir = directory;
0031 else
0032 basedir = directory(1:slash(end-1));
0033 cdir = directory(slash(end-1)+1:end);
0034 end
0035 else
0036 basedir = directory(1:slash(end));
0037 cdir = directory(slash(end)+1:end);
0038 end
0039 end
0040
0041
0042 if isempty(dir(basedir))
0043 error(['Could not create ' directory ...
0044 ', because the basedir ' basedir ' does not exist.']);
0045 end
0046
0047
0048 if (strcmp(cdir(end),PD))
0049 cdir = cdir(1:end-1);
0050 end
0051
0052
0053 [success, message] = mkdir(basedir,cdir);
0054 if ~success
0055 error(['Failed to create ' directory ' - error message: ' message]);
0056 end