This file is indexed.

/usr/share/gnudatalanguage/astrolib/sxhmake.pro is in gdl-astrolib 2018.02.16+dfsg-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Pro sxhmake,data,groups,header
;+
; NAME:
;       SXHMAKE
; PURPOSE:
;       Create a basic STSDAS header file from an IDL data array
;
; CALLING SEQUENCE:
;       sxhmake, Data, Groups, Header
;
; INPUTS:
;       Data = IDL data array of the same type, dimensions and
;               size as are to be written to file.
;       Groups = # of groups to be written.
;
; OUTPUTS:
;       Header = String array containing ST header file.
;
; PROCEDURE:
;       Call sxhmake to create a header file.  Then call sxopen to
;       open output image, followed by sxwrite to write the data.
;       If you do not plan to change the header created by sxhmake
;       before calling sxopen, you might consider using sxmake which
;       does both steps.
;
; MODIFICATION HISTORY:
;       Don Lindler  Feb 1990 modified from SXMAKE by DMS, July, 1983.
;       D. Lindler April 90  Converted to new VMS IDL
;       M. Greason May 1990  Header creation bugs eliminated.
;       W. Landsman Aug 1997 Use SYSTIME() instead of !STIME for V5.0 
;       Converted to IDL V5.0   W. Landsman   September 1997
;       Recognize unsigned datatype    January 2000   W. Landsman 
;-
;-----------------------------------------------------------------------------
 On_error,2
 if N_Params() LT 3 then begin
     print,'Syntax - sxhmake, Data, Groups, Header'
     return
 endif

        s = size(data)                  ;obtain size of array.
        stype = s[s[0]+1]               ;type of data.
        if (groups eq 0) and (stype LT 6) then $
                sxaddpar,header,'simple','T','Written by IDL:  '+ systime() $
            else $
                sxaddpar,header,'simple','F','Written by IDL:  '+ systime()

        case stype of
0:      message,'Data parameter is not defined'
7:      message,"Can't write strings to ST files'
1:      begin& bitpix= 8 & d='INTEGER*1' & endcase
2:      begin& bitpix= 16 & d = 'INTEGER*2' & endcase
4:      begin& bitpix= 32 & d='REAL*4' & endcase
3:      begin& bitpix= 32 & d='INTEGER*4' & endcase
5:      begin& bitpix= 64 & d='REAL*8' & endcase
6:      begin& bitpix= 64 & d='COMPLEX*8' & endcase
12:     begin & bitpix=16 & d='UNSIGNED*2' & endcase
13:     begin & bitpix=32 & d='UNSIGNED*4' & endcase
else:   message,'ERROR -- Unrecoginized input data type'
        endcase
        sxaddpar,header,'BITPIX',bitpix
        sxaddpar,header,'NAXIS',S[0]    ;# of dimensions
        for i=1,s[0] do sxaddpar,header,'NAXIS'+strtrim(i,2),s[i]
        sxaddpar,header,'DATATYPE',d,'Type of data'
        Get_date,dte                    ;Get current date as CCYY-MM-DD
        sxaddpar,header,'DATE',dte
        if groups eq 0 then $           ;true if not group fmt.
                sxaddpar,header,'GROUPS','F','No groups' $
           else begin                   ;make group params.
                sxaddpar,header,'GROUPS','T'
                sxaddpar,header,'PCOUNT',0
                sxaddpar,header,'GCOUNT',groups
                sxaddpar,header,'PSIZE',0,'# of bits in parm blk'
           endelse
        return
end