source: trunk/SRC/ForOldVersion/keep_compatibility.pro @ 231

Last change on this file since 231 was 231, checked in by pinsard, 17 years ago

improvements/corrections of some *.pro headers

  • Property svn:keywords set to Id
File size: 3.0 KB
Line 
1;+
2; @file_comments
3;   1) define key_forgetold = 1b - keyword_set(flag)
4;   2) remove all oldcm_used.pro found in !path
5;   3) define and create myuniquetmpdir and add it to !path
6;   4) copy oldcm_full(_empty) to myuniquetmpdir+'oldcm_used.pro'
7;
8; @categories
9; Compatibility
10;
11; @param flag {in}{optional} 1 or 0 to keep or forget the compatibility
12;
13; @uses cm_general
14;
15; @restrictions
16; copy oldcm_full or oldcm_empty must be found in the !path.
17; dir must also be in the !path
18;
19; @examples
20; IDL> keep_compatibility,0
21;
22; @history Sebastien Masson (smasson\@lodyc.jussieu.fr)
23;                      June 2005
24;
25; @version $Id$
26;
27;-
28;
29PRO keep_compatibility, flag
30;
31;
32  compile_opt idl2, strictarrsubs
33;
34@cm_general
35;
36; version should be at least 6.0
37;
38  IF fix(strmid(!version.release, 0, 1)) LT 6 THEN BEGIN
39    print, '                   *** ***** ***'
40    print, '                   *** ERROR ***'
41    print, '                   *** ***** ***'
42    print, 'This version of SAXO needs at least IDL version 6.0'
43    print, '                   *** ***** ***'
44    print, '                   *** ERROR ***'
45    print, '                   *** ***** ***'
46    return
47  ENDIF
48; are we using the virtual machine??
49  IF n_elements(key_vm) EQ 0 THEN $
50     key_vm = total(file_test(expand_path(!path, /array)+'/keep_compatibility.pro')) EQ 0
51;
52  IF n_elements(myuniquetmpdir) NE 0 THEN BEGIN
53    !path = !path+ ':' + expand_path(myuniquetmpdir)
54    return
55  ENDIF
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; 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; merge the online_help if possible..
107;
108  mergeonline_help
109;
110  return
111END
Note: See TracBrowser for help on using the repository browser.