// // Scan.cpp // #include "Scan.h" #include "DaqSetup.h" #include "LogFile.h" // =================================================== // constructor // =================================================== Scan::Scan (double start, double stop, double stepSize, DetPlane* detPlane) : ScanData (start, stop, stepSize, detPlane->nChan (), detPlane->chanList) , DoCalibrate (detPlane) { } // ================================================= // run // ================================================= int Scan::run (int events, int ctrlBlk) { double setValue; int nPoints = ScanData::nPoints (); ScanData::resetPoint (); // ------------------------------- // loop over points // ------------------------------- unsigned int* pt; int evtsFound; ScanData::resetPoint (); do { // -------------------------------- // retrieve value and set it // -------------------------------- setValue = getPoint (); setVariable ( &setValue ); // ------------------------ // collect events // ------------------------ pt = ScanData::dataProjection (); evtsFound = DoCalibrate::collectData (events, pt, ctrlBlk); ScanData::setPoint (setValue, evtsFound); } while ( ScanData::nextPoint () == 1 ); return 1; } // ==================================================== // // ==================================================== void Scan::dataToFile (char *fileName) { // ------------------------------------- // open data output file // ------------------------------------- DaqSetup* daq = daq->Instance (); DaqEnv* daqEnv = daq->daqEnv (); ofstream outFile; if ( daqEnv->openFileDir (DataDir, fileName, outFile) == 0 ) return; headerToFile (outFile); ScanData::dataOut (outFile); outFile.close (); } void Scan::headerToFile (ofstream& outFile) { }