- 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:
41
fomerge.c
41
fomerge.c
@ -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",
|
||||
|
Reference in New Issue
Block a user