File: shared.sh

package info (click to toggle)
saods9 7.3.2%2Brepack-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 22,044 kB
  • ctags: 21,414
  • sloc: cpp: 66,406; tcl: 60,491; ansic: 19,507; sh: 9,996; xml: 1,375; makefile: 892; perl: 68
file content (186 lines) | stat: -rwxr-xr-x 5,838 bytes parent folder | download
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
#linux commands
#ipcs -m
#ipcs -ml
#ipcrm shm <shmid>
#echo '67108864' > /proc/sys/kernel/shmmax

KillIt () {
    i=1
    while [ "$i" -le 15 ]; do
      sleep 1
      if [ `xpaaccess ds9` = yes ]; then
	  sleep 1
	  xpaset -p ds9 quit
	  break
      fi
      
      i=`expr $i + 1`
    done
}

DoCmd () {
    echo "$1"
    shmid=`shmload -q $2`
    ds9 -scale $5 -scale mode $6 -shm $3 shmid $shmid $4 &
    KillIt
    ipcrm -m $shmid
}

DoSCmd () {
    echo "$1"
    shmid1=`shmload -q $2`
    shmid2=`shmload -q $3`
    ds9  -scale $6 -scale mode $7 -shm $4 shmid $shmid1 $shmid2 $5 &
    KillIt
    ipcrm -m $shmid1
    ipcrm -m $shmid2
}

DoXPA () {
    echo "$1"
    shmid=`shmload -q $2`
    xpaset -p ds9 scale $5
    xpaset -p ds9 scale mode $6
    xpaset -p ds9 shm $3 shmid $shmid $4
    if [ $slow = "1" ]; then
	sleep 1
    fi
    xpaset -p ds9 frame clear
    ipcrm -m $shmid
}

DoSXPA () {
    echo "$1"
    shmid1=`shmload -q $2`
    shmid2=`shmload -q $3`
    xpaset -p ds9 scale $6
    xpaset -p ds9 scale mode $7
    xpaset -p ds9 shm $4 shmid $shmid1 $shmid2 $5
    if [ $slow = "1" ]; then
	sleep 1
    fi
    xpaset -p ds9 frame clear
    ipcrm -m $shmid1
    ipcrm -m $shmid2
}

# slow down?
slow=0
if [ "$1" = "slow" ]; then
    slow=1
    shift
fi

echo
echo "*** shared.sh ***"

echo "Current shm limits"
#ipcs -lm

if [ "$1" = "command" -o  -z "$1" ]; then
echo "Command Line Shm Tests"

# basics
DoCmd "..fits" data/img.fits fits foo linear zscale
DoSCmd "..sfits" sfits/float.hdr sfits/float.arr sfits foo linear zscale
DoCmd "..table" fits/table.fits "" foo log minmax
DoCmd "..table filter" fits/table.fits "" 'foo[bin=rawx,rawy]' log minmax

# mosaic
DoCmd "..mosaic image iraf" mosaic/mosaicimage.fits "mosaicimage iraf" foo linear zscale
DoCmd "..mosaic image iraf datacube" mosaic/naxis4.fits "mosaicimage iraf" foo linear zscale
DoCmd "..mosaic image wcs" mosaic/mosaicimage.fits "mosaicimage wcs" foo linear zscale
DoCmd "..mosaic image wcsp" mosaic/ds9_8amp_2x2.fits "mosaicimage wcsp" foo linear minmax
DoCmd "..mosaic image wfpc2" mosaic/hst.fits "mosaicimage wfpc2" foo linear zscale
DoCmd "..mosaic iraf" mosaic/mosaicimage.fits "mosaic iraf" foo linear zscale
DoCmd "..mosaic iraf datacube" mosaic/naxis4.fits "mosaic iraf" foo linear zscale
DoCmd "..mosaic wcs" mosaic/mosaicimage.fits "mosaic wcs" foo linear zscale
DoCmd "..mosaic wcsp" mosaic/ds9_8amp_2x2.fits "mosaic wcsp" foo linear minmax
#DoSCmd "..mosaic wcs sfits" sfits/float.hdr sfits/float.arr "smosaic wcs" foo linear zscale

# backward compatibility
DoCmd "..mosaic image iraf(bc)" mosaic/mosaicimage.fits mosaicimageiraf foo linear zscale
DoCmd "..mosaic image wcs(bc)" mosaic/mosaicimage.fits mosaicimagewcs foo linear zscale
DoCmd "..mosaic image wfpc2(bc)" mosaic/hst.fits mosaicimagewfpc2 foo linear zscale
DoCmd "..mosaic iraf(bc)" mosaic/mosaicimage.fits mosaiciraf foo linear zscale
DoCmd "..mosaic wcs(bc)" mosaic/mosaicimage.fits mosaicwcs foo linear zscale

# array
DoCmd "..array" array/float_big.arr array 'foo[dim=256,bitpix=-32,arch=big]' linear minmax
DoCmd "..array cube" rgbarray/float_big.rgb array 'foo[dim=256,zdim=3,bitpix=-32,arch=big]' linear minmax

# rgb
DoCmd "..rgbcube" rgbcube/float.fits rgbcube foo linear minmax
DoSCmd "..rgbcube sfits" srgbcube/float.hdr srgbcube/float.arr srgbcube foo linear minmax
DoCmd "..rgbimage" mecube/float.fits rgbimage foo linear minmax

echo "PASSED"
fi

if [ "$1" = "xpa" -o  -z "$1" ]; then
echo "XPA Shm Tests"

echo "Starting DS9..."
if [ `xpaaccess ds9` = no ]
then
    ds9&
fi

i=1
while [ "$i" -le 15 ]
do
    sleep 1
    if [ `xpaaccess ds9` = yes ]
    then
	break
    fi

    i=`expr $i + 1`
done

# basics
DoXPA "..fits" data/img.fits fits foo linear zscale 
DoSXPA "..split fits" sfits/float.hdr sfits/float.arr sfits foo linear zscale
DoXPA "..table" fits/table.fits "" foo log minmax
DoXPA "..table filter" fits/table.fits "" 'foo[bin=rawx,rawy]' log minmax

# mosaics
DoXPA "..mosaic image iraf" mosaic/mosaicimage.fits "mosaicimage iraf" foo linear zscale
DoXPA "..mosaic image iraf datacube" mosaic/naxis4.fits "mosaicimage iraf" foo linear zscale
DoXPA "..mosaic image wcs" mosaic/mosaicimage.fits "mosaicimage wcs" foo linear zscale
DoXPA "..mosaic image wcsp" mosaic/ds9_8amp_2x2.fits "mosaicimage wcs" foo linear minmax
DoXPA "..mosaic image wfpc2" mosaic/hst.fits "mosaicimage wfpc2" foo linear zscale
DoXPA "..mosaic iraf" mosaic/mosaicimage.fits "mosaic iraf" foo linear zscale
DoXPA "..mosaic iraf datacube" mosaic/naxis4.fits "mosaic iraf" foo linear zscale
DoXPA "..mosaic wcs" mosaic/mosaicimage.fits "mosaic wcs" foo linear zscale
DoXPA "..mosaic wcsp" mosaic/ds9_8amp_2x2.fits "mosaicimage wcs" foo linear minmax
#DoSXPA "..sfits mosaic wcs" sfits/float.hdr sfits/float.arr "smosaic wcs" foo linear zscale

# backward compatibility
DoXPA "..mosaic image iraf(bc)" mosaic/mosaicimage.fits mosaicimageiraf foo linear zscale
DoXPA "..mosaic image wcs(bc)" mosaic/mosaicimage.fits mosaicimagewcs foo linear zscale
DoXPA "..mosaic image wfpc2(bc)" mosaic/hst.fits mosaicimagewfpc2 foo linear zscale
DoXPA "..mosaic iraf(bc)" mosaic/mosaicimage.fits mosaiciraf foo linear zscale
DoXPA "..mosaic wcs(bc)" mosaic/mosaicimage.fits mosaicwcs foo linear zscale

# array
DoXPA "..array" array/float_big.arr array 'foo[dim=256,bitpix=-32,arch=big]' linear minmax
DoXPA "..array cube" rgbarray/float_big.rgb array 'foo[dim=256,zdim=3,bitpix=-32,arch=big]' linear minmax

# rgb
xpaset -p ds9 scale linear
xpaset -p ds9 scale mode minmax
xpaset -p ds9 rgb
DoXPA "..rgbcube" rgbcube/float.fits rgbcube foo linear minmax
DoSXPA "..rgbcube sfits" srgbcube/float.hdr srgbcube/float.arr srgbcube foo linear minmax
DoXPA "..rgbimage" mecube/float.fits rgbimage foo linear minmax
xpaset -p ds9 frame delete

xpaset -p ds9 quit
echo "PASSED"
fi

echo "DONE"