mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-22 14:38:14 +02:00
some more changes in savesettings for gotthard and loadsettings
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware@259 951219d9-93cf-4727-9268-0efd64621fa3
This commit is contained in:
parent
8ed87df48f
commit
7b058c55cf
@ -5107,12 +5107,12 @@ int slsDetector::loadSettingsFile(string fname, int imod) {
|
|||||||
ostfn << ".sn" << setfill('0') << setw(3) << hex << getId(MODULE_SERIAL_NUMBER, im);
|
ostfn << ".sn" << setfill('0') << setw(3) << hex << getId(MODULE_SERIAL_NUMBER, im);
|
||||||
fn=ostfn.str();
|
fn=ostfn.str();
|
||||||
}
|
}
|
||||||
//settings is saved in myMod.reg for gotthard
|
|
||||||
if(thisDetector->myDetectorType==GOTTHARD)
|
|
||||||
myMod->reg=thisDetector->currentSettings;
|
|
||||||
myMod=readSettingsFile(fn, thisDetector->myDetectorType);
|
myMod=readSettingsFile(fn, thisDetector->myDetectorType);
|
||||||
if (myMod) {
|
if (myMod) {
|
||||||
myMod->module=im;
|
myMod->module=im;
|
||||||
|
//settings is saved in myMod.reg for gotthard
|
||||||
|
if(thisDetector->myDetectorType==GOTTHARD)
|
||||||
|
myMod->reg=thisDetector->currentSettings;
|
||||||
setModule(*myMod);
|
setModule(*myMod);
|
||||||
deleteModule(myMod);
|
deleteModule(myMod);
|
||||||
} else
|
} else
|
||||||
|
@ -280,45 +280,47 @@ int energyConversion::writeSettingsFile(string fname, detectorType myDetectorTyp
|
|||||||
int iv, ichan, ichip;
|
int iv, ichan, ichip;
|
||||||
int iv1, idac;
|
int iv1, idac;
|
||||||
int nb;
|
int nb;
|
||||||
outfile.open(fname.c_str(), ios_base::out);
|
outfile.open(fname.c_str(), ios_base::out);
|
||||||
|
|
||||||
if (outfile.is_open()) {
|
if (outfile.is_open()) {
|
||||||
for (idac=0; idac<mod.ndac; idac++) {
|
for (idac=0; idac<mod.ndac; idac++) {
|
||||||
iv=(int)mod.dacs[idac];
|
iv=(int)mod.dacs[idac];
|
||||||
outfile << names[idac] << " " << iv << std::endl;
|
outfile << names[idac] << " " << iv << std::endl;
|
||||||
}
|
|
||||||
|
|
||||||
for (ichip=0; ichip<mod.nchip; ichip++) {
|
|
||||||
iv1=mod.chipregs[ichip]&1;
|
|
||||||
outfile << names[idac] << " " << iv1 << std::endl;
|
|
||||||
for (ichan=0; ichan<nch; ichan++) {
|
|
||||||
iv=mod.chanregs[ichip*nch+ichan];
|
|
||||||
iv1= (iv&TRIMBITMASK);
|
|
||||||
outfile <<iv1 << " ";
|
|
||||||
nb=9;
|
|
||||||
iv1=((iv&(1<<nb))>>nb);
|
|
||||||
outfile << iv1 << " ";
|
|
||||||
nb=8;
|
|
||||||
iv1=((iv&(1<<nb))>>nb);
|
|
||||||
outfile << iv1 << " ";
|
|
||||||
nb=7;
|
|
||||||
iv1=((iv&(1<<nb))>>nb);
|
|
||||||
outfile <<iv1 << " ";
|
|
||||||
nb=10;
|
|
||||||
iv1=((iv&(1<<nb))>>nb);
|
|
||||||
outfile << iv1 << " ";
|
|
||||||
nb=11;
|
|
||||||
iv1= ((iv&0xfffff800)>>nb);
|
|
||||||
outfile << iv1 << std::endl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
outfile.close();
|
|
||||||
return OK;
|
|
||||||
} else {
|
|
||||||
std::cout<< "could not open SETTINGS file " << fname << std::endl;
|
|
||||||
return FAIL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(myDetectorType!=GOTTHARD){
|
||||||
|
for (ichip=0; ichip<mod.nchip; ichip++) {
|
||||||
|
iv1=mod.chipregs[ichip]&1;
|
||||||
|
outfile << names[idac] << " " << iv1 << std::endl;
|
||||||
|
for (ichan=0; ichan<nch; ichan++) {
|
||||||
|
iv=mod.chanregs[ichip*nch+ichan];
|
||||||
|
iv1= (iv&TRIMBITMASK);
|
||||||
|
outfile <<iv1 << " ";
|
||||||
|
nb=9;
|
||||||
|
iv1=((iv&(1<<nb))>>nb);
|
||||||
|
outfile << iv1 << " ";
|
||||||
|
nb=8;
|
||||||
|
iv1=((iv&(1<<nb))>>nb);
|
||||||
|
outfile << iv1 << " ";
|
||||||
|
nb=7;
|
||||||
|
iv1=((iv&(1<<nb))>>nb);
|
||||||
|
outfile <<iv1 << " ";
|
||||||
|
nb=10;
|
||||||
|
iv1=((iv&(1<<nb))>>nb);
|
||||||
|
outfile << iv1 << " ";
|
||||||
|
nb=11;
|
||||||
|
iv1= ((iv&0xfffff800)>>nb);
|
||||||
|
outfile << iv1 << std::endl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
outfile.close();
|
||||||
|
return OK;
|
||||||
|
} else {
|
||||||
|
std::cout<< "could not open SETTINGS file " << fname << std::endl;
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user