;+ ; Describes the BANDMODE object, whichs contains all ; parameter values for one band. ; ; :Author: ; Baptiste Cecconi ; ; :History: ; 2004/07/23: Created ; ; 2004/07/23: Last Edit ;- FUNCTION bandmode::get_bandmode ;+ ; Returns all the parameters of the mode in a string array in order to ; print it ;- common MODE_TAB mode=strarr(11) mode[0]='Band '+bandname[self.band] i=1 if (self.antennaX ne 0) then begin mode[i]=' Antenna X: '+ antenX[self.antennaX] i=i+1 endif if (self.antennaZ ne 0) then begin mode[i]=' Antenna Z: '+antenZ[self.antennaZ] i=i+1 endif if (self.freqfilt ne 0) then begin mode[i]=' N freq: '+freqfilt[self.freqfilt] i=i+1 endif if (self.auto ne 0) then begin mode[i]=' auto: '+onoff[self.auto] i=i+1 endif if (self.cross ne 0) then begin mode[i]=' cross: '+onoff[self.cross] i=i+1 endif if (self.df ne 0) then begin mode[i]=' df: '+onoff[self.df] i=i+1 endif if (self.integ_time ne 0) then begin mode[i]=" Integration time: "+timeinteg[self.integ_time] i=i+1 endif if (self.repeatcount ne 0) then begin mode[i]=' Repeat count: '+strtrim(string(self.repeatcount), 2) i=i+1 endif if (self.band eq 3 or self.band eq 5) then begin; H1 or H2 if (self.fmin ne 0) then begin mode[i]=' Minimum frequency: '+sign[self.fmin_sup]+strtrim(string(self.fmin), 2) i=i+1 endif if (self.fmax ne 0) then begin mode[i]=' Maximum frequency: '+sign[self.fmax_inf]+strtrim(string(self.fmax), 2) i=i+1 endif endif return, mode(0:i-1) end ;------------------------------------------------- FUNCTION bandmode::init, band, X, Z, nfreqfilt, auto, cross, Df, integtime, $ repcount, fminsup, fmin, fmaxinf, fmax, step ;------------------------------------------------- self.band=band self.antennaX=X self.antennaZ=Z self.freqfilt=nfreqfilt self.auto=auto self.cross=cross self.Df=Df self.integ_time=integtime self.repeatcount=repcount ; for H1 and H2 self.fmin_sup=fminsup self.fmin=fmin self.fmax_inf=fmaxinf self.fmax=fmax self.step=step return, 1 end ;------------------------------------------------- PRO bandmode::cleanup ;------------------------------------------------- end ;------------------------------------------------- FUNCTION bandmode::get_band ;------------------------------------------------- return, self.band end ;------------------------------------------------- FUNCTION bandmode::get_repeatcount ;------------------------------------------------- return, self.repeatcount end ;------------------------------------------------- FUNCTION bandmode::get_integtime ;------------------------------------------------- return, self.integ_time end ;------------------------------------------------- FUNCTION bandmode::get_freqfilt ;------------------------------------------------- return, self.freqfilt end ;------------------------------------------------- FUNCTION bandmode::get_auto ;------------------------------------------------- return, self.auto end ;------------------------------------------------- FUNCTION bandmode::get_cross ;------------------------------------------------- return, self.cross end ;------------------------------------------------- FUNCTION bandmode::get_df ;------------------------------------------------- return, self.df end ;------------------------------------------------- FUNCTION bandmode::get_antennaX ;------------------------------------------------- return, self.antennaX end ;------------------------------------------------- FUNCTION bandmode::get_antennaZ ;------------------------------------------------- return, self.antennaZ end ;------------------------------------------------- FUNCTION bandmode::get_fminsup ;------------------------------------------------- return, self.fmin_sup end ;------------------------------------------------- FUNCTION bandmode::get_fmin ;------------------------------------------------- return, self.fmin end ;------------------------------------------------- FUNCTION bandmode::get_fmaxinf ;------------------------------------------------- return, self.fmax_inf end ;------------------------------------------------- FUNCTION bandmode::get_fmax ;------------------------------------------------- return, self.fmax end ;------------------------------------------------- FUNCTION bandmode::get_step ;------------------------------------------------- return, self.step end ;+ ; bandmode__define is a procedure that <behavior desc here> ;- PRO bandmode__define define={BANDMODE, $ band:0, $ ;(-, A, B, C, AB, BC, ABC, -, H1, -, H2) integ_time:0, $ freqfilt:0, $ auto:0, $ cross:0, $ Df:0, $ antennaX:0, $ ;(Off, +X, -X, +-X) antennaZ:0, $ ;(Off, On) repeatcount:0, $ ; for H1 and H2 fmin_sup:0, $ fmin:0, $ fmax_inf:0, $ fmax:0, $ step:0} end