source: trunk/SRC/Documentation/xmldoc/wiki/MiniNotice @ 352

Last change on this file since 352 was 352, checked in by pinsard, 16 years ago

some improvements in wiki production

File size: 22.0 KB
Line 
1= Mini Guide for Basic Commands in the XXX Program =
2[[PageOutline]]
3
4   
5   
6   
7     
8 
9== Launching XXX ==
10
11There is several ways to launch XXX which we will detail in the next sections:
12  {{{
13#!html
14<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
15    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span></code></strong>
16    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>/separate</code></em></code></strong>
17    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>restore = 'file.dat'</code></em></code></strong>
18    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em></code></strong>
19    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>keywd1 = 
</code></em>, <em class="parameter"><code>keywd2 = 
</code></em></code></strong>
20    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>'initgrid'</code></em></code></strong>
21    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>'initgrid'</code></em>, <em class="parameter"><code>keywd1 = 
</code></em>, <em class="parameter"><code>keywd2 = 
</code></em></code></strong>
22    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>'initgrid'</code></em>, <em class="parameter"><code>'arg1, arg2, 
'</code></em></code></strong>
23  </pre>
24}}}
25
26=== idl&gt; xxx ===
27
28    A window will open with 3 parts to consider.
29
30Window xxx 1
31
32
33
34
35
36
37
38
39[[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0101.png)]]
40
41
42
43Data file name
44
45
46Grid initialization method
47
48
49Grid initialization parameters
50
51
52
53
54
55
56==== Data file name ====
57
58    The name of the data file. It can be typed directly in the window provided, or selected with the help of the browse button.
59 
60==== Grid initialization method ====
61
62    For visualising grilled data, you need to [wiki:FirstSteps define the grid] on which are located the data. By default, "automatic grid construction with initncdf.pro" is checked. This means that the grid will be defined by using the informations contained in the data file (through the IDL prodecure {{{initncdf}}}) without needing any other auxiliary file. If you checked "grid construction with other IDL batch or procedure", this means that you don't want to use the default {{{initncdf}}} procedure to define the grid and you will provide your own IDL procedure or the so-called IDL batch file (a file which is called by using @, see IDL documentation).
63 
64==== Grid initialization parameters ====
65
66    This third part allows you to specify the name, the argument and the keywords of the routine you want to use to initialize the grid.
67By default the name of the procedure is {{{initncdf}}}, its argument will be automatically defined so you cannot change them. If you If you checked "grid construction with other IDL batch or procedure", you have to select the name of the IDL procedure or batch file and its suitable arguments and keywords. Note that if you select an IDL batch file you cannot give any parameter or keyword.
68   
69      Window xxx 1
70     
71 
72    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0102.png)]]
73 
74     
75   
76    Once these two lines have been completed, click on let's go.
77  For example, we choose the IDL batch file "tst_initlev". Compare the result with "automatic grid construction with initncdf.pro" checked. Cf [#Launching XXX]
78      Oceania at 125 meters of depth with proper grid initialization
79
80
81  [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0103.png)]]
82
83     
84 
85=== idl&gt; xxx, /separate ===
86
87This is the same as the simple idl&gt; xxx except that once the xxx window open, you will have 2 separate windows (command and plotting window) instead of one.
88
89=== idl&gt; xxx, restore = 'file.dat' ===
90
91In that case xxx window will open directly in the same state as it was when the file "file.dat" was created. see +++++++
92=== idl&gt; xxx, 'file.nc' ===
93
94In this case, the xxx window directly open the data file 'file.nc' and build the grid automatically with the IDL procedure {{{initncdf}}}. For example:
95  {{{
96#!html
97<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
98    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_1x1.nc'</code></em></code></strong>
99  </pre>
100}}}
101
102=== idl&gt; xxx, 'file.nc', keywd1 = 
, keywd2 = 
 ===
103
104In this case, the xxx window directly open the data file 'file.nc', build the grid automatically with the IDL procedure {{{initncdf}}} and use the keywords keywd1 = 
, keywd2 = 
 in the call of {{{initncdf}}}. For example:
105  {{{
106#!html
107<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
108    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_1x1.nc'</code></em>, <em class="parameter"><code>useasmask = 'votemper'</code></em>, <em class="parameter"><code>missing_value = 31.0720</code></em></code></strong>
109  </pre>
110}}}
111
112=== idl&gt; xxx, 'file.nc', 'initgrid' ===
113
114In this case, the xxx window directly open the data file 'file.nc' and build the grid directly with the IDL procedure or batch file {{{initgrid}}}{{{
115#!html
116<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
117    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_ORCA2.nc'</code></em>, <em class="parameter"><code>'tst_initorca2'</code></em></code></strong>
118  </pre>
119}}}
120
121=== idl&gt; xxx, 'file.nc', 'initgrid', keywd1 = 
, keywd2 = 
 ===
122
123In this case, the xxx window directly open the data file 'file.nc', build the grid directly with the IDL procedure {{{initgrid}}} and use the keywords keywd1 = 
, keywd2 = 
 in the call of {{{initgrid}}}.
124
125=== idl&gt; xxx, 'file.nc', 'initgrid', 'arg1, arg2, 
' ===
126
127In this case, the xxx window directly open the data file 'file.nc', build the grid directly with the IDL procedure {{{initgrid}}} and use the string 'arg1, arg2, 
' to specify the input arguments in the call of {{{initgrid}}}.
128
129== Description of XXX window ==
130
131Window xxx 2
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147[[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0201.png)]]
148
149
150
151Plot type
152
153
154Menu
155
156
157OK
158
159
160Page layout
161
162
163Variables list
164
165
166Files list
167
168
169Command text
170
171
172Calendar
173
174
175Domdef
176
177
178Spefications
179
180
181
182
183
184
185=== Plot type list ===
186Allows specification of the type of plot desired.
187      Different plot types available
188
189 
190    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0202.png)]]
191 
192     
193   
194
195If the type plt is selected, the selection of plot type
196is made by mouse. Cf [#Launching XXX]
197
198=== The menu bar made up of 3 sub-menus ===
199
200==== File sub-menu ====
201
202      The File menu
203
204 
205    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0203.png)]]
206 
207     
208     * Open: to open a new file. Same procedure as during the launch of XXX.
209The new file can be on a different grid, with different variables, with a different time base 

210 * New XXX: to open a second XXX window identical to the first one. @star@ Quit: to close the XXX window.
211==== Save As sub-menu ====
212
213      The Save As menu
214
215 
216    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0204.png)]]
217 
218     
219     * Postscript: to save the plotting window in Postscript format @star@ Animated gif: to create an animation of the plotting window.
220The creation of an animation is only possible if none of the plots have a time axis, and if the plots are all on the same time base (calendar). On the other hand, animations of horizontal and vertical plots, with different color palettes (for those not on an X-terminal), are possible.The creation of animations has a tendency to saturate the video memory of X-terminals, crashing the entire program 
 * Gif: to save a gif of the plotting window. @star@ IDL procedure: to save the command history that has created the plot in an IDL procedure that can be re-executed later. For example if I save the commands in {{{xxx_figure.pro}}} file, when ever I want, I can then launch a new IDL session and type:
221  {{{
222#!html
223<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
224<code class="prompt">idl&gt;</code> <strong class="userinput"><code>@init</code></strong>
225<code class="prompt">idl&gt;</code> <strong class="userinput"><code>xxx_figure</code></strong>
226</pre>
227}}}
228
229and I'll obtain the saved figure.
230  {{{
231#!html
232<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
233<code class="prompt">idl&gt;</code> <strong class="userinput"><code>xxx_figure,/post</code></strong>
234</pre>
235}}}
236
237or
238  {{{
239#!html
240<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
241<code class="prompt">idl&gt;</code> <strong class="userinput"><code>@ps</code></strong>
242</pre>
243}}}
244
245will then create a Postscript file of the figure.
246 * RESTORE kwd of xxx: to save the xxx widget (all buttons and parameters stored in memory 
) in a binary file in order to quit xxx and relaunch it later with idl&gt; xxx, restore = 'file.dat' and get exactly the same configuration. @star@ Print to prompt: lists in the IDL window the command history that created the last plot. Useful primarily for debugging

247==== Flag options sub-menu ====
248
249      The Flag Option menu
250
251 
252    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0205.png)]]
253 
254     
255     * Portrait/Landscape: changes the configuration of the plot. @star@ Overlay: to plot contours of a different field on top the
256one represented as color-filled contours. It is necessary to relaunch the entire plot to make this work! * Vecteur: to plot a vector field on top of contours. Only
257works on horizontal plots ({{{plt.pro}}}).
258As for Overlay, a relaunch of the entire plot is necessary. * Longitude / x index: switches longitude labeling of the plot sub-domain from degrees to indexes following i. @star@ Latitude / y index: switches latitude labeling of the plot sub-domain from degrees to indexes following j.Careful, a selected option remains selected until it is re-clicked.
259=== OK button ===
260Click on this OK button is required to make a new plot appear
261=== Page Layout ===
262Specify the number of columns and rows for plots on the sheet of paper.
263      Number of Column
264
265 
266    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0206.png)]]
267 
268     
269   
270      Example: For 2 columns and 2 rows
271
272 
273    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0206a.png)]]
274 
275     
276   
277=== List of variables ===
278You can choose the variable to work on.
279      Example of different Variables available
280
281 
282    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0207.png)]]
283 
284     
285   
286=== List of open files ===
287You can choose the file to work on.
288      Example of list of open files
289
290 
291    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0208.png)]]
292 
293     
294   
295=== Command text ===
296
297To specify in the widget part number 7 the computation you want to do on the data
298In all cases bellow, the name given to a field (a, b, c, 
) is of no importance.
299==== Linear calculation ====
300
301If you want to make basic linear computation (like difference between fields, add/multiply by a constant 
). you can simply put the following commands: {{{
302#!html
303<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">a - b</pre>
304}}}
305{{{
306#!html
307<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">numb1*a</pre>
308}}}
309{{{
310#!html
311<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">a + numb</pre>
312}}}
313 or any command with the following format {{{
314#!html
315<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">numb1*a + numb2*b  + numb3*c 
 + numb</pre>
316}}}
317 where numb1, numb2, 
 correspond to numbers and a, b, c 
 will be the data to read.
318
319==== Any kind of computation ====
320
321If you want to make a computation more complicated than a basic linear you must put designate the data you want to read between "" (with anything in between the "). For example: {{{
322#!html
323<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">"a"^2</pre>
324}}}
325{{{
326#!html
327<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">"a" - abs("b")</pre>
328}}}
329{{{
330#!html
331<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">grad("a", 'x')</pre>
332}}}
333 â€Š
334
335=== Calendar ===
336
337The calendar is made up of two drop-lists, which allow specification of two dates, the beginning and end of a time series, or the period over which to average before plotting.
338      Example: first plot in January, second plot is from January to December
339
340 
341    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0301.png)]]
342 
343     
344   
345=== Define the domain ===
346
347  A series of widgets that allow specification of the min/max limits of the domain in longitude/x-index, latitude/y-index, and depth in levels or meters.
348 
349    Domain by default
350
351   
352      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0210.png)]]
353   
354     
355 
356    Change Domain area: zoom on Oceania
357
358 
359    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0401.png)]]
360 
361     
362 
363    This configuration give us:
364
365   
366      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0402.png)]]
367   
368     
369 
370    Change depth area: between depth 125 and 126
371
372   
373      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0403.png)]]
374   
375     
376 
377    temperature of the ocean at depth 125 meters without proper land/sea mask
378
379   
380      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0404.png)]]
381   
382     
383 
384  As you can see, at this depth, we better define a land/sea mask when loading the grid. Cf [#Launching XXX]
385=== Specify your plot ===
386
387==== Specify min, max and contour interval ====
388
389    min, max, and contour interval specifications
390
391   
392      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0501.png)]]
393   
394     
395 
396  You can restore configuration by default by pressing the Default button.
397  The path of the file [../../ToBeReviewed/WIDGET/AUTOUR_de_XXX/definedefaultextra.pro definedefaultextra.pro] that defines the default values for each variable names is displayed when the cursor hovers over the button Default. This file contains a case statement based on the name of the variable and defining the min, max, contour interval and other keywords that should be used as default for the specified variable. You can copy this file in your own {{{${HOME}/My_IDL/}}} directory and easily modify it to suit your favorite default values.
398==== Specify the palette to be used ====
399For the color palette, you can either specify the name or go search for one among the palettes available.
400      The Color menu
401
402 
403    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0502.png)]]
404 
405     
406   
407==== Add any keyword ====
408
409  The "keywords" window allows specification of all desired keywords. There is a few examples of the use of this "keywords" window.
410 
411    Without any additional keyword
412
413   
414      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0209.png)]]
415   
416     
417 
418    Add {{{/realcont}}} keyword
419
420   
421      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0210a.png)]]
422   
423     
424 
425    Graphic with {{{/realcont}}} keyword
426
427   
428      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0210.png)]]
429   
430     
431 
432    Add /realcont, map=[90,0,0], /ortho, cell_fill=2 keywords
433
434   
435      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0211a.png)]]
436   
437     
438 
439    Graphic with /realcont, map=[90,0,0], /ortho, cell_fill=2 keywords
440
441   
442      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0211.png)]]
443   
444     
445 
446== Mouse Actions ==
447
448=== In the graphics window on a horizontal plot ===
449
450Select a domain and select the horizontal plot (plt), vertical plot
451(pltz), or the hovmoeller plot (pltt):
452The domain we'd like to select for the plot is determined by one of
453its diagonals, defined therefore by two points.
454The first point is
455defined when the mouse button is pushed, then the mouse is moved, and
456the second point is defined as the mouse button is released
457(click-drag).
458The domains are thus defined by a long click (LC).
459To determine which type of plot should be made of selection, use:
460
461* If the plot selector is on plt * the left mouse button to create horizontal plots (plt) @star@ the middle mouse button to create vertical plots (pltz) @star@ the right mouse button to create common hovmoellers for xt and yt cuts (pltt)In summary:      LCL---&gt;plt
462     
463 
464    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousell.png)]]
465 
466     
467   
468      Horizontal Plot
469     
470 
471    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0701.png)]]
472 
473     
474*           LCM---&gt;pltz
475     
476 
477    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mouselm.png)]]
478 
479     
480   
481      Vertical Plot
482     
483 
484    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0702.png)]]
485 
486     
487*           LCR---&gt;pltt
488     
489 
490    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mouselr.png)]]
491 
492     
493   
494      Common hovmoeller for xt and yt cuts
495     
496 
497    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0703.png)]]
498 
499     
500    If the plot selector is on something other than plt the indicated plot type is made.
501=== Create multiple plots on the same sheet and make them interact ===
502
503Select the number of columns and rows for the page.
504Create a first plot.
505It will appear in the first frame.
506To create a plot in another frame double-click in the frame with the
507middle button (DCM).
508A black dotted frame will surround the designated frame, the "target" frame.
509A black frame will surround the first plot.
510This is the "reference" frame, in other words the one
511that all the XXX widgets refer to.
512Change for example the date and create a new plot.
513With a left button double-click in the first
514frame, all the widgets change and refer again to the first plot.
515A double-click with the right button in the second frame will erase the
516* plot.In summary:       DCL---&gt;"reference" frame
517     
518 
519    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousedl.png)]]
520 
521     
522   
523      The reference frame is selected
524     
525 
526    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0801.png)]]
527 
528     
529*           DCM---&gt;"target" frame
530     
531 
532    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousedm.png)]]
533 
534     
535   
536      The target frame is selected
537     
538 
539    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0802.png)]]
540 
541     
542*           DCR---&gt;erase the frame
543     
544 
545    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousedr.png)]]
546 
547     
548    Here's a series of commands to show how this works.
549
550
551load xxx with the command:
552  {{{
553#!html
554<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
555    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_ORCA05.nc'</code></em>, <em class="parameter"><code>'tst_initorca05'</code></em></code></strong>
556  </pre>
557}}}
558
559
560
561
562Select a 3-D field and create 6 frames for the sheet of paper.
563
564
565
566
567Create a horizontal plot in Frame 1
568
569
570
571
572DCM in frame 2, LCL on the plot in frame 1, to create a horizontal
573zoom in frame 2.
574DCM in frame 3, LCM on the plot in frame 1, to create a vertical cut
575in frame 3.
576DCM in frame 4, LCR on the plot in frame 1, to create a hovmoeller in frame 4.
577
578
579      Frame with four plot
580     
581 
582    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0901.png)]]
583 
584     
585   
586
587
588
589To redo the hovmoeller with the keyword {{{/nocontour}}}
590
591DCL in frame 4 which now becomes the reference and target frame.
592
593
594
595
596Add the keyword
597{{{/nocontour}}}
598
599      Command text area
600     
601 
602    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0902a.png)]]
603 
604     
605   
606
607
608
609click OK, and the plot is redone.
610
611
612      The fourth plot with the keyword "nocontour"
613     
614 
615    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0902.png)]]
616 
617     
618   
619
620
621
622in frame 5, let's create the same plot as in frame 2 except we use pltv instead of plt
623
624
625DCL on frame 2
626
627
628
629DCM on frame 5
630
631
632
633
634change plt for pltv
635
636
637
638
639Click on OK
640
641      Frame with five plot
642     
643 
644    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0903.png)]]
645 
646     
647   
648
649
650== What should I do when it breakdown ==
651
652
653In the IDL window type (as many time you click on a button since a problem occurs in xxx !!!),
654  {{{
655#!html
656<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
657<code class="prompt">idl&gt;</code> <strong class="userinput"><code>retall</code></strong>
658</pre>
659}}}
660
661
662in the IDL window, type
663  {{{
664#!html
665<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
666<code class="prompt">idl&gt;</code> <strong class="userinput"><code>domdef</code></strong>
667</pre>
668}}}
669
670DCR to erase the problem frame.
671
672change the orientation of the plot by pressing Flag options -&gt; Portrait/Landscape. Cf [#Launching XXX]
673quit XXX cleanly using quit from the File menu. Cf [#Launching XXX]
674
675
676Always avoid if at all possible closing and killing the XXX
677window, but rather select quit from the File menu.
678XXX uses a large number of pointers, and want only killing the window will
679leave a large number of unused variables in memory, which could in the end
680overflow.
681To clean up this memory:
682  {{{
683#!html
684<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
685<code class="prompt">idl&gt;</code> <strong class="userinput"><code>ptr_free, ptr_valid()</code></strong>
686</pre>
687}}}
688
689
Note: See TracBrowser for help on using the repository browser.