ess.conf File Reference

ESS: Electronen-Ion Scan Data; Configuration File. More...

#include "exlib.conf"
#include "daclib.conf"
#include "exlib.h"
#include "daclib.h"
#include "ess.h"

Data Structures

union  SPCHDR
struct  SPCHDR::ESS_type
struct  SPCHDR::ECF_type

Defines

#define CPNAME   "ESS"
#define CPTITL   "Elektron-Stoss-WQ-Scan"
#define CPDATE   "(15Jan03/Hu)"
#define CIDPRG   "ESS "
#define CVERSION   "21may02"
#define MFILNA   70
#define useDATAROUT
#define useCTRLROUT
#define CLKRATE   sysClkRateGet()
#define BASEPRIO   40
#define MAXLEN   0xffff
#define INISTACK   5000
#define INICHCK   VX_FP_TASK
#define INIOPT   VX_FP_TASK
#define MSTRTASK   "tEssMstr"
#define MSTRPRIO   (BASEPRIO+1)
#define MSTRSTACK   7000
#define MSTROPT   VX_FP_TASK
#define MSTROPT   VX_FP_TASK
#define RLTTASK   "tEssRlt"
#define RLTPRIO   (BASEPRIO+0)
#define RLTSTACK   5000
#define RLTOPT   0
#define DATATASK   "tEssData"
#define DATAPRIO   (BASEPRIO+2)
#define DATASTACK   5000
#define DATAOPT   VX_FP_TASK
#define DATATIME   9
#define DATAPAUSE   1
#define CTRLTASK   "tEssCtrl"
#define CTRLPRIO   (BASEPRIO+2)
#define CTRLSTACK   5000
#define CTRLOPT   0
#define CTRLPAUSE   1
#define CTRLECF   ".ecf"
#define BRKTASK   "tEssBrk"
#define BRKPRIO   (BASEPRIO+1)
#define BRKSTACK   5000
#define BRKOPT   0
#define SAVBGDATA
#define CBGTASK   "tEssBg"
#define CBGPRIO   100
#define CBGFILE   "~/ex_home/ex_prog/peakv.o"
#define CBGSYM   "_peak"
#define CBGSTACK   11000
#define CBGOPT   VX_FP_TASK
#define CBGARG1   ",,\"peak_ess.vxw\",,'S'"
#define BGARGS
#define CBGCHECK   FALSE
#define CBGUNLD   TRUE
#define CIDPAR   "STRZ-VXW"
#define CPARNA   "bootHost:/ex_home/ex_param/esspar.vxw"
#define CDFNAM   "data:/spectrum.ess"
#define CHLPNA   "bootHost:/ex_home/ex_help/Oldies/esshlp.txt"
#define CISERV   "servix"
#define CIUSER   "vme-info"
#define CIFILE   "ess/ess.info"
#define ffPARFILE   parfile
#define ffPARMTR   parfile.parmtr
#define ffROUTPAR   parfile.routpar
#define ffDACLIBPAR   parfile.daclibpar
#define ffEXLIBPAR   parfile.exlibpar
#define HEADER0   parfile.header0
#define ccCOMMON   common
#define ccPARMTR   common.parmtr
#define ccDACLIBCOM   common.daclibcom
#define ccEXLIBCOM   common.exlibcom
#define SP1NAM   common.sp1nam
#define HEADER1   common.header1
#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 ZZZZZZ   ffPARMTR.zzzzzz
#define ECOFAC   ffPARMTR.ecofac
#define ICOFAC   ffPARMTR.icofac
#define POSID   ffPARMTR.posid
#define LFTID   ffPARMTR.lftid
#define CT1ID   ffPARMTR.ct1id
#define CT2ID   ffPARMTR.ct2id
#define CT3ID   ffPARMTR.ct3id
#define CT4ID   ffPARMTR.ct4id
#define BOVID   ffPARMTR.bovid
#define ECFTXT   ccPARMTR.ecftxt
#define DRMENU   ffROUTPAR.drmenu
#define DRTYPE   ffROUTPAR.drtype
#define DRBASE   ffROUTPAR.drbase
#define DROFFS   ffROUTPAR.droffs
#define STOPRT   ffROUTPAR.stoprt
#define RDSTAT   ffROUTPAR.rdstat
#define RDSTCL   ffROUTPAR.rdstcl
#define RDDATA   ffROUTPAR.rddata
#define RDDACL   ffROUTPAR.rddacl
#define RDIDNT   ffROUTPAR.rdidnt
#define CRMENU   ffROUTPAR.crmenu
#define CRMENU2   ffROUTPAR.crmenu2
#define CRTYPE   ffROUTPAR.crtype
#define CRBASE   ffROUTPAR.crbase
#define CROFFS   ffROUTPAR.croffs
#define CRCTRL   ffROUTPAR.crctrl
#define CRSTAT   ffROUTPAR.crstat
#define CRADDR   ffROUTPAR.craddr
#define CRDATA   ffROUTPAR.crdata
#define CRINTR   ffROUTPAR.crintr
#define CRIDNT   ffROUTPAR.cridnt
#define CRPRIO   ffROUTPAR.crprio
#define DAC1ADR   0x0010
#define DAC2ADR   0x0011
#define DAC3ADR   0x0012
#define DAC4ADR   0x0070
#define NZTADR   0x0016
#define CRNGADR   0x0017
#define CHDLEN   "1"
#define CEXPMNT   "??????"
#define CSPTYPE   "MCA2"
#define CROWS   " 4"
#define CBYTES   "4"
#define CLTXT   " 80"
#define CDFTXT   "ESS Spectrum --- Strahlenzentrum Universitaet Giessen"
#define CSLEN   512
#define INITSPCHDR
#define SPSTAT   XSPHDR->hdata.spcdat.spcdat_ESS.status
#define RLTCNT   XSPHDR->hdata.spcdat.spcdat_ESS.rltcnt
#define LFTCNT   XSPHDR->hdata.spcdat.spcdat_ESS.lftcnt
#define DATCNT   XSPHDR->hdata.spcdat.spcdat_ESS.datcnt
#define OUTCNT   XSPHDR->hdata.spcdat.spcdat_ESS.outcnt
#define CT1CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct1cnt
#define CT2CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct2cnt
#define CT3CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct3cnt
#define CT4CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct4cnt
#define SEQCNT   XSPHDR->hdata.spcdat.spcdat_ESS.seqcnt
#define BOVCNT   XSPHDR->hdata.spcdat.spcdat_ESS.bovcnt
#define REJCNT   XSPHDR->hdata.spcdat.spcdat_ESS.rejcnt
#define ERRCNT   XSPHDR->hdata.spcdat.spcdat_ESS.errcnt
#define FULCNT   XSPHDR->hdata.spcdat.spcdat_ESS.fulcnt
#define HDATID   XSPHDR->hdata.spcdat.spcdat_ESS.hdatid
#define STAPLO   XSPHDR->hdata.spcdat.spcdat_ESS.staplo
#define SLEN   XSPHDR->hdata.spcdat.spcdat_ESS.slen
#define EXPAR   XSPHDR->hdata.spcdat.spcdat_ESS.expar
#define ECFPRG   XSPHDR->hdata.spcdat.spcdat_ESS.ecfprg
#define GUNTYP   XSPHDR->hdata.spcdat.spcdat_ESS.guntyp
#define GUNTXT   XSPHDR->hdata.spcdat.spcdat_ESS.guntxt
#define GUNPAR   XSPHDR->hdata.spcdat.spcdat_ESS.gunpar
#define DEADTM   XSPHDR->hdata.spcdat.spcdat_ESS.deadtm
#define DTMERR   XSPHDR->hdata.spcdat.spcdat_ESS.dtmerr
#define RUNTIM   XSPHDR->hdata.spcdat.spcdat_ESS.runtim
#define ECFGUNTYP   XSPHDR->hdata.spcdat.spcdat_ECF.guntyp
#define ECFCOMMNT   XSPHDR->hdata.spcdat.spcdat_ECF.commnt
#define ECFLENGTH   XSPHDR->hdata.spcdat.spcdat_ECF.length
#define ECFTYPE   XSPHDR->hdata.spcdat.spcdat_ECF.ecftyp
#define ECFCHANS   XSPHDR->hdata.spcdat.spcdat_ECF.chans
#define ECFMINE   XSPHDR->hdata.spcdat.spcdat_ECF.mine
#define ECFMAXE   XSPHDR->hdata.spcdat.spcdat_ECF.maxe
#define ECFSTTIME   XSPHDR->hdata.spcdat.spcdat_ECF.sttime
#define ECFOFFTIME   XSPHDR->hdata.spcdat.spcdat_ECF.offtime
#define ECFONTIME   XSPHDR->hdata.spcdat.spcdat_ECF.ontime
#define ECFTXTPTR   XSPHDR->hdata.spcdat.spcdat_ECF.txtptr
#define MAXSPECS   2
#define MAXHTYPS   2
#define USHMAX   4
#define HDSCR_ESS   "208i1 1i2 14i4 2i2 13f4 12i1 1i2 3f4 1i4"
#define HDSCR_ECF   "208i1 304i1"
#define INITHTYPES
#define INITSPEPNTR
#define SHOWHDR
#define SHOWXHDR
#define EXTPAR2ASCII
#define INPUTPARS1
#define INPUTPARS2
#define INPUTPARS5
#define INPUTXPARS1
#define INPUTXPARS2
#define INPUTXPARS5
#define INITPARS
#define SPECONFm
#define SPECONFi
#define SPECONFp
#define SPECONFf
#define DATAVARS
#define DATAMACRO

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
}


Detailed Description

ESS: Electronen-Ion Scan Data; Configuration File.

Author:
Kurt Huber; Strahlenzentrum J.L.-Universitaet GIESSEN
Date:
05.10.1999
Version:
15.08.2008
modification history
--------------------
15aug08 kHu	DOXYGEN comments added
28may03 kHu	CIFILE geaendert
29apr03 kHu	*.conf, *.h Files neu geordnet
16apr03 kHu	Fit gemacht fuer -Wall GCC-Option
15apr03 kHu	Help mit INFO auf Server
04apr03 kHu	define CPDATE EMKSTR(SIGNAT)
15jan03 kHu	dac10.c: stets File-Name abfragen
14jan03 kHu	dac10/25.c: neu: Edit header of spectrum
16aug02 kHu	BGARGS um (int)&HEADER0 erweitert
21may02 kHu	Set data ID bits
15may02 kHu	Bug in ess25.c beseitigt
07may02 kHu	ECF-ID Check: ECF1 -> ECF wegen ECFx in ECFm1/2 Files
07may02 kHu	"Update parameters" in inxgun..()
30apr02	kHu	Init task -> Master task
28feb02 kHu	Parameters for background program
18feb02 kHu	Argumente beim Start: PNAME,PTITLE,PARNAM,HLPNAM
28aug01 kHu	BGARGS/Z ...,(int)xCntrl,...
03apr01 kHu	EXTPAR2ASCII macro
08jan01 kHu	ERRCNTo, ERRCNTd, ERRCNTf
19dec00 kHu	Ion-/Elektr.-Strom Konversionsfaktoren veraenderbar
04oct00 kHu	eigener Parameter-File bei BG-Programm (BGPNAM)
13sep00 kHu	tReadp() -> tMenu
07sep00 kHu	DRMENU, DRTYPE, CRMENU, CRTYPE, CRPRIO neu
29mar00 kHu	MSTRSTACK = 6000
20mar00 kHu	IHDLEN, IBYTES
23feb00 kHu	Header Typen Beschreibung geaendert
24jan00 kHu	guntyp, gunpar[10] in header
11nov99 kHu	Newprog Standard
28okt99 kHu	x.conf x.h neu geordnet
22okt99 kHu	mit ESW abgeglichen
05oct99 kHu	neu aus ESW

Define Documentation

#define BASEPRIO   40

#define BGARGS

Value:

(int)BGARG1,(int)SPEBUF,(int)FILNAM,(int)xCntrl,        \
                (int)STATUS,(int)&HEADER0,0,0,0,0

#define BOVCNT   XSPHDR->hdata.spcdat.spcdat_ESS.bovcnt

#define BOVID   ffPARMTR.bovid

#define BRKOPT   0

#define BRKPRIO   (BASEPRIO+1)

#define BRKSTACK   5000

#define BRKTASK   "tEssBrk"

#define CBGARG1   ",,\"peak_ess.vxw\",,'S'"

#define CBGCHECK   FALSE

#define CBGFILE   "~/ex_home/ex_prog/peakv.o"

#define CBGOPT   VX_FP_TASK

#define CBGPRIO   100

#define CBGSTACK   11000

#define CBGSYM   "_peak"

#define CBGTASK   "tEssBg"

#define CBGUNLD   TRUE

#define CBYTES   "4"

#define ccCOMMON   common

#define ccDACLIBCOM   common.daclibcom

#define ccEXLIBCOM   common.exlibcom

#define ccPARMTR   common.parmtr

#define CDFNAM   "data:/spectrum.ess"

#define CDFTXT   "ESS Spectrum --- Strahlenzentrum Universitaet Giessen"

#define CEXPMNT   "??????"

#define CHDLEN   "1"

#define CHLPNA   "bootHost:/ex_home/ex_help/Oldies/esshlp.txt"

#define CIDPAR   "STRZ-VXW"

#define CIDPRG   "ESS "

#define CIFILE   "ess/ess.info"

#define CISERV   "servix"

#define CIUSER   "vme-info"

#define CLKRATE   sysClkRateGet()

#define CLTXT   " 80"

#define CPARNA   "bootHost:/ex_home/ex_param/esspar.vxw"

#define CPDATE   "(15Jan03/Hu)"

#define CPNAME   "ESS"

#define CPTITL   "Elektron-Stoss-WQ-Scan"

#define CRADDR   ffROUTPAR.craddr

#define CRBASE   ffROUTPAR.crbase

#define CRCTRL   ffROUTPAR.crctrl

#define CRDATA   ffROUTPAR.crdata

#define CRIDNT   ffROUTPAR.cridnt

#define CRINTR   ffROUTPAR.crintr

#define CRMENU   ffROUTPAR.crmenu

#define CRMENU2   ffROUTPAR.crmenu2

#define CRNGADR   0x0017

#define CROFFS   ffROUTPAR.croffs

#define CROWS   " 4"

#define CRPRIO   ffROUTPAR.crprio

#define CRSTAT   ffROUTPAR.crstat

#define CRTYPE   ffROUTPAR.crtype

#define CSLEN   512

#define CSPTYPE   "MCA2"

#define CT1CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct1cnt

#define CT1ID   ffPARMTR.ct1id

#define CT2CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct2cnt

#define CT2ID   ffPARMTR.ct2id

#define CT3CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct3cnt

#define CT3ID   ffPARMTR.ct3id

#define CT4CNT   XSPHDR->hdata.spcdat.spcdat_ESS.ct4cnt

#define CT4ID   ffPARMTR.ct4id

#define CTRLECF   ".ecf"

#define CTRLOPT   0

#define CTRLPAUSE   1

#define CTRLPRIO   (BASEPRIO+2)

#define CTRLSTACK   5000

#define CTRLTASK   "tEssCtrl"

#define CVERSION   "21may02"

#define DAC1ADR   0x0010

#define DAC2ADR   0x0011

#define DAC3ADR   0x0012

#define DAC4ADR   0x0070

#define DATAMACRO

#define DATAOPT   VX_FP_TASK

#define DATAPAUSE   1

#define DATAPRIO   (BASEPRIO+2)

#define DATASTACK   5000

#define DATATASK   "tEssData"

#define DATATIME   9

#define DATAVARS

Value:

int essstat = 0;                                                \
        unsigned short savpos, savct1, savct2, savct3, savct4;          \
        DATAC *pchnl;

#define DATCNT   XSPHDR->hdata.spcdat.spcdat_ESS.datcnt

#define DEADTM   XSPHDR->hdata.spcdat.spcdat_ESS.deadtm

#define DFLTPAR   ffPARMTR.dflts

#define DRBASE   ffROUTPAR.drbase

#define DRMENU   ffROUTPAR.drmenu

#define DROFFS   ffROUTPAR.droffs

#define DRTYPE   ffROUTPAR.drtype

#define DTMERR   XSPHDR->hdata.spcdat.spcdat_ESS.dtmerr

#define ECFCHANS   XSPHDR->hdata.spcdat.spcdat_ECF.chans

#define ECFCOMMNT   XSPHDR->hdata.spcdat.spcdat_ECF.commnt

#define ECFGUNTYP   XSPHDR->hdata.spcdat.spcdat_ECF.guntyp

#define ECFLENGTH   XSPHDR->hdata.spcdat.spcdat_ECF.length

#define ECFMAXE   XSPHDR->hdata.spcdat.spcdat_ECF.maxe

#define ECFMINE   XSPHDR->hdata.spcdat.spcdat_ECF.mine

#define ECFOFFTIME   XSPHDR->hdata.spcdat.spcdat_ECF.offtime

#define ECFONTIME   XSPHDR->hdata.spcdat.spcdat_ECF.ontime

#define ECFPRG   XSPHDR->hdata.spcdat.spcdat_ESS.ecfprg

#define ECFSTTIME   XSPHDR->hdata.spcdat.spcdat_ECF.sttime

#define ECFTXT   ccPARMTR.ecftxt

#define ECFTXTPTR   XSPHDR->hdata.spcdat.spcdat_ECF.txtptr

#define ECFTYPE   XSPHDR->hdata.spcdat.spcdat_ECF.ecftyp

#define ECOFAC   ffPARMTR.ecofac

#define ERRCNT   XSPHDR->hdata.spcdat.spcdat_ESS.errcnt

#define EXPAR   XSPHDR->hdata.spcdat.spcdat_ESS.expar

#define EXTPAR2ASCII

Value:

/* Convert extended header to ASCII (ess25.c) */                \
    Cnvxpar(fd1);

#define ffDACLIBPAR   parfile.daclibpar

#define ffEXLIBPAR   parfile.exlibpar

#define ffPARFILE   parfile

#define ffPARMTR   parfile.parmtr

#define ffROUTPAR   parfile.routpar

#define FULCNT   XSPHDR->hdata.spcdat.spcdat_ESS.fulcnt

#define GUNPAR   XSPHDR->hdata.spcdat.spcdat_ESS.gunpar

#define GUNTXT   XSPHDR->hdata.spcdat.spcdat_ESS.guntxt

#define GUNTYP   XSPHDR->hdata.spcdat.spcdat_ESS.guntyp

#define HDATID   XSPHDR->hdata.spcdat.spcdat_ESS.hdatid

#define HDSCR_ECF   "208i1 304i1"

#define HDSCR_ESS   "208i1 1i2 14i4 2i2 13f4 12i1 1i2 3f4 1i4"

#define HEADER0   parfile.header0

#define HEADER1   common.header1

#define ICOFAC   ffPARMTR.icofac

#define IDPAR   ffPARMTR.idpar

#define INICHCK   VX_FP_TASK

#define INIOPT   VX_FP_TASK

#define INISTACK   5000

#define INITHTYPES

Value:

/* ESS-type, spectrum 0 only */                         \
    {{TRUE, FALSE},     /* Type valid for spectrum 0 */         \
    CIDHDRvxw,          /* Required header ID in IDHDR */       \
    "ESS",              /* Required program ID in IDPRG */      \
    HDSCR_ESS,          /* Header descriptor string */          \
    ESS_HEADER},        /* Header type */                       \
    /* ECF-ULT-type, spectrum 1 only */                         \
    {{FALSE, TRUE},     /* Type valid for spectrum 1 */         \
    NULL,               /* Any header ID in IDHDR */            \
    "ECF",              /* Required program ID in IDPRG */      \
    HDSCR_ECF,          /* Header descriptor string */          \
    ECF_HEADER}

#define INITPARS

Value:

RLTCNT = 0;             \
    LFTCNT = 0;         \
    DATCNT = 0;         \
    OUTCNT = 0;         \
    CT1CNT = 0;         \
    CT2CNT = 0;         \
    CT3CNT = 0;         \
    CT4CNT = 0;         \
    BOVCNT = 0;         \
    SEQCNT = 0;         \
    REJCNT = 0;         \
    FULCNT = 0;         \
    ERRCNT = 0;         \
    ERRCNTo = 0;        \
    ERRCNTd = 0;        \
    ERRCNTf = 0;        \

#define INITSPCHDR

Value:

{0,                                     \
    0,0,0,0,0,0,0,0,0,0,0,0,0,0,        \
    0,                                  \
    CSLEN,      /* Length of single spectrum  */\
    {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.},\
    "",                                 \
    0,                                  \
    "",                                 \
    {0.,0.,0.,0.,0.,0.,0.,0.,0.,0.},    \
    0.,0.,                              \
    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 */       \
    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 */       \
    NULL,                                                       \
    {{0},{0},{0},{0}}},

#define INPUTPARS1

Value:

{                                                               \
                                                                                \
    TEXT[lTEXT-1] = '\0';       /* Title of spectrum */                         \
    IHDLEN = 1;                 /* Blocks of header */                          \
    IBYTES = 4;                 /* Bytes per channel */                         \
    IROWS = atol(CROWS);        /* Number of lines */                           \
                                                                                \
    /* Show Experiment Control File data */                                     \
    puts("  === Experiment Control File data ===");                             \
    printf("ECF type    : %s\n", GUNTXT);                                       \
    printf("ECF program : %s\n", ECFPRG);                                       \
    printf("%s", ECFTXT);                                                       \
    printf("Length of spectrum : 4 * %hu\n\n\n", SLEN);                         \
                                                                                \
    tMenu(NULL, 1,                                                              \
        "%$-"lTEXTs"s\n"                                                        \
/*      "  Length of single spectrum = %6hu\n"   */                             \
/*      "  Timer = %$10lu s\n"   */                                             \
        "  Deadtime of event counter = %@7.3f +- %@6.3f µs\n",                  \
        TEXT,                                                                   \
/*      &SLEN,   */                                                             \
/*      &RUNTIM, */                                                             \
        &DEADTM, 0., 1.e+10, &DTMERR, 0., 1.e+10                                \
        );                                                                      \
                                                                                \
    ICOLS = SLEN;               /* SLEN set by ECFile */                        \
}

#define INPUTPARS2

Value:

{                                                               \
                                                                                \
    TEXT[lTEXT-1] = '\0';       /* Title of spectrum */                         \
    IHDLEN = 1;                 /* Blocks of header */                          \
    IBYTES = 4;                 /* Bytes per channel */                         \
                                                                                \
    tMenu(NULL, 1,                                                              \
        "%$-"lTEXTs"s\n\n"                                                      \
        "  Timer = %$10lu s",                                                   \
        TEXT,                                                                   \
        &RUNTIM);                                                               \
}

#define INPUTPARS5

Value:

{                                                               \
                                                                                \
    TEXT[lTEXT-1] = '\0';       /* Title of spectrum */                         \
                                                                                \
    tMenu(NULL, 1,                                                              \
        "%$-"lTEXTs"s\n"                                                        \
        " \n"                                                                   \
        "  Deadtime of event counter = %@7.3f +- %@6.3f µs\n",                  \
        TEXT,                                                                   \
        &DEADTM, 0., 1.e+10, &DTMERR, 0., 1.e+10                                \
        );                                                                      \
}

#define INPUTXPARS1

Value:

/* New spectrum [ess25.c] */            \
    if(Inxpar(0) == ERROR) reply = ERROR;

#define INPUTXPARS2

Value:

/* Continue spectrum [ess25.c] */               \
    if(Inxpar(1) == ERROR) reply = ERROR;

#define INPUTXPARS5

Value:

/* Edit header [ess25.c] */                     \
    if(Inxpar(2) == ERROR) reply = ERROR;

#define LFTCNT   XSPHDR->hdata.spcdat.spcdat_ESS.lftcnt

#define LFTID   ffPARMTR.lftid

#define MAXHTYPS   2

#define MAXLEN   0xffff

#define MAXSPECS   2

#define MFILNA   70

#define MSTROPT   VX_FP_TASK

#define MSTROPT   VX_FP_TASK

#define MSTRPRIO   (BASEPRIO+1)

#define MSTRSTACK   7000

#define MSTRTASK   "tEssMstr"

#define NZTADR   0x0016

#define OUTCNT   XSPHDR->hdata.spcdat.spcdat_ESS.outcnt

#define PEXPMNT   ffPARMTR.pexpmnt

#define PIDPRG   ffPARMTR.idprg

#define POSID   ffPARMTR.posid

#define PVERSION   ffPARMTR.version

#define RDDACL   ffROUTPAR.rddacl

#define RDDATA   ffROUTPAR.rddata

#define RDIDNT   ffROUTPAR.rdidnt

#define RDSTAT   ffROUTPAR.rdstat

#define RDSTCL   ffROUTPAR.rdstcl

#define REJCNT   XSPHDR->hdata.spcdat.spcdat_ESS.rejcnt

#define RLTCNT   XSPHDR->hdata.spcdat.spcdat_ESS.rltcnt

#define RLTOPT   0

#define RLTPRIO   (BASEPRIO+0)

#define RLTSTACK   5000

#define RLTTASK   "tEssRlt"

#define RUNTIM   XSPHDR->hdata.spcdat.spcdat_ESS.runtim

#define SAVBGDATA

#define SEQCNT   XSPHDR->hdata.spcdat.spcdat_ESS.seqcnt

#define SHOWHDR

Value:

{                                       \
    long datcnt, ct1cnt, ct2cnt, ct3cnt, ct4cnt;        \
                                                        \
    /* Snapshot to avaid asynchronous counters */       \
    /* on slow output (VT200) */                        \
    datcnt = DATCNT;                                    \
    ct1cnt = CT1CNT;                                    \
    ct2cnt = CT2CNT;                                    \
    ct3cnt = CT3CNT;                                    \
    ct4cnt = CT4CNT;                                    \
                                                        \
    printf("Length: %lu * %lu\n", IROWS, ICOLS);        \
    printf("Timer : %lus\n", RUNTIM);                   \
    putchar('\n');                                      \
    printf("%10lu Realtime\n", RLTCNT);                 \
    printf("%10lu Lifetime\n", LFTCNT);                 \
    printf("%10lu Positions received\n", datcnt);       \
    printf("%10lu Positions out of range\n", OUTCNT);   \
    printf("%10lu Counter 1 received\n", ct1cnt);       \
    printf("%10lu Counter 2 received\n", ct2cnt);       \
    printf("%10lu Counter 3 received\n", ct3cnt);       \
    printf("%10lu Counter 4 received\n", ct4cnt);       \
    printf("%10lu Data sequence errors\n", SEQCNT);     \
    printf("%10lu Buffer overruns\n", BOVCNT);          \
    printf("%10lu Rejected data\n", REJCNT);            \
    printf("%10lu Fifo overflows\n", FULCNT);           \
    printf("%10lu Data errors\n", ERRCNT);              \
}

#define SHOWXHDR

Value:

/* Show extended header if loaded (ess24.c) */          \
    if(HDRLDD) Shoxhdr();

#define SLEN   XSPHDR->hdata.spcdat.spcdat_ESS.slen

#define SP0NAM   ffPARMTR.sp0nam

#define SP1NAM   common.sp1nam

#define SPECONFf

Value:

/* Special configuration */             \
        /* !=======> Set data ID bits */                        \
        void SetIDs(void) {                                     \
            Termnl(2, 0, " ");  /* Reset scrolling region */    \
            tMenu("Set data identifications", 1,                \
                "  ESS Position interface = 0x%@2.2hx\n"        \
                "  Counter 1              = 0x%@2.2hx\n"        \
                "  Counter 2              = 0x%@2.2hx\n"        \
                "  Counter 3              = 0x%@2.2hx\n"        \
                "  Counter 4              = 0x%@2.2hx\n"        \
                "  Lifetime               = 0x%@2.2hx\n"        \
                "  Buffer overruns        = 0x%@2.2hx\n",       \
                &POSID, 0, 0x3f,                                \
                &CT1ID, 0, 0x3f,                                \
                &CT2ID, 0, 0x3f,                                \
                &CT3ID, 0, 0x3f,                                \
                &CT4ID, 0, 0x3f,                                \
                &LFTID, 0, 0x3f,                                \
                &BOVID, 0, 0x3f);                               \
            return;                                             \
        }

#define SPECONFi

Value:

/* Special configuration */     \
        if(cout-- == 1) SetIDs();       /* Set data ID bits */  \
        if(cout-- == 1) Setcfes();      /* Set electron current conversion factors */   \
        if(cout-- == 1) Setcfis();

#define SPECONFm

Value:

/* Special configuration */     \
        " %$m Data identification bits\n"               \
        " %$m Ion current converter\n"                  \
        " %$m Electron current converter\n"

#define SPECONFp

Value:

/* Special configuration */     \
        SetIDs();       /* Set data ID bits */          \
        Setcfes();      /* Set electron current conversion factors */   \
        Setcfis();

#define SPSTAT   XSPHDR->hdata.spcdat.spcdat_ESS.status

#define STAPLO   XSPHDR->hdata.spcdat.spcdat_ESS.staplo

#define STOPRT   ffROUTPAR.stoprt

#define useCTRLROUT

#define useDATAROUT

#define USHMAX   4

#define ZZZZZZ   ffPARMTR.zzzzzz


Enumeration Type Documentation

Enumerator:
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 


Generated on Wed Oct 15 16:17:19 2008 for Experiment-Software by  doxygen 1.5.6