41 lines
1.5 KiB
C
41 lines
1.5 KiB
C
|
|
/*---------------------------------------------------------------------------
|
|
F I T C E N T E R
|
|
|
|
A simple peak finding and center of gravity determination facility for
|
|
SICS.
|
|
|
|
copyright: see copyright.h
|
|
|
|
Mark Koennecke, October 1997
|
|
----------------------------------------------------------------------------*/
|
|
#ifndef SICSFITCENTER
|
|
#define SICSFITCENTER
|
|
|
|
typedef struct __FitCenter *pFit;
|
|
|
|
/*--------------------------------------------------------------------------*/
|
|
pFit CreateFitCenter(pScanData pScan);
|
|
void DeleteFitCenter(void *pData);
|
|
/*-------------------------------------------------------------------------*/
|
|
int CalculateFit(pFit self);
|
|
/*
|
|
CalcluateFit returns: -1 when left FWHM could not be found
|
|
-2 when right FWHM could not be found
|
|
1 on success
|
|
*/
|
|
int CalculateFitFromData(pFit self, float fAxis[], long lSum[],
|
|
int iLen);
|
|
void GetFitResults(pFit self, float *fNewCenter, float *fStdDev,
|
|
float *FWHM, float *fMax);
|
|
int DriveCenter(pFit self, SConnection *pCon, SicsInterp *pSics);
|
|
/*-------------------------------------------------------------------------*/
|
|
int FitFactory(SConnection *pCon,SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
int FitWrapper(SConnection *pCon,SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
int CenterWrapper(SConnection *pCon,SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
|
|
#endif
|