1 | ;+ |
---|
2 | ; |
---|
3 | ; @file_comments |
---|
4 | ; For internal use of SAXO |
---|
5 | ; 1) define key_forgetold = 1b - keyword_set(flag) |
---|
6 | ; 2) remove all oldcm_used.pro found in !path |
---|
7 | ; 3) define and create myuniquetmpdir and add it to !path |
---|
8 | ; 4) copy oldcm_full(_empty) to myuniquetmpdir+'oldcm_used.pro' |
---|
9 | ; 5) make sure that the common variables are correctly initialized. |
---|
10 | ; 6) merge the online_help if possible... |
---|
11 | ; |
---|
12 | ; @categories |
---|
13 | ; Compatibility |
---|
14 | ; |
---|
15 | ; @param flag {in}{optional} |
---|
16 | ; 1 or 0 to keep or forget the compatibility |
---|
17 | ; |
---|
18 | ; @uses |
---|
19 | ; cm_general |
---|
20 | ; |
---|
21 | ; @examples |
---|
22 | ; keep_compatibility, 0 |
---|
23 | ; |
---|
24 | ; @history |
---|
25 | ; Sebastien Masson (smasson\@lodyc.jussieu.fr) |
---|
26 | ; June 2005 |
---|
27 | ; |
---|
28 | ; @version |
---|
29 | ; $Id$ |
---|
30 | ; |
---|
31 | ;- |
---|
32 | PRO keep_compatibility, flag |
---|
33 | ; |
---|
34 | compile_opt idl2, strictarrsubs |
---|
35 | ; |
---|
36 | @cm_general |
---|
37 | ; |
---|
38 | IF n_elements(myuniquetmpdir) NE 0 THEN return |
---|
39 | ; |
---|
40 | ; version should be at least 6.0 |
---|
41 | ; |
---|
42 | IF fix(strmid(!version.release, 0, 1)) LT 6 THEN BEGIN |
---|
43 | print, ' *** ***** ***' |
---|
44 | print, ' *** ERROR ***' |
---|
45 | print, ' *** ***** ***' |
---|
46 | print, 'This version of SAXO needs at least IDL version 6.0' |
---|
47 | print, ' *** ***** ***' |
---|
48 | print, ' *** ERROR ***' |
---|
49 | print, ' *** ***** ***' |
---|
50 | return |
---|
51 | ENDIF |
---|
52 | ; are we using the virtual machine?? |
---|
53 | IF n_elements(key_vm) EQ 0 THEN key_vm = lmgr(/vm) |
---|
54 | ; are we using gdl or idl?? |
---|
55 | defsysv, '!gdl', exist = key_gdl |
---|
56 | ; |
---|
57 | if n_elements(flag) eq 0 then flag = 1b - keyword_set(key_forgetold) |
---|
58 | ; 1) automatic definition of key_forgetold |
---|
59 | key_forgetold = 1b - keyword_set(flag) |
---|
60 | ; |
---|
61 | ; 2) remove all oldcm_used.pro found in !path |
---|
62 | to_rm = find('oldcm_used') |
---|
63 | IF to_rm[0] NE 'NOT FOUND' THEN file_delete, to_rm |
---|
64 | ; |
---|
65 | ; 3) define and create myuniquetmpdir and add it to !path |
---|
66 | def_myuniquetmpdir |
---|
67 | ; if we are using the virtual machine, there is no need to do this |
---|
68 | IF NOT keyword_set(key_vm) THEN BEGIN |
---|
69 | ; |
---|
70 | ; 4) copy oldcm_full(_empty) to myuniquetmpdir+'oldcm_used.pro' |
---|
71 | ; select which file should be copied to oldcm_used.pro |
---|
72 | IF key_forgetold THEN BEGIN |
---|
73 | oldcm = find('oldcm_empty') |
---|
74 | print, 'We forget the compatibility with the old version' |
---|
75 | ENDIF ELSE BEGIN |
---|
76 | oldcm = find('oldcm_full') |
---|
77 | print, 'We keep the compatibility with the old version' |
---|
78 | ENDELSE |
---|
79 | ; |
---|
80 | oldcm = oldcm[0] |
---|
81 | IF oldcm EQ 'NOT FOUND' THEN BEGIN |
---|
82 | print, 'Error: oldcm_full or oldcm_empty must be found in the !path' |
---|
83 | stop |
---|
84 | ENDIF |
---|
85 | ; copy |
---|
86 | file_copy, oldcm, myuniquetmpdir + 'oldcm_used.pro', /overwrite |
---|
87 | ; |
---|
88 | ; make sure we can make the plots even if we are using the demo mode |
---|
89 | ; |
---|
90 | demomode_compatibility |
---|
91 | ENDIF |
---|
92 | ; |
---|
93 | ; 5) make sure that the common variables are correctly initialized. |
---|
94 | ; |
---|
95 | IF size(ccmeshparameters, /type) NE 8 THEN BEGIN |
---|
96 | computegrid, 1, 1, 1, 1, 1, 1, /fullcgrid |
---|
97 | @cm_4data |
---|
98 | varname = '' |
---|
99 | vargrid = 'T' |
---|
100 | vardate = '0' |
---|
101 | varexp = '' |
---|
102 | varunit = '' |
---|
103 | valmask = 1.e20 |
---|
104 | ENDIF |
---|
105 | ; |
---|
106 | ; 6) merge the online_help if possible... |
---|
107 | ; |
---|
108 | mergeonline_help |
---|
109 | ; |
---|
110 | return |
---|
111 | END |
---|