Files
sics/reflist.h
Ferdi Franceschini 10d29d597c Cleaned up ANSTO code to merge with sinqdev.sics
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
2015-04-23 20:49:26 +10:00

63 lines
2.1 KiB
C

/**
* Reflection list: a configurable list of reflections and
* their setting angles. To be used for four circle and possibly
* TAS diffraction.
*
* copyright: see File COPYRIGHT
*
* Mark Koennecke, July 2008
*/
#ifndef REFLIST_H_
#define REFLIST_H_
#include <sics.h>
#include <sicsobj.h>
/**
* This is an internal creation command: it only creates the data
* structure but does not add the commands
* \param name The name of the reflection list
* \return A SICSOBJ representing a new reflection list
*/
pSICSOBJ MakeReflectionListInt(char *name);
/**
* This is the standard SICS creation function for reflection lists
*/
int MakeReflectionList(SConnection * pCon, SicsInterp * pSics,
void *data, int argc, char *argv[]);
/**
* This creates a full reflection list with commands and adds it to the
* interpreter.
* \param pCon for error messages
* \param pSics the interpreter to add the command to
* \param The name of the reflection list
* \return A SICSOBJ representing the reflection list
*/
pSICSOBJ CreateReflectionList(SConnection * pCon, SicsInterp * pSics,
char *name);
void ConfigureReflectionListIndex(pSICSOBJ refl, char *header);
void ConfigureReflectionListSettings(pSICSOBJ refl, char *header);
void ClearReflectionList(pSICSOBJ refl);
int NewListReflection(pSICSOBJ refl);
void DelListReflection(pSICSOBJ refl, int idx);
int ReflectionListCount(pSICSOBJ refl);
void AddRefIdx(pSICSOBJ refl, double hkl[]);
void AddRefIdxAng(pSICSOBJ refl, double hkl[], double ang[]);
int SetRefIndex(pSICSOBJ refl, int idx, double hkl[]);
int SetRefAngles(pSICSOBJ refl, int idx, double ang[]);
int SetRefFlag(pSICSOBJ refl, int idx, int val);
int GetRefIndex(pSICSOBJ refl, int idx, double hkl[]);
int GetRefIndexID(pSICSOBJ refl, char *id, double hkl[]);
int GetRefAngles(pSICSOBJ refl, int idx, double ang[]);
int GetRefAnglesID(pSICSOBJ refl, char *id, double ang[]);
int GetRefFlag(pSICSOBJ refl, int idx);
char *GetRefName(pSICSOBJ refl, int idx);
const char *FindHKL(pSICSOBJ self, double h, double k, double l);
#endif /*REFLIST_H_ */