39 static char *spaces =
" ";
60 {
"allowvelshift", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
allowVelShift, 13,
do_otfGridAllowVelShift,
"0 | 1, toggle allowVelShift"},
62 {
"badchan", 1, 1, 1,
INT,
"%d ", (
void *)&
ignoreBadChans, 7,
do_badChan,
"0 | 1, toggle badchannel checking"},
63 {
"baselines", 1, 1, 8,
INT,
"%d ", (
void *)&
otf.
baselines[0], 9,
do_baseLines,
"8n, Set baseline regions to these 8 numbers"},
65 {
"clearignore", 1, 0, 0, 0, NULL, NULL, 11,
do_clearIgnore,
"Clear Ignore scan array."},
67 {
"debug", 1, 1, 1,
INT,
"%d ", (
void *)&
debug, 5,
do_debug,
"Turn on Debugging Output"},
69 {
"ephemobj", 1, 1, 1,
INT,
"%d ", (
void *)&
ephemObj, 8,
do_ephemObj,
"Lock Grid For Ephem's"},
71 {
"etimeclear", 1, 1, 1, 0, NULL, NULL, 10,
do_etimeClear,
"REset Function Call Time Listing"},
72 {
"etimedump", 1, 1, 1, 0, NULL, NULL, 9,
do_etimeDump,
"Dump .h format of Function Calls"},
73 {
"etimeshow", 1, 1, 1, 0, NULL, NULL, 9,
do_etimeShow,
"Show Function Call Time Listing"},
75 {
"fixedzero", 1, 1, 1,
INT,
"%d ", (
void *)&
fixedZero, 9,
do_fixedzero,
"Set zero point to center"},
77 {
"filename", 1, 0, 0, 0, NULL, NULL, 8,
do_filename,
"Set the Data File Name"},
78 {
"gfilename", 1, 0, 0, 0, NULL, NULL, 9,
do_gfilename,
"Set the Gains File Name"},
80 {
"hard_copy", 1, 0, 0, 0, NULL, NULL, 9,
do_hardCopy,
"Print PS file of selected window"},
81 {
"help", 0, 0, 0, 0, NULL, NULL, 4,
do_help,
"Displays this list"},
83 {
"ignore", 1, 1, 0, 0, NULL, NULL, 6,
do_ignoreScan,
"v n, ignore scan n in version v."},
84 {
"ig_gains", 1, 1, 1,
INT,
"%d ", (
void *)&
ignore_gains, 8,
do_ignoreGains,
"0 | 1, Toggle gains ignoring"},
85 {
"ig_pos", 1, 1, 1,
INT,
"%d ", (
void *)&
ignorePos, 6,
do_ignorePos,
"Ignore Source Position"},
86 {
"ig_repaints", 1, 1, 1,
INT,
"%d ",(
void *)&
otf.
ignoreAllRepaints,11,
do_ignoreRepaints,
"Ignore All Repaints Until NOT Set"},
88 {
"load", 0, 0, 0, 0, NULL, NULL, 4,
do_load,
"Load a Script of Commands"},
90 {
"mallocmap", 1, 0, 0, 0, NULL, NULL, 9,
do_mallocmap,
"Print out malloc map."},
92 {
"otf3dcube", 1, 0, 0, 0, NULL, NULL, 9,
do_otf3dcube,
"bc, ec: plot 3d of Grid"},
93 {
"otf3dplot", 1, 0, 0, 0, NULL, NULL, 9,
do_otf3dplot,
"bc, ec: plot 3d of Grid"},
94 {
"otfbadchan", 1, 0, 0, 0, NULL, NULL, 10,
do_otfBadChan,
"Array of bad channels"},
95 {
"otfbaseline", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
gridBaseLine, 11,
do_otfBaseLine,
"0 | 1, toggle baseline removal"},
96 {
"otfbeamarm", 1, 1, 1,
INT,
"%d ",(
void *)&
otf.
armBeamLocation,10,
do_otfBeamArm,
"0 | 1 Arm the flag to set Beam Location"},
97 {
"otfbeamsize", 1, 1, 1, 0, NULL, NULL, 11,
do_otfBeamSize,
"0 | 1 [ra dec], toggle Beam Size Marker"},
98 {
"otfchannelmap", 1, 0, 0, 0, NULL, NULL, 13,
do_otfChannelMap,
"c,x,y,s: Draw a Channel Map x by y, start @ c, space s"},
99 {
"otfchans", 1, 1, 2,
INT,
"%d ", (
void *)&
otf.
int_chans, 8,
do_otfChans,
"bc ec, set int. range bc to ec"},
100 {
"otfcolorchoice", 1, 0, 0, 0, NULL, NULL, 14,
do_otfColorChoice,
"gray | pseudo | flame[1-6], Set otf-plot Color Choice"},
101 {
"otfcutoff", 1, 0, 0, 0, NULL, NULL, 9,
do_otfCutOff,
"Lower level of an OTF Image"},
102 {
"otfdisplayarray", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
arrayNum, 15,
do_otfDisplayArray,
"0 | 1 | 2 | 3 | 4 | 5, Time ra dec az el"},
103 {
"otfdebug", 1, 0, 0, 0, NULL, NULL, 8,
do_otfSpectraDebug,
"n, set OTF Spectral plot to n"},
104 {
"otffixbadcells", 1, 0, 0, 0, NULL, NULL, 14,
do_otfFixBadCells,
"Fill in miss'n OTF cells"},
105 {
"otfgamma", 1, 0, 0, 0, NULL, NULL, 8,
do_otfGamma,
"v, Set otf-plot Gamma factor to v"},
106 {
"otfgridcellsizedec", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
manNyquistDec, 18,
do_otfGridCellSizeDec,
"x, Set Grid Dec size to x"},
107 {
"otfgridcellsizera", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
manNyquistRa, 17,
do_otfGridCellSizeRa,
"x, Set Grid Ra size to x"},
108 {
"otfgridchancompress", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
chanCompress, 19,
do_otfGridChanCompress,
"i, Set Chan Smooth factor i"},
109 {
"otfgridcols", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
cols, 11,
do_otfGridCols,
"c, Set Map X Size in Cols"},
110 {
"otfgriddec", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
manMapDec, 10,
do_otfGridDec,
"x, Set Grid Center Dec to x"},
111 {
"otfgriddump", 1, 0, 0, 0, NULL, NULL, 11,
do_otfGridDump,
"filename, dump OTF values to file"},
112 {
"otfgridfreqres", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
freqres, 14,
do_otfGridFreqres,
"freq, Set Grid Freq Resolution to 'freq'"},
113 {
"otfgridinit", 1, 0, 0, 0, NULL, NULL, 11,
do_otfGridInit,
"Reinitializes OTF grid array"},
114 {
"otfgridload", 1, 0, 0, 0, NULL, NULL, 11,
do_otfGridLoad,
"bs es [delay], loads scans bs to es"},
115 {
"otfgridnoint", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
noint, 12,
do_otfGridNoint,
"noint, Set Grid number of Channels to 'noint'"},
116 {
"otfgridra", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
manMapRa, 9,
do_otfGridRa,
"x, Set Grid Center Ra to x"},
117 {
"otfgridrestfreq", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
restfreq, 15,
do_otfGridRestfreq,
"freq, Set Grid Rest Freq to freq"},
118 {
"otfgridrows", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
rows, 11,
do_otfGridRows,
"c, Set Map Y Size in Rows"},
119 {
"otfgridscale", 1, 0, 0, 0, NULL, NULL, 12,
do_otfGridScale,
"v, Set otf-plot Scaling factor to v"},
120 {
"otfgridsizedec", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
manMapHeight, 14,
do_otfGridSizeDec,
"x, Set Grid Dec H to x"},
121 {
"otfgridsizera", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
manMapWidth, 13,
do_otfGridSizeRa,
"x, Set Grid Ra W to x"},
122 {
"otfgridsum", 1, 1, 1, 0, NULL, NULL, 10,
do_otfSpectralSum,
"Show Sum of all Scans in Grid"},
123 {
"otfgridvelocity", 1, 1, 1,
DOUBLE,
"%f ", (
void *)&
otf.
velocity, 15,
do_otfGridVelocity,
"vel, Set Grid Velocity to vel"},
124 {
"otfifchoice", 1, 1, 1,
INT,
"0x%x ", (
void *)&
otf.
chanSelOTF, 11,
do_otfIFchoice,
"n, Load IF Number n"},
125 {
"otfinterp", 1, 0, 0, 0, NULL, NULL, 9,
do_otfInterp,
"Do a XY interpolation of OTF grid"},
126 {
"otflistcells", 1, 0, 0, 0, NULL, NULL, 12,
do_otfListCells,
"List info on each map cell"},
127 {
"otfloadchoice", 1, 0, 0, 0, NULL, NULL, 13,
do_otfLoadChoice,
"Preview|Step|Fast, Load"},
128 {
"otflockscale", 1, 0, 0, 0, NULL, (
void *)&
otf.
lockScale, 12,
do_otfLockScale,
"Lock Grid Scale"},
129 {
"otfnumcolors", 1, 0, 0, 0, NULL, NULL, 12,
do_otfNumColors,
"n, Set otf-plot Color Range to n"},
130 {
"otfregular", 1, 0, 0, 0, NULL, NULL, 10,
do_otfRegular,
"Return to raw OTF grid data"},
131 {
"otfregiondelete", 1, 0, 0, 0, NULL, NULL, 15,
do_remRegions,
"Delete all Regions"},
132 {
"otfregionlist", 1, 0, 0, 0, NULL, NULL, 13,
do_listRegions,
"List Loaded Regions"},
133 {
"otfregionload", 1, 0, 0, 0, NULL, NULL, 13,
do_loadRegion,
"Load a Region file"},
134 {
"otfregionon", 1, 0, 0,
INT,
"%d ", (
void *)&
otf.
regionshow, 11,
do_showRegion,
"Show Region Outlines"},
135 {
"otfrmbadchan", 1, 0, 0, 0, NULL, NULL, 12,
do_otfRmBadChan,
"Remove Bad Channels From Grid"},
136 {
"otfrms", 1, 0, 0, 0, NULL, NULL, 6,
do_otfRms,
"Plot rms distribution on Map"},
137 {
"otfrmrms", 1, 0, 0,
INT,
"%d ", NULL, 8,
do_otfRmRMS,
"rmslimit, Remove Cells with rms > rmslimit"},
138 {
"otftsys", 1, 0, 0, 0, NULL, NULL, 7,
do_otfTsys,
"Plot Tsys distribution on Map"},
139 {
"otftime", 1, 0, 0, 0, NULL, NULL, 7,
do_otfTime,
"Plot Total Integrated Time on Map"},
140 {
"otfsendplot", 1, 0, 0, 0, NULL, NULL, 11,
do_otfSendPlot,
"Send the Current Spectral Plot to Linuxpops"},
141 {
"otfsinglebin", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
singleOtfBin, 12,
do_otfSingleBin,
"n, num of channels to bin in singleplot"},
142 {
"otfsinglechan", 1, 1, 1,
INT,
"%d ", (
void *)&
otf.
singleChan, 13,
do_otfSingleChan,
"n, set the OTF singleplot to chan #n"},
143 {
"otfslice", 1, 0, 0, 0, NULL, NULL, 8,
do_otfSlice,
"Write out a single slice through map"},
144 {
"otfspike", 1, 0, 0, 0, NULL, NULL, 8,
spikeCheck,
"max, Zero any fabs(data) > max"},
145 {
"otfstatus", 1, 0, 0, 0, NULL, NULL, 9,
do_otfStatus,
"Print a brief summary of the current OTF map"},
146 {
"otfvelrun", 1, 0, 0, 0, NULL, NULL, 9,
do_otfVelRun,
"b e # dir [delay], vel movie"},
147 {
"otfzap", 1, 0, 0, 0, NULL, NULL, 6,
do_zapCell,
"col row, zap the data in cell: col x row"},
148 {
"wotfinterp", 1, 0, 0, 0, NULL, NULL, 9,
interpAndWrite,
"Write out a XY interpolation of OTF grid"},
150 {
"printdata", 1, 0, 0, 0, NULL, NULL, 9,
do_printData,
"n, Print out N Lines of Data"},
151 {
"printignorescans", 1, 0, 0, 0, NULL, NULL, 16,
do_printIgnoreScans,
"Print out scans ignored"},
152 {
"printmapscans", 1, 0, 0, 0, NULL, NULL, 13,
do_printMapScans,
"Print out scans in OTF grid"},
154 {
"q", 0, 0, 0, 0, NULL, NULL, 1,
do_quit,
"Exit program"},
155 {
"quit", 0, 0, 0, 0, NULL, NULL, 4,
do_quit,
"Exit program"},
157 {
"scan_done", 1, 0, 0, 0, NULL, NULL, 9,
do_scanDone,
"n, display scan #n"},
158 {
"set_clip", 1, 1, 0, 0, NULL, NULL, 8,
do_setClip,
"n, Set beginning and ending clip length"},
159 {
"status", 1, 0, 0, 0, NULL, NULL, 6,
do_status,
"Shows brief status msg"},
160 {
"stop", 1, 0, 0, 0, NULL, NULL, 4,
do_stop,
"Stop any loops,load,velr"},
162 {
"xsync", 1, 0, 0, 0, NULL, NULL, 5,
do_xsync,
"0 | 1, toggle Xlib synchronize"},
164 { NULL, 0, 0, 0, 0, NULL, NULL, 0, (
void *)0, NULL }
190 fp = fopen(buf,
"r");
194 log_msg(
"DATASERV: Unable to open %s", buf);
198 while(fgets(inBuf, 256, fp) != NULL)
200 if(!strncmp(inBuf,
"#", 1))
228 static char cmdbuf[4096];
256 if(strstr(buf,
"fb_scan"))
261 if(strstr(buf,
"aos_scan"))
266 if(strstr(buf,
"dbe_scan"))
271 if(!strncmp(buf,
"scan_done", 9))
277 for(p=parse_table;p->
msg;p++)
279 if(!strncmp(p->
msg, buf, p->
len))
281 if(p->
log && strlen(buf) < 2048)
297 log_msg(
"Command %s NOT found", buf);
335 sprintf(
oldBuf,
"scan_done %d", (
int)scanNum);
367 ignoreBadChans = atoi(buf);
426 cp = strtok(buf,
" \n\t");
428 sprintf(tbuf,
"Command Arguments\n");
429 printf(
"\n%s\n", tbuf);
436 for(p=parse_table;p->
msg;p++)
440 if(!strncmp(p->
msg, cp, strlen(cp)))
442 sprintf(tbuf,
"%s: %s", p->
msg, spaces);
443 strcpy(tbuf+18, p->
help);
444 printf(
"%s\n", tbuf);
454 sprintf(tbuf,
"%s: %s", p->
msg, spaces);
455 strcpy(tbuf+18, p->
help);
456 printf(
"%s\n", tbuf);
481 cp = strtok(buf,
" \n\t");
485 cp = strtok(NULL,
" \n\t");
492 log_msg(
"Dataserv: clipdata command missing n designator");
498 log_msg(
"Dataserv: clipdata command missing 'be' designator");
527 ignore_gains = atoi(buf);
558 char *cp, win[80], file[128], tmp[256];
564 cp = strtok(tmp,
" \n\r");
569 log_msg(
"Dataserv: Hardcopy command incomplete, window");
572 cp = strtok(NULL,
" \n\r");
577 log_msg(
"Dataserv: Hardcopy command incomplete, filename");
580 cp = strtok(NULL,
" \n\r");
585 log_msg(
"Dataserv: Hardcopy command incomplete, land");
588 cp = strtok(NULL,
" \n\r");
593 log_msg(
"Dataserv: Hardcopy command incomplete, rev");
607 system(
"lpr /tmp/dataserv.pdf");
608 system(
"chmod 666 /tmp/dataserv.pdf");
617 system(
"lpr /tmp/dataserv.pdf");
618 system(
"chmod 666 /tmp/dataserv.pdf");
626 char *cp, win[80], file[128], tmp[256];
631 cp = strtok(tmp,
" \n\r");
636 log_msg(
"Dataserv: make_gif command incomplete");
639 cp = strtok(NULL,
" \n\r");
644 log_msg(
"Dataserv: make_gif command incomplete");
656 char *
string, *last_token, *delim;
678 string[strlen(
string)+1] =
'\0';
680 }
else if(!last_token || !*last_token || !delim || !*delim)
684 ptr = last_token + strlen(last_token);
688 for(n=strlen(delim); *
ptr; ptr++) {
689 for(i=0; i < n && *ptr != delim[i]; i++)
700 for( ; *
ptr; ptr++) {
701 for(i=0; i < n && *ptr != delim[i]; i++)
727 fixedZero = atoi(buf);
749 domarker = atoi(buf);
801 ephemObj = atoi(buf);
822 if(i == 0 || i == 2 || i == 4 || i == 8)
1035 if(f >= -90.0 || f <= 90.0)
1070 if(i >=0 && i < 100)
1099 cp = strtok(tmp,
"\t\n ");
1104 cp = strtok(NULL,
"\t\n ");
1151 if(strstr(buf,
"step"))
1156 if(strstr(buf,
"fast"))
1198 cp = strtok(buf,
" \n\t");
1203 if(n == 16 || n == 32 || n == 64 || n == 128 || n == 256)
1257 cp = strtok(buf,
" \n\t");
1260 if(!
strcmp(cp,
"pseudo"))
1265 if(!
strcmp(cp,
"flame1"))
1270 if(!
strcmp(cp,
"flame2"))
1275 if(!
strcmp(cp,
"flame3"))
1280 if(!
strcmp(cp,
"flame4"))
1285 if(!
strcmp(cp,
"flame5"))
1290 if(!
strcmp(cp,
"flame6"))
1295 if(!
strcmp(cp,
"flame7"))
1300 if(!
strcmp(cp,
"flame8"))
1305 if(!
strcmp(cp,
"flame9"))
1363 cp = strtok(buf,
" \n\t");
1391 cp = strtok(buf,
" \n\t");
1427 sprintf(tb,
"MSG_RPT Dataserv: Setting OTF Single Display Channel to %d.",
otf.
singleChan);
1465 sprintf(tb,
"MSG_RPT Dataserv: Setting OTF Bin Number to %d.",
otf.
singleOtfBin);
1483 static char *ar[] = {
"AUTO",
"TIME",
"RA",
"DEC",
"AZ",
"EL" };
1500 sprintf(tb,
"MSG_RPT Dataserv: Setting OTF Display Array to %s.",
1586 cp = strtok(tmp,
" \n\t");
1593 log_msg(
"Bad begin chan specifier in otfchans");
1597 cp = strtok((
char *)NULL,
" \n\t");
1604 log_msg(
"Bad ending chan specifier in otfchans");
1633 cp = strtok(buf,
"\n\t ");
1640 log_msg(
"do_otfBeamSize(), no arg specified");
1644 cp = strtok(NULL,
"\n\t ");
1650 cp = strtok(NULL,
"\n\t ");
1679 cp = strtok(buf,
"\n\t ");
1686 log_msg(
"do_otfBeamArm(), no arg specified");
1703 cp = strtok(buf,
"\n\t ");
1710 log_msg(
"do_otfBaseLine(), no baseline specified");
1740 cp = strtok(tmp,
" \n\t");
1749 cp = strtok(NULL,
" \n\t");
struct SOCK * last_msg(void)
int do_otfGridRows(char *buf)
struct SPECTRA_DISPLAY_PARAMS sdp[MAX_IF_NUMS]
int spikeCheck(char *buf)
int do_printIgnoreScans(void)
int printKeySymHelp(void)
char * strcmprs(char *str)
int deNewLineIt(char *buf)
int xgr_makeGif(char *win, char *file)
int do_ephemObj(char *buf)
int do_otfGridFreqres(char *buf)
int to_monitor(char *buf)
int do_otfBadChan(char *buf)
int do_otfChans(char *buf)
int do_otfGridAllowVelShift(char *buf)
int do_otfTsys(char *buf)
int do_otfRmRMS(char *buf)
int verifyScanDone(int scn)
int do_otfColorChoice(char *buf)
int do_otfTime(char *buf)
int do_otfGridChanCompress(char *buf)
int do_otfLockScale(char *buf)
int do_fixedzero(char *buf)
int do_otfGridSizeDec(char *buf)
int do_diagHarCopyServ(void)
int do_otfBaseLine(char *buf)
int do_otfGridNoint(char *buf)
struct MAIL_PARSE parse_table[]
int do_gfilename(char *buf)
int do_otfDisplayArray(char *buf)
int do_ignorePos(char *buf)
int doOtfGridRePaint(void)
int do_otfSingleBin(char *buf)
int do_otfNumColors(char *buf)
int do_listRegions(char *buf)
int log_msg(const char *fmt,...)
int xgr_setNumColors(int n)
int do_otfSlice(char *buf)
int do_badChan(char *buf)
int do_otfGridCellSizeRa(char *buf)
int do_otf3dplot(char *buf)
int do_otfRmBadChan(void)
int do_otfGridSizeRa(char *buf)
int xgr_hardCopy(char *win, int land, int rev, char *file)
int do_ignoreGains(char *buf)
int do_hardCopy(char *buf)
int do_otfListCells(char *buf)
struct SOCK * mailBoxes[MAX_MAIL_BOXES]
int do_otfGridVelocity(char *buf)
int do_loadRegion(char *buf)
int do_filename(char *buf)
int do_otfGamma(char *buf)
int do_printData(char *buf)
int do_otfGridRa(char *buf)
int do_makeGif(char *buf)
int do_otfGridScale(char *buf)
int do_otfSpectralSum(char *buf)
int do_scanDone(char *buf)
int do_diagHarCopyGrid(void)
int do_otfSpectraDebug(char *buf)
int interpAndWrite(struct XGR_ *s)
int do_otfSingleChan(char *buf)
int do_otfBeamArm(char *buf)
char * sock_name(struct SOCK *handle)
int displayRequestedOtf(void)
int badChanArray[MAX_BAD_CHAN]
int do_ignoreRepaints(char *buf)
int do_remRegions(char *buf)
int do_ignoreScan(char *buf)
int do_markers(char *buf)
int xgr_setColorChoice(int c)
int do_otfLoadChoice(char *buf)
int do_otfBeamSize(char *buf)
int do_printMapScans(void)
int do_otfCutOff(char *buf)
int readMail(char *buf, int len)
int do_otf3dcube(char *buf)
int do_otfGridCellSizeDec(char *buf)
int do_tiltmeter(char *buf)
int do_otfIFchoice(char *buf)
int do_otfVelRun(char *buf)
int do_baseLines(char *buf)
int do_otfFixBadCells(char *buf)
char * vxstrtok(char *string, char *last_token, char *delim)
int do_setClip(char *buf)
int do_zapCell(char *buf)
int do_showRegion(char *buf)
int do_otfGridLoad(char *buf)
int do_otfGridCols(char *buf)
int do_otfGridDec(char *buf)
int recomputeBaseLines(void)
int do_otfSendPlot(char *buf)
int do_otfGridRestfreq(char *buf)
int do_otfChannelMap(char *buf)