Changeset 6963 for trunk/MagicSoft/Mars/mcalib
- Timestamp:
- 04/20/05 11:59:48 (20 years ago)
- Location:
- trunk/MagicSoft/Mars/mcalib
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/MagicSoft/Mars/mcalib/MCalibCalcFromPast.cc
r6926 r6963 46 46 47 47 #include "MParList.h" 48 #include "MTaskList.h" 48 49 #include "MRawRunHeader.h" 49 50 50 51 #include "MHCalibrationCam.h" … … 61 62 #include "MCalibrateData.h" 62 63 63 #include "MGeomCam.h"64 65 64 ClassImp(MCalibCalcFromPast); 66 65 … … 68 67 69 68 const UInt_t MCalibCalcFromPast::fgNumEventsDump = 500; 69 70 70 // -------------------------------------------------------------------------- 71 71 // … … 76 76 // 77 77 MCalibCalcFromPast::MCalibCalcFromPast(const char *name, const char *title) 78 : fGeom(NULL), fParList(NULL), 78 : fGeom(NULL), fParList(NULL), fRunHeader(NULL), 79 79 fIntensCharge(NULL), fIntensBlind(NULL), fIntensRelTime(NULL), fIntensBad(NULL), 80 80 fChargeCalc(NULL), fRelTimeCalc(NULL), fCalibrate(NULL), … … 90 90 // ----------------------------------------------------------------------------------- 91 91 // 92 // The following container are searched for and execution aborted if not in MParList:93 // - MTaskList94 //95 92 Int_t MCalibCalcFromPast::PreProcess(MParList *pList) 96 93 { … … 109 106 return kFALSE; 110 107 } 108 109 fRunHeader = (MRawRunHeader*)pList->FindObject("MRawRunHeader"); 110 if (!fRunHeader) 111 { 112 *fLog << err << "MRawRunHeader not found... abort." << endl; 113 return kFALSE; 114 } 111 115 112 116 // … … 285 289 *fLog << inf << "MCalibCalcFromPast::ReInitialize #" << fNumCam << " "; 286 290 291 const Int_t runnumber = fRunHeader->GetRunNumber(); 292 287 293 if (fIntensBad) 288 294 { … … 294 300 { 295 301 fIntensCharge->AddToList(Form("MCalibrationChargeCam%04d",fNumCam),*fGeom); 302 fIntensCharge->GetCam()->SetRunNumber(runnumber); 296 303 *fLog << "MCalibrationChargeCam..."; 297 304 } … … 299 306 { 300 307 fIntensQE->AddToList(Form("MCalibrationQECam%04d",fNumCam),*fGeom); 308 fIntensQE->GetCam()->SetRunNumber(runnumber); 301 309 *fLog << "MCalibrationQECam..."; 302 310 } … … 304 312 { 305 313 fIntensBlind->AddToList(Form("MCalibrationBlindCam%04d",fNumCam),*fGeom); 314 fIntensBlind->GetCam()->SetRunNumber(runnumber); 306 315 *fLog << "MCalibrationBlindCam..."; 307 316 } -
trunk/MagicSoft/Mars/mcalib/MCalibCalcFromPast.h
r6004 r6963 8 8 class MParList; 9 9 class MGeomCam; 10 class MRawRunHeader; 10 11 class MPedCalcFromLoGain; 11 12 class MCalibrationChargeCalc; … … 17 18 class MCalibrationIntensityRelTimeCam; 18 19 class MBadPixelsIntensityCam; 20 19 21 class MCalibCalcFromPast : public MTask 20 22 { … … 25 27 MGeomCam *fGeom; //! Camera Geometry 26 28 MParList *fParList; //! Parameter List 29 MRawRunHeader *fRunHeader; //! Run header storing the run number 27 30 MCalibrationIntensityChargeCam *fIntensCharge; //! Intensity Charge Cam (to be created) 28 31 MCalibrationIntensityBlindCam *fIntensBlind; //! Intensity Blind Cam (to be created) -
trunk/MagicSoft/Mars/mcalib/MCalibColorSet.cc
r6913 r6963 445 445 break; 446 446 case 2: 447 fStrength = 5. ;447 fStrength = 5.1; 448 448 break; 449 449 case 3: … … 454 454 break; 455 455 case 5: 456 fStrength = 5. ;456 fStrength = 5.2; 457 457 break; 458 458 case 6: 459 fStrength = 5. ;459 fStrength = 5.4; 460 460 break; 461 461 case 7: … … 472 472 break; 473 473 case 11: 474 fStrength = 5. ;474 fStrength = 5.8; 475 475 break; 476 476 case 12: 477 fStrength = 5. ;477 fStrength = 5.1; 478 478 break; 479 479 case 13: 480 fStrength = 5. ;480 fStrength = 5.2; 481 481 break; 482 482 case 14: -
trunk/MagicSoft/Mars/mcalib/MCalibColorSteer.cc
r6926 r6963 51 51 52 52 #include "MHCalibrationCam.h" 53 #include "MCalibrationC am.h"53 #include "MCalibrationChargeCam.h" 54 54 #include "MCalibrationBlindCam.h" 55 55 … … 61 61 #include "MBadPixelsIntensityCam.h" 62 62 63 #include "MCalibrationChargeCam.h" 63 64 #include "MCalibrationChargeCalc.h" 64 65 #include "MCalibrationRelTimeCalc.h" 65 66 66 67 #include "MRawRunHeader.h" 67 #include "MRawEvtHeader.h"68 68 #include "MCalibrationPattern.h" 69 69 … … 81 81 : fCalibPattern(NULL), fGeom(NULL), fParList(NULL), 82 82 fIntensCharge(NULL), fIntensRelTime(NULL), fIntensBad(NULL), 83 fBad(NULL), fChargeCalc(NULL), fRelTimeCalc(NULL) , fPattern(0)83 fBad(NULL), fChargeCalc(NULL), fRelTimeCalc(NULL) 84 84 { 85 85 … … 109 109 { 110 110 *fLog << err << "MRawRunHeader not found... abort." << endl; 111 return kFALSE;112 }113 114 fEvtHeader = (MRawEvtHeader*)pList->FindObject("MRawEvtHeader");115 if (!fEvtHeader)116 {117 *fLog << err << "MRawEvtHeader not found... abort." << endl;118 111 return kFALSE; 119 112 } … … 228 221 } 229 222 } 223 224 fColor = MCalibrationCam::kNONE; 225 fStrength = 0.; 230 226 231 227 return kTRUE; … … 241 237 { 242 238 243 const UInt_t pattern = fEvtHeader->GetPulserSlotPattern(); 244 245 if (fPattern == 0) 246 { 247 fPattern = pattern; 239 const MCalibrationCam::PulserColor_t col = fCalibPattern->GetPulserColor(); 240 const Float_t strength = fCalibPattern->GetPulserStrength(); 241 242 if (fColor ==MCalibrationCam::kNONE) 243 { 244 fColor = col; 245 fStrength = strength; 248 246 return kTRUE; 249 247 } 250 248 251 if (pattern == 0 || pattern == fPattern) 249 const Float_t strdiff = TMath::Abs(fStrength-strength); 250 251 if (col == MCalibrationCam::kNONE || (col == fColor && strdiff < 0.05)) 252 252 return kTRUE; 253 253 254 *fLog << inf << GetDescriptor() << " : old pattern: " << fPattern << flush; 255 256 fPattern = pattern; 257 258 *fLog << " : new pattern: " << pattern << flush; 254 *fLog << inf << GetDescriptor() << " : Color - old=" << fColor << flush; 255 fColor = col; 256 *fLog << " / new=" << fColor << endl; 257 258 *fLog << inf << GetDescriptor() << " : Strength - old=" << fStrength << flush; 259 fStrength = strength; 260 *fLog << " / new=" << fStrength << endl; 259 261 260 262 // … … 325 327 if (fIntensCharge) 326 328 { 329 MCalibrationChargeCam *oldcam = (MCalibrationChargeCam*)fIntensCharge->GetCam(); 327 330 fIntensCharge->AddToList(Form("MCalibrationChargeCam%s",namep.Data()),*fGeom); 328 MCalibrationC am *cam =fIntensCharge->GetCam();331 MCalibrationChargeCam *cam = (MCalibrationChargeCam*)fIntensCharge->GetCam(); 329 332 cam->SetPulserColor(fCalibPattern->GetPulserColor()); 333 if (!cam->CopyHiLoConversionFactors(*oldcam)) 334 return kFALSE; 330 335 *fLog << inf << "New MCalibrationChargeCam with name: " << cam->GetName() << endl; 331 336 } -
trunk/MagicSoft/Mars/mcalib/MCalibColorSteer.h
r6013 r6963 6 6 #endif 7 7 8 #ifndef MARS_MCalibrationCam 9 #include "MCalibrationCam.h" 10 #endif 11 12 8 13 class MParList; 9 14 class MGeomCam; 10 15 class MCalibrationPattern; 11 16 class MRawRunHeader; 12 class MRawEvtHeader;13 17 class MCalibrationChargeCalc; 14 18 class MCalibrationRelTimeCalc; … … 19 23 class MBadPixelsIntensityCam; 20 24 class MBadPixelsCam; 25 21 26 class MCalibColorSteer : public MTask 22 27 { … … 25 30 26 31 MCalibrationPattern *fCalibPattern; //! 27 MRawEvtHeader *fEvtHeader; //!28 32 MRawRunHeader *fRunHeader; //! 29 33 MGeomCam *fGeom; //! … … 39 43 MCalibrationRelTimeCalc *fRelTimeCalc; //! 40 44 41 UInt_t fPattern; 45 MCalibrationCam::PulserColor_t fColor; 46 Float_t fStrength; 42 47 43 48 Int_t PreProcess(MParList *pList); -
trunk/MagicSoft/Mars/mcalib/MCalibrationCam.cc
r5047 r6963 42 42 // per camera SECTOR. Is created automatically. 43 43 // 44 // Previous Class Versions haven't been commented by the author! 45 // 46 // Class Version 6: 47 // ---------------- 48 // + added fRunNumber 49 // 44 50 // All TOrdCollections have to enlarged by the corresponding calls to (e.g. in MGeomApply): 45 51 // - InitSize() … … 68 74 69 75 const Int_t MCalibrationCam::gkNumPulserColors = 4; 76 70 77 // -------------------------------------------------------------------------- 71 78 // … … 91 98 // 92 99 MCalibrationCam::MCalibrationCam(const char *name, const char *title) 93 : f PulserColor(kNONE)100 : fRunNumber(-1), fPulserColor(kNONE) 94 101 { 95 102 -
trunk/MagicSoft/Mars/mcalib/MCalibrationCam.h
r6775 r6963 21 21 class MBadPixelsCam; 22 22 class MGeomCam; 23 23 24 class MCalibrationCam : public MParContainer, public MCamEvent 24 25 { … … 42 43 TArrayF fNumLoGainFADCSlices; // Number Low -Gain FADC slices used by extractor 43 44 44 PulserColor_t fPulserColor; // Colour of the pulsed LEDs 45 Int_t fRunNumber; // Store run number for interlaced calib. events 46 PulserColor_t fPulserColor; // Colour of the pulsed LEDs 45 47 46 48 TOrdCollection *fPixels; //-> Array of MCalibrationPix, one per pixel … … 86 88 Int_t type=0 ) const; 87 89 const PulserColor_t GetPulserColor () const { return fPulserColor; } 90 const Int_t GetRunNumer () const { return fRunNumber; } 88 91 const Int_t GetSize () const; 89 92 … … 100 103 void SetNumUnsuitable ( const UInt_t i, const Int_t aidx ); 101 104 void SetNumUnreliable ( const UInt_t i, const Int_t aidx ); 102 virtual void SetPulserColor( const PulserColor_t col=kCT1 ) { fPulserColor = col; } 103 104 ClassDef(MCalibrationCam, 5) // Base class Container for Calibration Results Camera 105 virtual void SetPulserColor ( const PulserColor_t col=kCT1 ) { fPulserColor = col; } 106 void SetRunNumber ( const Int_t run ) { fRunNumber = run; } 107 108 ClassDef(MCalibrationCam, 6) // Base class Container for Calibration Results Camera 105 109 }; 106 110 -
trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCam.cc
r6774 r6963 250 250 // -------------------------------------------------------------------------- 251 251 // 252 // Copy High-gain vs. low-gain conversion factors from cam to this. 253 // 254 Bool_t MCalibrationChargeCam::CopyHiLoConversionFactors(const MCalibrationChargeCam &cam) const 255 { 256 257 if (GetSize() != cam.GetSize()) 258 { 259 *fLog << warn << "Sizes mismatch! Cannot merge high-gain vs. low-gain convertion factors" << endl; 260 return kFALSE; 261 } 262 263 for (Int_t i=0; i<GetSize(); i++) 264 { 265 ((MCalibrationChargePix&)(*this)[i]).SetConversionHiLo (((MCalibrationChargePix&)cam[i]).GetConversionHiLo()); 266 ((MCalibrationChargePix&)(*this)[i]).SetConversionHiLoErr(((MCalibrationChargePix&)cam[i]).GetConversionHiLoErr()); 267 } 268 269 return kTRUE; 270 } 271 272 // -------------------------------------------------------------------------- 273 // 252 274 // Print first the well fitted pixels 253 275 // and then the ones which are not FitValid -
trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCam.h
r6749 r6963 58 58 TArrayF GetAveragedArrivalTimeRmsPerSector (const MGeomCam &geom, 59 59 const UInt_t sec=0, MBadPixelsCam *bad=NULL); 60 61 Bool_t CopyHiLoConversionFactors(const MCalibrationChargeCam &cam) const; 60 62 61 63 // Prints -
trunk/MagicSoft/Mars/mcalib/MCalibrationRelTimeCalc.cc
r6932 r6963 208 208 209 209 if (GetNumExecutions()==0) 210 return k FALSE;210 return kTRUE; 211 211 212 212 return Finalize();
Note:
See TracChangeset
for help on using the changeset viewer.