Files
sicspsi/amorset.h
koennecke 3ab4bcdfb9 - Fixed a normalisation problem in diffscan when the first value
did not have enough counts
- Reduced polling frequency in emon
- Fixed a scriptcontext bug which would cause it to dump core in SctTransact
  on interrupts
- Fixed an issue with missing <nl> at the end of batch files
- Added a feature which does not call halt when counting stops in hmcontrol.c
  This is necessary for the BOA CCD
- Initalized doNotFree properly in hipadaba.c
- Added the travelling salesman reflection measurement algorithm
- Added another component to amorset
- Removed old SicsWait from nserver.c
- Added a means to nxscript to write 16 bit data for BOA
- Modified tasub to accept a drivabel as a motor and not only a motor.
  This became necessary to make EIGER work as A2 on EIGER is a virtual
  motor
2011-09-23 07:55:49 +00:00

55 lines
1.7 KiB
C

/*-------------------------------------------------------------------
AMORSET together with amorcomp and amordrive implement the position
control facility for the reflectometer AMOR. This uses the algorithm
with the beam height as the baseline.
copyright: see file COPYRIGHT
Mark Koennecke, October 2005
--------------------------------------------------------------------*/
#ifndef AMORSET
#define AMORSET
#include "amorcomp.h"
typedef struct {
pObjectDescriptor pDes;
pIDrivable pDriv;
pIDrivable listDrive;
amorComp chopper;
amorComp M;
amorComp DS;
amorComp D1;
amorComp D2;
amorComp D3;
amorComp EL;
amorComp S;
amorComp D4;
amorComp A;
amorComp D5;
amorComp D;
double targetm2t;
double targets2t;
double targetath;
double actualm2t;
double actuals2t;
double actualath;
int mustDrive;
int mustRecalculate;
int driveList;
double dspar;
double detectoroffset;
int verbose;
}amorSet, *pamorSet;
/*--------------------------------------------------------------------*/
int AmorSetFactory(SConnection *pCon, SicsInterp *pSics, void *pData,
int argc, char *argv[]);
int AmorSetAction(SConnection *pCon, SicsInterp *pSics, void *pData,
int argc, char *argv[]);
/*============ helper functions for the virtual motors ===============*/
void amorSetMotor(pamorSet amor, int type, double value);
double amorGetMotor(pamorSet amor, SConnection *pCon, int type);
#endif