#include "exlib.conf"
#include "danlib.conf"
#include "spe1a.conf"
#include "wqa1a.conf"
#include "exlib.h"
#include "danlib.h"
#include "dan7x.h"
#include "dan7a.h"
#include "spe1a.h"
#include "wqa1a.h"
#include "wqa.h"
Data Structures | |
| union | SPCHDR |
| struct | SPCHDR::ESW_VAX_type |
| struct | SPCHDR::ESW_VXW_type |
| struct | AUXHDAT |
Defines | |
| #define | CPNAME "WQA" |
| #define | CPTITL "Analysis of ESW data" |
| #define | CPDATE "(14Feb03/Hu)" |
| #define | CEXPMNT "??????" |
| #define | CIDPRG "WQA" |
| #define | CVERSION "21dec01" |
| #define | CSTMODE 'I' |
| #define | MFILNA 70 |
| #define | EDCLEN 30 |
| #define | INISTACK 5000 |
| #define | INICHCK VX_FP_TASK |
| #define | INIOPT VX_FP_TASK |
| #define | MSTRTASK "tWqaMstr" |
| #define | MSTRPRIO 100 |
| #define | MSTRSTACK 12000 |
| #define | MSTROPT VX_FP_TASK |
| #define | MSTROPT VX_FP_TASK |
| #define | CPARNA "~/ex_home/ex_param/wqapar.vxw" |
| #define | CDFNAM "~/ex_home/ex_data/spenam.spe" |
| #define | CHLPNA "~/ex_home/ex_help/wqahlp.txt" |
| #define | CISERV "servix" |
| #define | CIUSER "vme-info" |
| #define | CIFILE "wqa/wqa.info" |
| #define | GUNFILE "~/ex_home/ex_param/wqa.guns" |
| #define | ffPARFILE parfile |
| #define | ffPARMTR parfile.parmtr |
| #define | ffEXLIBPAR parfile.exlibpar |
| #define | ffPARSPE parfile.dataSpe.data7a[0] |
| #define | ccCOMMON common |
| #define | ccPARMTR common.parmtr |
| #define | ccDANLIBCOM common.danlibcom |
| #define | ccEXLIBCOM common.exlibcom |
| #define | ccHDATA common.auxhdat |
| #define | IDPAR ffPARMTR.idpar |
| #define | PIDPRG ffPARMTR.idprg |
| #define | PVERSION ffPARMTR.version |
| #define | DFLTPAR ffPARMTR.dflts |
| #define | PEXPMNT ffPARMTR.pexpmnt |
| #define | SP0NAM ffPARMTR.sp0nam |
| #define | SP1NAM ffPARMTR.sp1nam |
| #define | LISNAM ffPARMTR.listnam |
| #define | RSLTNAM ffPARMTR.rsltnam |
| #define | DEADTM ffPARMTR.deadtm |
| #define | DTMERR ffPARMTR.dtmerr |
| #define | STARTUP ffPARMTR.startup |
| #define | STARTEND ffPARMTR.startend |
| #define | PERRKF ffPARMTR.perrkf |
| #define | PERREC ffPARMTR.perrec |
| #define | PERRIC ffPARMTR.perric |
| #define | PERRCW ffPARMTR.perrcw |
| #define | PERRDE ffPARMTR.perrde |
| #define | EDITCMD ffPARMTR.editcmd |
| #define | OPTANA ccPARMTR.optana |
| #define | DAGsFAC ccPARMTR.dagsfac |
| #define | DSPMOD ccPARMTR.dspmod |
| #define | PFNAME ccPARMTR.pfname |
| #define | HEADER0 ccPARMTR.header0 |
| #define | HEADER1 ccPARMTR.header1 |
| #define | HEADER2 ccPARMTR.header2 |
| #define | CHDLEN "" |
| #define | CSPTYPE "" |
| #define | CROWS "" |
| #define | CCOLS "" |
| #define | CBYTES "" |
| #define | CLTXT "" |
| #define | CDFTXT "" |
| #define | INITSPCHDR |
| #define | INITAUXHDAT 0.,0.,0.,0.,0. |
| #define | ACCpp(v) |
| #define | ACCnp(v) |
| #define | ACCap(v) |
| #define | ACCpn(v) |
| #define | RLTCNT ACCpp(rltcnt) |
| #define | LFTCNT ACCpp(lftcnt) |
| #define | DATCNT ACCpp(datcnt) |
| #define | OUTCNT ACCpp(outcnt) |
| #define | CT1CNT ACCpp(ct1cnt) |
| #define | CT2CNT ACCpp(ct2cnt) |
| #define | CT3CNT ACCpp(ct3cnt) |
| #define | CT4CNT ACCpp(ct4cnt) |
| #define | SEQCNT ACCpp(seqcnt) |
| #define | FULCNT ACCpp(fulcnt) |
| #define | REJCNT ACCpp(rejcnt) |
| #define | ERRCNT ACCpp(errcnt) |
| #define | HDATID ACCpp(hdatid) |
| #define | SLEN ACCpp(slen) |
| #define | EXPAR ACCpp(expar) |
| #define | ECFPRG ACCpp(ecfprg) |
| #define | GUNTYP ACCpp(guntyp) |
| #define | ULINSE ACCpn(ulinse) |
| #define | GUNPAR ACCnp(gunpar) |
| #define | HDEADTM ACCnp(deadtm) |
| #define | HDTMERR ACCnp(dtmerr) |
| #define | ERRKF ACCap(errkf) |
| #define | ERREC ACCap(errec) |
| #define | ERRIC ACCap(erric) |
| #define | ERRCW ACCap(errcw) |
| #define | ERRDE ACCap(errde) |
| #define | S5SCAL ACCpp(s5scal) |
| #define | MAXSPECS 3 |
| #define | MAXHTYPS 4 |
| #define | USHMAX 4 |
| #define | HDSCR_ESW_VAX "208i1 1i2 1i4 3i2 13i4 2i2 13f4 12i1 1i2 1f4 30i1 1f4 1i4" |
| #define | HDSCR_ESW_VXW "208i1 1i2 13i4 1i2 13f4 12i1 1i2 10f4 8f4 1i4" |
| #define | pHEADER spepntr[iselspe].xsphdr |
| #define | pHEADER0 spepntr[0].xsphdr |
| #define | pHEADER1 spepntr[1].xsphdr |
| #define | pHEADER2 spepntr[2].xsphdr |
| #define | INITHTYPES |
| #define | INITSPEPNTR |
| #define | FIRSTPARFILE |
| #define | SHOWHDR |
| #define | SHOWXHDR Shoxhdr(); |
Enumerations | |
| enum | headertypes { MTX_HEADER, MCA_HEADER, MCT_HEADER, MS2_HEADER, MSC_HEADER, PCM_HEADER, MCA_VAX_HEADER, MCA_VXW_HEADER, ALL_VAX_HEADER, ALL_VXW_HEADER, MCA_VAX_HEADER, MCA_VXW_HEADER, ALL_VAX_HEADER, ALL_VXW_HEADER, DRM_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_1_HEADER, ECF_VAX_HEADER, ECF_0_HEADER, ECF_1_HEADER, ECF_1_HEADER, ESI_VAX_HEADER, ESW_VAX_HEADER, ESW_VXW_HEADER, ESS_VAX_HEADER, ESS_VXW_HEADER, ESS_HEADER, ECF_HEADER, ESW_HEADER, MASS_HEADER, ESW_VAX_HEADER, ESW_VXW_HEADER, ESS_VAX_HEADER, ESS_VXW_HEADER } |
Features:
Display of ESW Data
Cross Section Calculation
modification history -------------------- 14oct08 kHu DOXYGEN comments added 23jul04 kHu Help mit INFO auf Server 29apr03 kHu *.conf, *.h Files neu geordnet 16apr03 kHu Fit gemacht fuer -Wall GCC-Option 02apr03 kHu define CPDATE EMKSTR(SIGNAT) 02apr03 kHu Portierung auf Linux 14feb03 kHu neu default Terminal/Printer, xImport() 06jan03 kHu wqa10.c,wqa11.c: strtup: BOOL -> int; loadpar raus 12sep02 kHu Updpar() geaendert 12sep02 kHu #define pHEADER/0/1 16aug02 kHu *xfnctn, *xspebuf nach danlib.h 08jul02 kHu Init task -> Master task 28feb02 kHu more args on Start: PNAME,PTITLE,PARNAM,HLPNAM,stmode 21dec01 kHu Printing neu 18sep01 kHu Updpar(1) in Shohdr() 09oct00 kHu FIRSTPARFILE: data7. -> data7.[0] 04oct00 kHu Uebergabe fuer Name von Parameter-File (PFNAME) 13sep00 kHu tReadp() -> tMenu 29mar00 kHu MINSTACK = 11000, CHCKOPT, TASKOPT 10mar00 kHu Inpar(1/3): TOTLEN IHDLEN BLOCKT 10mar00 kHu IBYTES new 15feb00 kHu erweitert auf verschiedene Header Typen 24jan00 kHu guntyp, gunpar[10] in header 19nov99 kHu Zero spectrum if test run 11nov99 kHu Newprog Standard 06sep99 kHu neu aus iap.conf
| #define ACCap | ( | v | ) |
Value:
(*( (CHTDATA == ESW_VAX_HEADER) ? \ &(ccHDATA.v) : \ (CHTDATA == ESW_VXW_HEADER) ? \ &(((struct ESW_VXW_type *)XHSPCD)->v) : \ &(((struct ESW_VXW_type *)Illacc(#v))->v) ))
| #define ACCnp | ( | v | ) |
Value:
(*( (CHTDATA == ESW_VXW_HEADER) ? \ &(((struct ESW_VXW_type *)XHSPCD)->v) : \ &(((struct ESW_VXW_type *)Illacc(#v))->v) ))
| #define ACCpn | ( | v | ) |
Value:
(*( (CHTDATA == ESW_VAX_HEADER) ? \ &(((struct ESW_VAX_type *)XHSPCD)->v) : \ &(((struct ESW_VAX_type *)Illacc(#v))->v) ))
| #define ACCpp | ( | v | ) |
Value:
(*( (CHTDATA == ESW_VAX_HEADER) ? \ &(((struct ESW_VAX_type *)XHSPCD)->v) : \ (CHTDATA == ESW_VXW_HEADER) ? \ &(((struct ESW_VXW_type *)XHSPCD)->v) : \ &(((struct ESW_VXW_type *)Illacc(#v))->v) ))
| #define CBYTES "" |
| #define ccCOMMON common |
| #define ccDANLIBCOM common.danlibcom |
| #define ccEXLIBCOM common.exlibcom |
| #define ccHDATA common.auxhdat |
| #define CCOLS "" |
| #define ccPARMTR common.parmtr |
| #define CDFNAM "~/ex_home/ex_data/spenam.spe" |
| #define CDFTXT "" |
| #define CEXPMNT "??????" |
| #define CHDLEN "" |
| #define CHLPNA "~/ex_home/ex_help/wqahlp.txt" |
| #define CIDPRG "WQA" |
| #define CIFILE "wqa/wqa.info" |
| #define CISERV "servix" |
| #define CIUSER "vme-info" |
| #define CLTXT "" |
| #define CPARNA "~/ex_home/ex_param/wqapar.vxw" |
| #define CPDATE "(14Feb03/Hu)" |
| #define CPNAME "WQA" |
| #define CPTITL "Analysis of ESW data" |
| #define CROWS "" |
| #define CSPTYPE "" |
| #define CSTMODE 'I' |
| #define CT1CNT ACCpp(ct1cnt) |
| #define CT2CNT ACCpp(ct2cnt) |
| #define CT3CNT ACCpp(ct3cnt) |
| #define CT4CNT ACCpp(ct4cnt) |
| #define CVERSION "21dec01" |
| #define DAGsFAC ccPARMTR.dagsfac |
| #define DATCNT ACCpp(datcnt) |
| #define DEADTM ffPARMTR.deadtm |
| #define DFLTPAR ffPARMTR.dflts |
| #define DSPMOD ccPARMTR.dspmod |
| #define DTMERR ffPARMTR.dtmerr |
| #define ECFPRG ACCpp(ecfprg) |
| #define EDCLEN 30 |
| #define EDITCMD ffPARMTR.editcmd |
| #define ERRCNT ACCpp(errcnt) |
| #define ERRCW ACCap(errcw) |
| #define ERRDE ACCap(errde) |
| #define ERREC ACCap(errec) |
| #define ERRIC ACCap(erric) |
| #define ERRKF ACCap(errkf) |
| #define EXPAR ACCpp(expar) |
| #define ffEXLIBPAR parfile.exlibpar |
| #define ffPARFILE parfile |
| #define ffPARMTR parfile.parmtr |
| #define ffPARSPE parfile.dataSpe.data7a[0] |
| #define FIRSTPARFILE |
| #define FULCNT ACCpp(fulcnt) |
| #define GUNFILE "~/ex_home/ex_param/wqa.guns" |
| #define GUNPAR ACCnp(gunpar) |
| #define GUNTYP ACCpp(guntyp) |
| #define HDATID ACCpp(hdatid) |
| #define HDEADTM ACCnp(deadtm) |
| #define HDSCR_ESW_VAX "208i1 1i2 1i4 3i2 13i4 2i2 13f4 12i1 1i2 1f4 30i1 1f4 1i4" |
| #define HDSCR_ESW_VXW "208i1 1i2 13i4 1i2 13f4 12i1 1i2 10f4 8f4 1i4" |
| #define HDTMERR ACCnp(dtmerr) |
| #define HEADER0 ccPARMTR.header0 |
| #define HEADER1 ccPARMTR.header1 |
| #define HEADER2 ccPARMTR.header2 |
| #define IDPAR ffPARMTR.idpar |
| #define INICHCK VX_FP_TASK |
| #define INIOPT VX_FP_TASK |
| #define INISTACK 5000 |
| #define INITAUXHDAT 0.,0.,0.,0.,0. |
| #define INITHTYPES |
Value:
/* ESW-VAX-type, spectrum 0 only */ \ {{TRUE, FALSE, FALSE}, /* Type valid for spectrum 0 */ \ CIDHDRvax, /* Required header ID in IDHDR */ \ "ESW", /* Required program ID in IDPRG */ \ HDSCR_ESW_VAX, /* Header descriptor string */ \ ESW_VAX_HEADER}, /* Header type */ \ /* ESW-VXW-type, spectrum 0 only */ \ {{TRUE, FALSE, FALSE}, /* Type valid for spectrum 0 */ \ CIDHDRvxw, /* Required header ID in IDHDR */ \ "ESW", /* Required program ID in IDPRG */ \ HDSCR_ESW_VXW, /* Header descriptor string */ \ ESW_VXW_HEADER}, /* Header type */ \ /* Program ID not checked, VAX-type, spectrum 1 and 2 */ \ {{FALSE, TRUE, TRUE}, /* Type valid for spectrum 1, 2 */\ CIDHDRvax, /* Required header ID in IDHDR */ \ NULL, /* Program ID in IDPRG checked later */ \ HDSCR_ESW_VAX, /* Header descriptor string */ \ ESW_VAX_HEADER}, /* Header type */ \ /* Program ID not checked, VXW-type, spectrum 1 and 2 */ \ {{FALSE, TRUE, TRUE}, /* Type valid for spectrum 1, 2 */\ CIDHDRvxw, /* Required header ID in IDHDR */ \ NULL, /* Program ID in IDPRG checked later */ \ HDSCR_ESW_VXW, /* Header descriptor string */ \ ESW_VXW_HEADER} /* Header type */ \
| #define INITSPCHDR |
Value:
{{0, \
}}
| #define INITSPEPNTR |
Value:
/* Spectrum 0 */ \ {0,0,0,0,0,0,0,0,0, \ SP0NAM, /* File name of spectrum */ \ NULL, NULL, NULL, \ &HEADER0, /* Pointer to extracted header */ \ &HEADER0.hdata.spcdat, /* Special header data */ \ &HEADER0, /* Pointer to extracted header */ \ &HEADER0.hdata.spcdat, /* Special header data */ \ NULL, \ {{0},{0},{0},{0}}}, /* USHMAX times 0 */ \ /* Spectrum 1 */ \ {0,0,0,0,0,0,0,0,0, \ SP1NAM, /* File name of spectrum */ \ NULL, NULL, NULL, \ &HEADER1, /* Pointer to extracted header */ \ &HEADER1.hdata.spcdat, /* Special header data */ \ &HEADER1, /* Pointer to extracted header */ \ &HEADER1.hdata.spcdat, /* Special header data */ \ NULL, \ {{0},{0},{0},{0}}}, /* USHMAX times 0 */ \ /* Spectrum 2 */ \ {0,0,0,0,0,0,0,0,0, \ NULL, /* File name of spectrum */ \ NULL, NULL, NULL, \ &HEADER2, /* Pointer to extracted header */ \ &HEADER2.hdata.spcdat, /* Special header data */ \ &HEADER2, /* Pointer to extracted header */ \ &HEADER2.hdata.spcdat, /* Special header data */ \ NULL, \ {{0},{0},{0},{0}}}, /* USHMAX times 0 */ \
| #define LFTCNT ACCpp(lftcnt) |
| #define LISNAM ffPARMTR.listnam |
| #define MAXHTYPS 4 |
| #define MAXSPECS 3 |
| #define MFILNA 70 |
| #define MSTROPT VX_FP_TASK |
| #define MSTROPT VX_FP_TASK |
| #define MSTRPRIO 100 |
| #define MSTRSTACK 12000 |
| #define MSTRTASK "tWqaMstr" |
| #define OPTANA ccPARMTR.optana |
| #define OUTCNT ACCpp(outcnt) |
| #define PERRCW ffPARMTR.perrcw |
| #define PERRDE ffPARMTR.perrde |
| #define PERREC ffPARMTR.perrec |
| #define PERRIC ffPARMTR.perric |
| #define PERRKF ffPARMTR.perrkf |
| #define PEXPMNT ffPARMTR.pexpmnt |
| #define PFNAME ccPARMTR.pfname |
| #define pHEADER0 spepntr[0].xsphdr |
| #define pHEADER1 spepntr[1].xsphdr |
| #define pHEADER2 spepntr[2].xsphdr |
| #define PIDPRG ffPARMTR.idprg |
| #define PVERSION ffPARMTR.version |
| #define REJCNT ACCpp(rejcnt) |
| #define RLTCNT ACCpp(rltcnt) |
| #define RSLTNAM ffPARMTR.rsltnam |
| #define S5SCAL ACCpp(s5scal) |
| #define SEQCNT ACCpp(seqcnt) |
| #define SHOWHDR |
Value:
Updpar(0x80); /* Update special parameters if online analysis */ \ printf("Length: 5 * %5lu\n", (unsigned long)SPELEN/5); \ putchar('\n'); \ printf("%10lu Realtime\n", (unsigned long)RLTCNT); \ printf("%10lu Lifetime\n", (unsigned long)LFTCNT); \ printf("%10lu Positions received\n", (unsigned long)DATCNT); \ printf("%10lu Positions out of range\n", (unsigned long)OUTCNT); \ printf("%10lu Counter 1 received\n", (unsigned long)CT1CNT); \ printf("%10lu Counter 2 received\n", (unsigned long)CT2CNT); \ printf("%10lu Counter 3 received\n", (unsigned long)CT3CNT); \ printf("%10lu Counter 4 received\n", (unsigned long)CT4CNT); \ printf("%10lu Data sequence errors\n", (unsigned long)SEQCNT); \ printf("%10lu Rejected data\n", (unsigned long)REJCNT); \ printf("%10lu Fifo overflows\n", (unsigned long)FULCNT); \ printf("%10lu Data errors\n", (unsigned long)ERRCNT); \
| #define SHOWXHDR Shoxhdr(); |
| #define SLEN ACCpp(slen) |
| #define SP0NAM ffPARMTR.sp0nam |
| #define SP1NAM ffPARMTR.sp1nam |
| #define STARTEND ffPARMTR.startend |
| #define STARTUP ffPARMTR.startup |
| #define ULINSE ACCpn(ulinse) |
| #define USHMAX 4 |
| enum headertypes |
1.5.6