
This is our new RELEASE-4_0 branch which was taken from ansto/93d9a7c Conflicts: .gitignore SICSmain.c asynnet.c confvirtualmot.c counter.c devexec.c drive.c event.h exebuf.c exeman.c histmem.c interface.h motor.c motorlist.c motorsec.c multicounter.c napi.c napi.h napi4.c network.c nwatch.c nxscript.c nxxml.c nxxml.h ofac.c reflist.c scan.c sicshipadaba.c sicsobj.c site_ansto/docs/Copyright.txt site_ansto/instrument/lyrebird/config/tasmad/sicscommon/nxsupport.tcl site_ansto/instrument/lyrebird/config/tasmad/taspub_sics/tasscript.tcl statusfile.c tasdrive.c tasub.c tasub.h tasublib.c tasublib.h
65 lines
2.0 KiB
C
65 lines
2.0 KiB
C
|
|
/*----------------------------------------------------------------------
|
|
SICS interface to the triple axis spectrometer calculation
|
|
module.
|
|
|
|
copyright: see file COPYRIGHT
|
|
|
|
Mark Koennecke, April-May 2005
|
|
----------------------------------------------------------------------*/
|
|
#ifndef TASUB
|
|
#define TASUB
|
|
#include <stdio.h>
|
|
#include "tasublib.h"
|
|
#include "cell.h"
|
|
#include "motor.h"
|
|
|
|
/*------------------- defines for tasMode -----------------------------------*/
|
|
typedef struct{
|
|
pObjectDescriptor pDes;
|
|
tasMachine machine;
|
|
int reflectionList;
|
|
lattice cell;
|
|
tasQEPosition target;
|
|
tasQEPosition current;
|
|
int tasMode;
|
|
int outOfPlaneAllowed;
|
|
double targetEn, actualEn;
|
|
int mustRecalculate;
|
|
int mustDrive;
|
|
int mustDriveQ;
|
|
pMotor motors[12];
|
|
char motname[12][32];
|
|
tasReflection r1, r2;
|
|
pIDrivable mono;
|
|
long monoTaskID;
|
|
void *monoData;
|
|
int ubValid;
|
|
int silent;
|
|
int stopFixed; /* flag to stop multiple fixed messages in scans*/
|
|
char *updater;
|
|
long groupID;
|
|
}tasUB, *ptasUB;
|
|
|
|
|
|
/*--------------------- the tas virtual motor data structure ---------------------*/
|
|
typedef struct {
|
|
pObjectDescriptor pDes;
|
|
pIDrivable pDriv;
|
|
ptasUB math;
|
|
int code;
|
|
}tasMot, *ptasMot;
|
|
|
|
/*--------------------------------------------------------------------*/
|
|
|
|
int TasUBFactory(SConnection *pCon,SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
int TasUBWrapper(SConnection *pCon,SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
|
|
|
|
int findReflection(int list, int idx, ptasReflection r);
|
|
int tasUpdate(SConnection *pCon, ptasUB self);
|
|
void setStopFixed(ptasUB self, int val);
|
|
#endif
|