- Fixes for FOCUS 2D

- Mapped fileeval to exe manager
- Updates for TRICS file formats


SKIPPED:
	psi/libpsi.a
	psi/sinqhmdriv.c
	psi/sinqhttp.c
	psi/tabledrive.c
	psi/tasscan.c
	psi/hardsup/asynsrv_utility.c
	psi/hardsup/sinqhm.c
This commit is contained in:
koennecke
2006-05-23 15:05:28 +00:00
parent 54c9dc4c8f
commit bd533e6131
30 changed files with 711 additions and 164 deletions

View File

@ -483,11 +483,34 @@ static int updateHMFMData(SicsInterp *pSics, SConnection *pCon)
return 1;
}
/*-------------------------------------------------------------------*/
static int *calculateSum(HistInt *data, int iDet, int iTime)
static int *calculateDetSum(HistInt *data, int iDet, int iTime)
{
int i, j, iIndex;
int *sum = NULL;
sum = (int *)malloc(iDet*sizeof(int));
if(!sum)
{
return NULL;
}
memset(sum,0,iDet*sizeof(int));
for(i = 0; i < iDet; i++)
{
iIndex = i * iTime;
for(j = 0; j < iTime; j++)
{
sum[i] += data[iIndex+j];
}
}
return sum;
}
/*-------------------------------------------------------------------*/
static int *calculateTimeSum(HistInt *data, int iDet, int iTime)
{
int i, j;
int *sum = NULL;
sum = (int *)malloc(iTime*sizeof(int));
if(!sum)
{
@ -495,16 +518,16 @@ static int *calculateSum(HistInt *data, int iDet, int iTime)
}
memset(sum,0,iTime*sizeof(int));
for(i = 0; i < iDet; i++)
for(i = 0; i < iTime; i++)
{
iIndex = i * iTime;
for(j = 0; j < iTime; j++)
for(j = 0; j < iDet; j++)
{
sum[i] += data[iIndex+j];
sum[i] += data[j*iTime + i];
}
}
return sum;
}
/*--------------------------------------------------------------------*/
static void checkSum(HistInt *sum, int iDet, char *name, SConnection *pCon){
int i, count;
@ -530,6 +553,8 @@ static int putSum(SicsInterp *pSics, SConnection *pCon,
HistInt *sum = NULL;
int iDet, iTime, i, j, iIndex, status;
return 1;
iTime = getFMdim(TIMEBIN);
if(strcmp(name,"upper") == 0)
{
@ -557,7 +582,7 @@ static int putSum(SicsInterp *pSics, SConnection *pCon,
return NX_ERROR;
}
sum = calculateSum(data,iDet,iTime);
sum = calculateDetSum(data,iDet,iTime);
if(!sum)
{
SCWrite(pCon,"ERROR: out of memory summing bank",eError);
@ -582,6 +607,8 @@ static int putElastic(SicsInterp *pSics, SConnection *pCon,
pHistMem pMem = NULL;
float fCenter, fFWHM, fStdDev, fVal;
return 1;
pMem = (pHistMem)FindCommandData(pSics,"hm2","HistMem");
if(pMem == NULL)
{
@ -592,7 +619,7 @@ static int putElastic(SicsInterp *pSics, SConnection *pCon,
}
fTimeBin = GetHistTimeBin(pMem,&iTime);
iDet = getFMdim(MIDDLE);
sum = calculateSum(GetHistogramPointer(pMem,pCon),iDet,iTime);
sum = calculateTimeSum(GetHistogramPointer(pMem,pCon),iDet,iTime);
if(!sum)
{
SCWrite(pCon,"ERROR: out of memory calculating elastic peak position",