mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-05-04 11:50:05 +02:00
bug fix: update measurement index, update index does not use sharedmemory, start run index updated after measurement
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorGui@78 af1100a4-978c-4157-bff7-07162d2ba061
This commit is contained in:
parent
cfce337c46
commit
bdabf9e649
@ -163,8 +163,6 @@ private:
|
|||||||
enum{None, Auto, Trigger_Exp_Series, Trigger_Frame, Trigger_Readout, Gated, Gated_Start, Trigger_Window, NumTimingModes};
|
enum{None, Auto, Trigger_Exp_Series, Trigger_Frame, Trigger_Readout, Gated, Gated_Start, Trigger_Window, NumTimingModes};
|
||||||
/** timer to update the progress*/
|
/** timer to update the progress*/
|
||||||
QTimer *progressTimer;
|
QTimer *progressTimer;
|
||||||
/** current measurement */
|
|
||||||
int currentMeasurement;
|
|
||||||
/** tool tip variables*/
|
/** tool tip variables*/
|
||||||
QString acqPeriodTip;
|
QString acqPeriodTip;
|
||||||
QString errPeriodTip;
|
QString errPeriodTip;
|
||||||
|
@ -618,7 +618,7 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
lastImageNumber= currentFrame+1;
|
lastImageNumber= currentFrame+1;
|
||||||
//title
|
//title
|
||||||
char temp_title[2000];
|
char temp_title[2000];
|
||||||
sprintf(temp_title,"Image Index %d",fileIOStatic::getFileIndexFromFileName(string(data->fileName)));
|
sprintf(temp_title,"Image Index %d",currentFileIndex);
|
||||||
imageTitle = temp_title;
|
imageTitle = temp_title;
|
||||||
//copy data
|
//copy data
|
||||||
memcpy(lastImageArray+(currentScanDivLevel*nPixelsX),data->values,nPixelsX*sizeof(double));
|
memcpy(lastImageArray+(currentScanDivLevel*nPixelsX),data->values,nPixelsX*sizeof(double));
|
||||||
@ -635,12 +635,11 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
while(1){
|
while(1){
|
||||||
if(!pthread_mutex_trylock(&(last_image_complete_mutex))){
|
if(!pthread_mutex_trylock(&(last_image_complete_mutex))){
|
||||||
//variables
|
//variables
|
||||||
int currentIndex = fileIOStatic::getFileIndexFromFileName(string(data->fileName));
|
if(currentFileIndex == minPixelsY) currentScanDivLevel = 0;
|
||||||
if(currentIndex == minPixelsY) currentScanDivLevel = 0;
|
|
||||||
lastImageNumber= currentFrame+1;
|
lastImageNumber= currentFrame+1;
|
||||||
//title
|
//title
|
||||||
char temp_title[2000];
|
char temp_title[2000];
|
||||||
sprintf(temp_title,"Image Index %d",currentIndex);
|
sprintf(temp_title,"Image Index %d",currentFileIndex);
|
||||||
imageTitle = temp_title;
|
imageTitle = temp_title;
|
||||||
//copy data
|
//copy data
|
||||||
for(unsigned int px=0;px<nPixelsX;px++) lastImageArray[currentScanDivLevel*nPixelsX+px] += data->values[px];
|
for(unsigned int px=0;px<nPixelsX;px++) lastImageArray[currentScanDivLevel*nPixelsX+px] += data->values[px];
|
||||||
@ -657,8 +656,8 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
while(1){
|
while(1){
|
||||||
if(!pthread_mutex_trylock(&(last_image_complete_mutex))){
|
if(!pthread_mutex_trylock(&(last_image_complete_mutex))){
|
||||||
//get scanvariable0
|
//get scanvariable0
|
||||||
int currentIndex = 0, p = 0; double cs0 = 0 , cs1 = 0;
|
int ci = 0, p = 0; double cs0 = 0 , cs1 = 0;
|
||||||
fileIOStatic::getVariablesFromFileName(string(data->fileName), currentIndex, p, cs0, cs1);
|
fileIOStatic::getVariablesFromFileName(string(data->fileName), ci, p, cs0, cs1);
|
||||||
cout<<"currentScanValue:"<<currentScanValue<<endl;
|
cout<<"currentScanValue:"<<currentScanValue<<endl;
|
||||||
cout<<"cs0:"<<cs0<<endl;
|
cout<<"cs0:"<<cs0<<endl;
|
||||||
//variables
|
//variables
|
||||||
@ -670,7 +669,7 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
lastImageNumber= currentFrame+1;
|
lastImageNumber= currentFrame+1;
|
||||||
//title
|
//title
|
||||||
char temp_title[2000];
|
char temp_title[2000];
|
||||||
sprintf(temp_title,"Image Index %d",currentIndex);
|
sprintf(temp_title,"Image Index %d",currentFileIndex);
|
||||||
imageTitle = temp_title;
|
imageTitle = temp_title;
|
||||||
//copy data
|
//copy data
|
||||||
for(unsigned int px=0;px<nPixelsX;px++) lastImageArray[currentScanDivLevel*nPixelsX+px] += data->values[px];
|
for(unsigned int px=0;px<nPixelsX;px++) lastImageArray[currentScanDivLevel*nPixelsX+px] += data->values[px];
|
||||||
@ -685,8 +684,8 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
while(1){
|
while(1){
|
||||||
if(!pthread_mutex_trylock(&(last_image_complete_mutex))){
|
if(!pthread_mutex_trylock(&(last_image_complete_mutex))){
|
||||||
//get scanvariable1
|
//get scanvariable1
|
||||||
int currentIndex = 0, p = 0; double cs0 = 0 , cs1 = 0;
|
int ci = 0, p = 0; double cs0 = 0 , cs1 = 0;
|
||||||
fileIOStatic::getVariablesFromFileName(string(data->fileName), currentIndex, p, cs0, cs1);
|
fileIOStatic::getVariablesFromFileName(string(data->fileName), ci, p, cs0, cs1);
|
||||||
//variables
|
//variables
|
||||||
if(cs1!=currentScanValue){
|
if(cs1!=currentScanValue){
|
||||||
if(backwardScanPlot) currentScanDivLevel--;
|
if(backwardScanPlot) currentScanDivLevel--;
|
||||||
@ -696,7 +695,7 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
lastImageNumber= currentFrame+1;
|
lastImageNumber= currentFrame+1;
|
||||||
//title
|
//title
|
||||||
char temp_title[2000];
|
char temp_title[2000];
|
||||||
sprintf(temp_title,"Image Index %d",currentIndex);
|
sprintf(temp_title,"Image Index %d",currentFileIndex);
|
||||||
imageTitle = temp_title;
|
imageTitle = temp_title;
|
||||||
//copy data
|
//copy data
|
||||||
for(unsigned int px=0;px<nPixelsX;px++) lastImageArray[currentScanDivLevel*nPixelsX+px] += data->values[px];
|
for(unsigned int px=0;px<nPixelsX;px++) lastImageArray[currentScanDivLevel*nPixelsX+px] += data->values[px];
|
||||||
@ -731,7 +730,7 @@ int qDrawPlot::GetData(detectorData *data){
|
|||||||
//2d
|
//2d
|
||||||
else{
|
else{
|
||||||
// Titles
|
// Titles
|
||||||
sprintf(temp_title,"Image Index %d",fileIOStatic::getFileIndexFromFileName(string(data->fileName)));
|
sprintf(temp_title,"Image Index %d",currentFileIndex);
|
||||||
imageTitle = temp_title;
|
imageTitle = temp_title;
|
||||||
// manufacture data for now
|
// manufacture data for now
|
||||||
for(unsigned int px=0;px<nPixelsX;px++)
|
for(unsigned int px=0;px<nPixelsX;px++)
|
||||||
|
@ -75,7 +75,6 @@ void qTabMeasurement::SetupWidgetWindow(){
|
|||||||
lblProgressIndex->setText(QString::number(myDet->getFileIndex()));
|
lblProgressIndex->setText(QString::number(myDet->getFileIndex()));
|
||||||
//ly initially
|
//ly initially
|
||||||
progressBar->setValue(0);
|
progressBar->setValue(0);
|
||||||
currentMeasurement = 0;
|
|
||||||
|
|
||||||
//timing mode
|
//timing mode
|
||||||
SetupTimingMode();
|
SetupTimingMode();
|
||||||
@ -301,8 +300,6 @@ void qTabMeasurement::startStopAcquisition(){
|
|||||||
btnStartStop->setIcon(*iconStop);
|
btnStartStop->setIcon(*iconStop);
|
||||||
Enable(0);
|
Enable(0);
|
||||||
progressBar->setValue(0);
|
progressBar->setValue(0);
|
||||||
//the progress which keeps adding up for all the measurements
|
|
||||||
currentMeasurement = 0;
|
|
||||||
progressTimer->start(100);
|
progressTimer->start(100);
|
||||||
|
|
||||||
emit StartSignal();
|
emit StartSignal();
|
||||||
@ -313,6 +310,7 @@ void qTabMeasurement::startStopAcquisition(){
|
|||||||
emit StopSignal();
|
emit StopSignal();
|
||||||
myDet->stopAcquisition();
|
myDet->stopAcquisition();
|
||||||
progressTimer->stop();
|
progressTimer->stop();
|
||||||
|
spinIndex->setValue(myPlot->GetFileIndex());
|
||||||
btnStartStop->setText("Start");
|
btnStartStop->setText("Start");
|
||||||
btnStartStop->setIcon(*iconStart);
|
btnStartStop->setIcon(*iconStart);
|
||||||
btnStartStop->setChecked(false);
|
btnStartStop->setChecked(false);
|
||||||
@ -333,6 +331,7 @@ void qTabMeasurement::UpdateFinished(){
|
|||||||
Enable(1);
|
Enable(1);
|
||||||
connect(btnStartStop,SIGNAL(clicked()),this,SLOT(startStopAcquisition()));
|
connect(btnStartStop,SIGNAL(clicked()),this,SLOT(startStopAcquisition()));
|
||||||
UpdateProgress();
|
UpdateProgress();
|
||||||
|
spinIndex->setValue(myPlot->GetFileIndex());
|
||||||
progressTimer->stop();
|
progressTimer->stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -342,8 +341,8 @@ void qTabMeasurement::UpdateFinished(){
|
|||||||
|
|
||||||
|
|
||||||
void qTabMeasurement::SetCurrentMeasurement(int val){
|
void qTabMeasurement::SetCurrentMeasurement(int val){
|
||||||
currentMeasurement = val;
|
if((val)<spinNumMeasurements->value())
|
||||||
lblCurrentMeasurement->setText(QString::number(val+1));
|
lblCurrentMeasurement->setText(QString::number(val+1));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -352,7 +351,6 @@ void qTabMeasurement::SetCurrentMeasurement(int val){
|
|||||||
|
|
||||||
|
|
||||||
void qTabMeasurement::UpdateProgress(){
|
void qTabMeasurement::UpdateProgress(){
|
||||||
//progressBar->setValue((int)(((currentMeasurement*100)+(myPlot->GetProgress()))/spinNumMeasurements->value()));
|
|
||||||
progressBar->setValue((int)myPlot->GetProgress());
|
progressBar->setValue((int)myPlot->GetProgress());
|
||||||
lblProgressIndex->setText(QString::number(myPlot->GetFileIndex()));
|
lblProgressIndex->setText(QString::number(myPlot->GetFileIndex()));
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user