source: MML/trunk/mml/copydispersionfile.m @ 4

Last change on this file since 4 was 4, checked in by zhangj, 10 years ago

Initial import--MML version from SOLEIL@2013

File size: 2.7 KB
Line 
1function copydispersionfile(DataFileName, ToFileName)
2%COPYDISPERSIONFILE - Copies a dispersion file to golden file
3%
4%  INPUTS
5%  1. DataFileName
6%  2. toFileName - Default: Golden Filename
7%
8%  See Also copychrorespfile, copybpmrespfile, copybpmsigmafile,
9%  copydisprespfile, copymachineconfigfile, copytunerespfile
10
11%
12%  Written by Gregory J. Portmann
13
14if nargin < 1
15    DataFileName = '';
16end
17
18if nargin < 2
19    ToFileName = 'Golden';
20end
21
22
23% Get the file
24if isempty(DataFileName)
25    DataDirectoryName = getfamilydata('Directory','DispData');
26    if isempty(DataDirectoryName)
27        DataDirectoryName = getfamilydata('Directory','DataRoot');
28    end
29    [DataFileName, DataDirectoryName, FilterIndex] = uigetfile('*.mat','Select the Dispersion Data File to Copy', DataDirectoryName);
30    if FilterIndex == 0
31        fprintf('   File not copied (copydispersionfile)\n');
32        return;
33    end
34else
35    [DataDirectoryName, DataFileName, ExtName] = fileparts(DataFileName);
36    DataDirectoryName = [DataDirectoryName, filesep];
37    DataFileName = [DataFileName, ExtName];
38end
39
40
41% Where is it going
42if strcmpi(ToFileName, 'Golden')
43    FileName = [getfamilydata('OpsData','DispFile'),'.mat'];
44    DirectoryName = getfamilydata('Directory','OpsData');
45
46    if exist([DirectoryName FileName],'file')
47        AnswerString = questdlg(strvcat(strvcat(strvcat('Are you sure you want to overwrite the default dispersion file?',sprintf('%s',[DirectoryName FileName])),'With file:'),[DataDirectoryName, DataFileName]),'Default Dispersion','Yes','No','No');
48    else
49        AnswerString = 'Yes';
50    end
51
52    if strcmp(AnswerString,'Yes')
53        DirStart = pwd;
54        [DirectoryName, ErrorFlag] = gotodirectory(DirectoryName);
55        cd(DirStart);
56    else
57        fprintf('   File not copied (copydispersionfile)\n');
58        return;
59    end
60end
61
62
63% Backup first
64BackupDirectoryName = [getfamilydata('Directory','DataRoot') 'Backup' filesep];
65BackupDataFileName  = prependtimestamp(FileName);
66if exist([DirectoryName, FileName],'file')
67    DirStart = pwd;
68    [FinalDir, ErrorFlag] = gotodirectory(BackupDirectoryName);
69    if ~ErrorFlag
70        copyfile([DirectoryName, FileName], [BackupDirectoryName, BackupDataFileName], 'f');
71        fprintf('   File %s backup to %s\n', [DirectoryName, FileName], [BackupDirectoryName, BackupDataFileName]);
72    else
73        fprintf('   Problem finding/creating backup directory, hence backup made to ops directory.\n');
74        copyfile([DirectoryName, FileName], [DirectoryName, BackupDataFileName], 'f');
75    end
76    cd(DirStart);
77end
78
79% Do the copy
80copyfile([DataDirectoryName, DataFileName], [DirectoryName, FileName], 'f');
81fprintf('   File %s copied to %s\n', [DataDirectoryName, DataFileName], [DirectoryName, FileName]);
Note: See TracBrowser for help on using the repository browser.