changed setBit and getBit to uint32_t

This commit is contained in:
Erik Frojdh 2018-03-08 17:13:13 +01:00
parent 8b02aa9e91
commit 0d2dd93498
5 changed files with 19 additions and 22 deletions

View File

@ -4904,15 +4904,15 @@ uint32_t multiSlsDetector::readRegister(uint32_t addr){
}
int multiSlsDetector::setBit(int addr, int n) {
int ret1, ret=-100;
uint32_t multiSlsDetector::setBit(uint32_t addr, int n) {
uint32_t ret, ret1;
for (int i=0; i<thisMultiDetector->numberOfDetectors; ++i) {
if (detectors[i]) {
ret1=detectors[i]->setBit(addr,n);
if(detectors[i]->getErrorMask())
setErrorMask(getErrorMask()|(1<<i));
if (ret==-100)
if (i==0)
ret=ret1;
else if (ret!=ret1) {
// not setting it to -1 as it is a possible value
@ -4926,15 +4926,15 @@ int multiSlsDetector::setBit(int addr, int n) {
}
int multiSlsDetector::clearBit(int addr, int n) {
int ret1, ret=-100;
uint32_t multiSlsDetector::clearBit(uint32_t addr, int n) {
uint32_t ret, ret1;
for (int i=0; i<thisMultiDetector->numberOfDetectors; ++i) {
if (detectors[i]) {
ret1=detectors[i]->clearBit(addr,n);
if(detectors[i]->getErrorMask())
setErrorMask(getErrorMask()|(1<<i));
if (ret==-100)
if (i==0)
ret=ret1;
else if (ret!=ret1) {
// not setting it to -1 as it is a possible value

View File

@ -1082,7 +1082,7 @@ class multiSlsDetector : public slsDetectorUtils {
DO NOT USE!!! ONLY EXPERT USER!!!
*/
int setBit(int addr, int n);
uint32_t setBit(uint32_t addr, int n);
/**
@ -1093,7 +1093,7 @@ class multiSlsDetector : public slsDetectorUtils {
DO NOT USE!!! ONLY EXPERT USER!!!
*/
int clearBit(int addr, int n);
uint32_t clearBit(uint32_t addr, int n);

View File

@ -2440,25 +2440,24 @@ uint32_t slsDetector::readRegister(uint32_t addr){
}
int slsDetector::setBit(int addr, int n) {
uint32_t slsDetector::setBit(uint32_t addr, int n) {
if (n<0 || n>31) {
std::cout << "Bit number out of Range" << std:: endl;
setErrorMask((getErrorMask())|(REGISER_WRITE_READ));
}
// normal bit range
//TODO! (Erik) Check for errors! cannot use value since reg is 32bits
else {
int val = readRegister(addr);
if (val != -1) {
uint32_t val = readRegister(addr);
writeRegister(addr,val | 1<<n);
}
}
return readRegister(addr);
}
int slsDetector::clearBit(int addr, int n) {
uint32_t slsDetector::clearBit(uint32_t addr, int n) {
if (n<0 || n>31) {
std::cout << "Bit number out of Range" << std:: endl;
setErrorMask((getErrorMask())|(REGISER_WRITE_READ));
@ -2466,11 +2465,9 @@ int slsDetector::clearBit(int addr, int n) {
// normal bit range
else {
int val = readRegister(addr);
if (val != -1) {
uint32_t val = readRegister(addr);
writeRegister(addr,val & ~(1<<n));
}
}
return readRegister(addr);
}

View File

@ -892,7 +892,7 @@ class slsDetector : public slsDetectorUtils, public energyConversion {
DO NOT USE!!! ONLY EXPERT USER!!!
*/
int setBit(int addr, int n);
uint32_t setBit(uint32_t addr, int n);
/**
@ -903,7 +903,7 @@ class slsDetector : public slsDetectorUtils, public energyConversion {
DO NOT USE!!! ONLY EXPERT USER!!!
*/
int clearBit(int addr, int n);
uint32_t clearBit(uint32_t addr, int n);
/**
set dacs value

View File

@ -529,7 +529,7 @@ class slsDetectorUtils : public slsDetectorActions, public postProcessing {
DO NOT USE!!! ONLY EXPERT USER!!!
*/
virtual int setBit(int addr, int n)=0;
virtual uint32_t setBit(uint32_t addr, int n)=0;
/**
@ -540,7 +540,7 @@ class slsDetectorUtils : public slsDetectorActions, public postProcessing {
DO NOT USE!!! ONLY EXPERT USER!!!
*/
virtual int clearBit(int addr, int n)=0;
virtual uint32_t clearBit(uint32_t addr, int n)=0;
/**