From 324423f30f531be3769cad9763761595bd2789dd Mon Sep 17 00:00:00 2001 From: matta <matta@npt> Date: Tue, 18 Jan 2011 21:45:41 +0000 Subject: [PATCH] * Add several const to different class to improve safety and perf * Minor Update on TSSSD to be consistant with TMUST2 --- .../CalibrationManager/CalibrationManager.cxx | 2 +- NPLib/CalibrationManager/CalibrationManager.h | 2 +- NPLib/MUST2/TMust2Physics.cxx | 20 +++++----- NPLib/MUST2/TMust2Physics.h | 33 ++++++++------- NPLib/SSSD/TSSSDData.h | 30 +++++++------- NPLib/SSSD/TSSSDPhysics.cxx | 40 +++++++++++-------- NPLib/SSSD/TSSSDPhysics.h | 12 +++--- 7 files changed, 72 insertions(+), 67 deletions(-) diff --git a/NPLib/CalibrationManager/CalibrationManager.cxx b/NPLib/CalibrationManager/CalibrationManager.cxx index 49fe4db9f..1ceeff793 100644 --- a/NPLib/CalibrationManager/CalibrationManager.cxx +++ b/NPLib/CalibrationManager/CalibrationManager.cxx @@ -156,7 +156,7 @@ void CalibrationManager::LoadParameterFromFile() } ////////////////////////////////////////////////////////////////// -double CalibrationManager::ApplyCalibration(string ParameterPath , double RawValue) +double CalibrationManager::ApplyCalibration(const string ParameterPath , const double RawValue) { double CalibratedValue = 0 ; map< string , vector<double> >::iterator it ; diff --git a/NPLib/CalibrationManager/CalibrationManager.h b/NPLib/CalibrationManager/CalibrationManager.h index 9472a3123..5ea14d5e8 100644 --- a/NPLib/CalibrationManager/CalibrationManager.h +++ b/NPLib/CalibrationManager/CalibrationManager.h @@ -58,7 +58,7 @@ class CalibrationManager // call like : myCalibrationManager->ApplyCalibration( "MUST2/Telescope5_Si_X38_E" , RawEnergy ) // return the Calibrated value - double ApplyCalibration(string ParameterPath , double RawValue); + double ApplyCalibration(const string ParameterPath , const double RawValue); public: // To be called after initialisation diff --git a/NPLib/MUST2/TMust2Physics.cxx b/NPLib/MUST2/TMust2Physics.cxx index 0042580bf..233a69168 100644 --- a/NPLib/MUST2/TMust2Physics.cxx +++ b/NPLib/MUST2/TMust2Physics.cxx @@ -1351,7 +1351,7 @@ void TMust2Physics::AddTelescope( double theta , } -TVector3 TMust2Physics::GetPositionOfInteraction(int i) +TVector3 TMust2Physics::GetPositionOfInteraction(const int i) const { TVector3 Position = TVector3 ( GetStripPositionX( TelescopeNumber[i] , Si_X[i] , Si_Y[i] ) , GetStripPositionY( TelescopeNumber[i] , Si_X[i] , Si_Y[i] ) , @@ -1361,7 +1361,7 @@ TVector3 TMust2Physics::GetPositionOfInteraction(int i) } -TVector3 TMust2Physics::GetTelescopeNormal( int i) +TVector3 TMust2Physics::GetTelescopeNormal( const int i) const { TVector3 U = TVector3 ( GetStripPositionX( TelescopeNumber[i] , 128 , 1 ) , GetStripPositionY( TelescopeNumber[i] , 128 , 1 ) , @@ -1402,27 +1402,27 @@ namespace MUST2_LOCAL // DSSD // X - double fSi_X_E(TMust2Data* m_EventData , int i) + double fSi_X_E(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMStripXEDetectorNbr(i) ) + "_Si_X" + itoa( m_EventData->GetMMStripXEStripNbr(i) ) + "_E", m_EventData->GetMMStripXEEnergy(i) ); } - double fSi_X_T(TMust2Data* m_EventData , int i) + double fSi_X_T(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMStripXTDetectorNbr(i) ) + "_Si_X" + itoa( m_EventData->GetMMStripXTStripNbr(i) ) +"_T", m_EventData->GetMMStripXTTime(i) ); } // Y - double fSi_Y_E(TMust2Data* m_EventData , int i) + double fSi_Y_E(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMStripYEDetectorNbr(i) ) + "_Si_Y" + itoa( m_EventData->GetMMStripYEStripNbr(i) ) +"_E", m_EventData->GetMMStripYEEnergy(i) ); } - double fSi_Y_T(TMust2Data* m_EventData , int i) + double fSi_Y_T(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMStripYTDetectorNbr(i) ) + "_Si_Y" + itoa( m_EventData->GetMMStripYTStripNbr(i) ) +"_T", m_EventData->GetMMStripYTTime(i) ); @@ -1430,26 +1430,26 @@ namespace MUST2_LOCAL // SiLi - double fSiLi_E(TMust2Data* m_EventData , int i) + double fSiLi_E(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMSiLiEDetectorNbr(i) ) + "_SiLi" + itoa( m_EventData->GetMMSiLiEPadNbr(i) ) +"_E", m_EventData->GetMMSiLiEEnergy(i) ); } - double fSiLi_T(TMust2Data* m_EventData , int i) + double fSiLi_T(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMSiLiTDetectorNbr(i) ) + "_SiLi" + itoa( m_EventData->GetMMSiLiTPadNbr(i) )+"_T", m_EventData->GetMMSiLiTTime(i) ); } // CsI - double fCsI_E(TMust2Data* m_EventData , int i) + double fCsI_E(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMCsIEDetectorNbr(i) ) + "_CsI" + itoa( m_EventData->GetMMCsIECristalNbr(i) ) +"_E", m_EventData->GetMMCsIEEnergy(i) ); } - double fCsI_T(TMust2Data* m_EventData , int i) + double fCsI_T(TMust2Data* m_EventData , const int i) { return CalibrationManager::getInstance()->ApplyCalibration( "MUST2/T" + itoa( m_EventData->GetMMCsITDetectorNbr(i) ) + "_CsI" + itoa( m_EventData->GetMMCsITCristalNbr(i) ) +"_T", m_EventData->GetMMCsITTime(i) ); diff --git a/NPLib/MUST2/TMust2Physics.h b/NPLib/MUST2/TMust2Physics.h index 1e3394097..43f23adda 100644 --- a/NPLib/MUST2/TMust2Physics.h +++ b/NPLib/MUST2/TMust2Physics.h @@ -134,7 +134,6 @@ class TMust2Physics : public TObject, public NPA::VDetector // Frist argument is either "X","Y","SiLi","CsI" bool IsValidChannel(string DetectorType, int telescope , int channel); - // Initialize the standard parameter for analysis // ie: all channel enable, maximum multiplicity for strip = number of telescope void InitializeStandardParameter(); @@ -160,19 +159,19 @@ class TMust2Physics : public TObject, public NPA::VDetector void ReadCalibrationRun(); // Use to access the strip position - double GetStripPositionX( int N , int X , int Y ) { return m_StripPositionX[N-1][X-1][Y-1] ; }; - double GetStripPositionY( int N , int X , int Y ) { return m_StripPositionY[N-1][X-1][Y-1] ; }; - double GetStripPositionZ( int N , int X , int Y ) { return m_StripPositionZ[N-1][X-1][Y-1] ; }; + double GetStripPositionX( const int N , const int X , const int Y ) const{ return m_StripPositionX[N-1][X-1][Y-1] ; } ; + double GetStripPositionY( const int N , const int X , const int Y ) const{ return m_StripPositionY[N-1][X-1][Y-1] ; } ; + double GetStripPositionZ( const int N , const int X , const int Y ) const{ return m_StripPositionZ[N-1][X-1][Y-1] ; } ; - double GetNumberOfTelescope() { return m_NumberOfTelescope ; } ; + double GetNumberOfTelescope() const { return m_NumberOfTelescope ; } ; // To be called after a build Physical Event - int GetEventMultiplicity() { return EventMultiplicity; }; + int GetEventMultiplicity() const { return EventMultiplicity; } ; - double GetEnergyDeposit(int i) { return TotalEnergy[i] ;}; + double GetEnergyDeposit(const int i) const{ return TotalEnergy[i] ;} ; - TVector3 GetPositionOfInteraction(int i) ; - TVector3 GetTelescopeNormal(int i) ; + TVector3 GetPositionOfInteraction(const int i) const ; + TVector3 GetTelescopeNormal(const int i) const ; private: // Parameter used in the analysis @@ -250,20 +249,20 @@ namespace MUST2_LOCAL string itoa(int value); // DSSD // X - double fSi_X_E(TMust2Data* Data , int i); - double fSi_X_T(TMust2Data* Data, int i); + double fSi_X_E(TMust2Data* Data, const int i); + double fSi_X_T(TMust2Data* Data, const int i); // Y - double fSi_Y_E(TMust2Data* Data, int i); - double fSi_Y_T(TMust2Data* Data, int i); + double fSi_Y_E(TMust2Data* Data, const int i); + double fSi_Y_T(TMust2Data* Data, const int i); // SiLi - double fSiLi_E(TMust2Data* Data, int i); - double fSiLi_T(TMust2Data* Data, int i); + double fSiLi_E(TMust2Data* Data, const int i); + double fSiLi_T(TMust2Data* Data, const int i); // CsI - double fCsI_E(TMust2Data* Data, int i); - double fCsI_T(TMust2Data* Data, int i); + double fCsI_E(TMust2Data* Data, const int i); + double fCsI_T(TMust2Data* Data, const int i); } diff --git a/NPLib/SSSD/TSSSDData.h b/NPLib/SSSD/TSSSDData.h index 85de5af28..3eaa01184 100644 --- a/NPLib/SSSD/TSSSDData.h +++ b/NPLib/SSSD/TSSSDData.h @@ -43,32 +43,32 @@ class TSSSDData : public TObject { virtual ~TSSSDData(); void Clear(); - void Clear(const Option_t*) {}; + void Clear(const Option_t*) {}; void Dump() const; ///////////////////// SETTERS //////////////////////// // DSSD // (X,E) - void SetEnergyDetectorNbr (UShort_t DetNbr) { fSSSD_StripE_DetectorNbr.push_back(DetNbr) ;} - void SetEnergyStripNbr (UShort_t StripNbr) { fSSSD_StripE_StripNbr.push_back(StripNbr) ;} - void SetEnergy (Double_t Energy) { fSSSD_StripE_Energy.push_back(Energy) ;} + void SetEnergyDetectorNbr (const UShort_t DetNbr) { fSSSD_StripE_DetectorNbr.push_back(DetNbr) ;} + void SetEnergyStripNbr (const UShort_t StripNbr) { fSSSD_StripE_StripNbr.push_back(StripNbr) ;} + void SetEnergy (const Double_t Energy) { fSSSD_StripE_Energy.push_back(Energy) ;} // (X,T) - void SetTimeDetectorNbr (UShort_t DetNbr) { fSSSD_StripT_DetectorNbr.push_back(DetNbr) ;} - void SetTimeStripNbr (UShort_t StripNbr) { fSSSD_StripT_StripNbr.push_back(StripNbr) ;} - void SetTime (Double_t Time) { fSSSD_StripT_Time.push_back(Time) ;} + void SetTimeDetectorNbr (const UShort_t DetNbr) { fSSSD_StripT_DetectorNbr.push_back(DetNbr) ;} + void SetTimeStripNbr (const UShort_t StripNbr) { fSSSD_StripT_StripNbr.push_back(StripNbr) ;} + void SetTime (const Double_t Time) { fSSSD_StripT_Time.push_back(Time) ;} ///////////////////// GETTERS //////////////////////// // DSSD // (X,E) - UShort_t GetEnergyMult () { return fSSSD_StripE_DetectorNbr.size() ;} - UShort_t GetEnergyDetectorNbr (Int_t i) { return fSSSD_StripE_DetectorNbr.at(i) ;} - UShort_t GetEnergyStripNbr (Int_t i) { return fSSSD_StripE_StripNbr.at(i) ;} - Double_t GetEnergy (Int_t i) { return fSSSD_StripE_Energy.at(i) ;} + UShort_t GetEnergyMult () const { return fSSSD_StripE_DetectorNbr.size() ;} + UShort_t GetEnergyDetectorNbr (const Int_t i) const { return fSSSD_StripE_DetectorNbr.at(i) ;} + UShort_t GetEnergyStripNbr (const Int_t i) const { return fSSSD_StripE_StripNbr.at(i) ;} + Double_t GetEnergy (const Int_t i) const { return fSSSD_StripE_Energy.at(i) ;} // (X,T) - UShort_t GetTimeMult () { return fSSSD_StripT_DetectorNbr.size() ;} - UShort_t GetTimeDetectorNbr (Int_t i) { return fSSSD_StripT_DetectorNbr.at(i) ;} - UShort_t GetTimeStripNbr (Int_t i) { return fSSSD_StripT_StripNbr.at(i) ;} - Double_t GetTime (Int_t i) { return fSSSD_StripT_Time.at(i) ;} + UShort_t GetTimeMult () const { return fSSSD_StripT_DetectorNbr.size() ;} + UShort_t GetTimeDetectorNbr (const Int_t i) const { return fSSSD_StripT_DetectorNbr.at(i) ;} + UShort_t GetTimeStripNbr (const Int_t i) const { return fSSSD_StripT_StripNbr.at(i) ;} + Double_t GetTime (const Int_t i) const { return fSSSD_StripT_Time.at(i) ;} ClassDef(TSSSDData,1) // SSSDData structure }; diff --git a/NPLib/SSSD/TSSSDPhysics.cxx b/NPLib/SSSD/TSSSDPhysics.cxx index 29503b295..6768aeef1 100644 --- a/NPLib/SSSD/TSSSDPhysics.cxx +++ b/NPLib/SSSD/TSSSDPhysics.cxx @@ -31,7 +31,7 @@ #include <limits> #include <stdlib.h> using namespace std; -using namespace LOCAL; +using namespace SSSD_LOCAL; // ROOT #include "TChain.h" @@ -120,7 +120,7 @@ void TSSSDPhysics::ReadConfiguration(string Path) } //Position method - else if (DataBuffer.compare(0, 3, "A=") == 0) { + else if (DataBuffer=="A=") { check_A = true; ConfigFile >> DataBuffer ; TLX = atof(DataBuffer.c_str()) ; @@ -128,10 +128,10 @@ void TSSSDPhysics::ReadConfiguration(string Path) TLY = atof(DataBuffer.c_str()) ; ConfigFile >> DataBuffer ; TLZ = atof(DataBuffer.c_str()) ; - + cout << " A corner Position : (" << TLX << ";"<< TLY << ";"<< TLZ << ")"<<endl; } - else if (DataBuffer.compare(0, 3, "B=") == 0) { + else if (DataBuffer=="B=") { check_B = true; ConfigFile >> DataBuffer ; BLX = atof(DataBuffer.c_str()) ; @@ -139,10 +139,11 @@ void TSSSDPhysics::ReadConfiguration(string Path) BLY = atof(DataBuffer.c_str()) ; ConfigFile >> DataBuffer ; BLZ = atof(DataBuffer.c_str()) ; + cout << " B corner Position : (" << BLX << ";"<< BLY << ";"<< BLZ << ")"<<endl; } - else if (DataBuffer.compare(0, 3, "C=") == 0) { + else if (DataBuffer=="C=") { check_C = true; ConfigFile >> DataBuffer ; BRX = atof(DataBuffer.c_str()) ; @@ -150,10 +151,11 @@ void TSSSDPhysics::ReadConfiguration(string Path) BRY = atof(DataBuffer.c_str()) ; ConfigFile >> DataBuffer ; BRZ = atof(DataBuffer.c_str()) ; + cout << " C corner Position : (" << BRX << ";"<< BRY << ";"<< BRZ << ")"<<endl; } - else if (DataBuffer.compare(0, 3, "D=") == 0) { + else if (DataBuffer=="D=") { check_D = true; ConfigFile >> DataBuffer ; TRX = atof(DataBuffer.c_str()) ; @@ -161,31 +163,34 @@ void TSSSDPhysics::ReadConfiguration(string Path) TRY = atof(DataBuffer.c_str()) ; ConfigFile >> DataBuffer ; TRZ = atof(DataBuffer.c_str()) ; - + cout << " D corner Position : (" << TRX << ";"<< TRY << ";"<< TRZ << ")"<<endl; } //Angle method - else if (DataBuffer.compare(0, 6, "THETA=") == 0) { + else if (DataBuffer=="THETA=") { check_Theta = true; ConfigFile >> DataBuffer ; Theta = atof(DataBuffer.c_str()) ; + cout << " Theta : " << Theta << "deg"<<endl; } - else if (DataBuffer.compare(0, 4, "PHI=") == 0) { + else if (DataBuffer=="PHI=") { check_Phi = true; ConfigFile >> DataBuffer ; Phi = atof(DataBuffer.c_str()) ; + cout << " Phi : " << Phi << "deg"<<endl; } - else if (DataBuffer.compare(0, 2, "R=") == 0) { + else if (DataBuffer=="R=") { check_R = true; ConfigFile >> DataBuffer ; R = atof(DataBuffer.c_str()) ; + cout << " R : " << R << "mm"<<endl; } - else if (DataBuffer.compare(0, 5, "BETA=") == 0) { + else if (DataBuffer=="BETA=") { check_beta = true; ConfigFile >> DataBuffer ; beta_u = atof(DataBuffer.c_str()) ; @@ -193,6 +198,7 @@ void TSSSDPhysics::ReadConfiguration(string Path) beta_v = atof(DataBuffer.c_str()) ; ConfigFile >> DataBuffer ; beta_w = atof(DataBuffer.c_str()) ; + cout << " Beta : (" << beta_u << "deg ; "<< beta_v << "deg ; "<< beta_w << "deg"<<endl; } /////////////////////////////////////////////////// @@ -381,14 +387,14 @@ void TSSSDPhysics::ReadAnalysisConfig() AnalysisConfigFile.ignore(numeric_limits<streamsize>::max(), '\n' ); } - else if (whatToDo.compare(0, 18, "PEDESTAL_THRESHOLD") == 0) { + else if (whatToDo=="PEDESTAL_THRESHOLD") { AnalysisConfigFile >> DataBuffer; m_Pedestal_Threshold = atoi(DataBuffer.c_str() ); - cout << "Pedestal threshold = " << m_Pedestal_Threshold << endl; + cout << "PEDESTAL THRESHOLD " << m_Pedestal_Threshold << endl; } - else if (whatToDo.compare(0, 11, "DISABLE_ALL") == 0) { + else if (whatToDo=="DISABLE_ALL") { AnalysisConfigFile >> DataBuffer; cout << whatToDo << " " << DataBuffer << endl; int Detector = atoi(DataBuffer.substr(2,1).c_str()); @@ -397,7 +403,7 @@ void TSSSDPhysics::ReadAnalysisConfig() ChannelStatus[Detector] = ChannelStatusBuffer; } - else if (whatToDo.compare(0, 15, "DISABLE_CHANNEL") == 0) { + else if (whatToDo=="DISABLE_CHANNEL") { AnalysisConfigFile >> DataBuffer; cout << whatToDo << " " << DataBuffer << endl; int telescope = atoi(DataBuffer.substr(2,1).c_str()); @@ -423,14 +429,14 @@ void TSSSDPhysics::ReadAnalysisConfig() /////////////////////////////////////////////////////////////////////////// - double LOCAL::fSi_E( TSSSDData* EventData , int i ) + double SSSD_LOCAL::fSi_E( const TSSSDData* EventData , const int i ) { return CalibrationManager::getInstance()->ApplyCalibration( "SSSD/Detector" + itoa( EventData->GetEnergyDetectorNbr(i) ) + "_Strip" + itoa( EventData->GetEnergyStripNbr(i) ) +"_E", EventData->GetEnergy(i) ); } - double LOCAL::fSi_T( TSSSDData* EventData , int i ) + double SSSD_LOCAL::fSi_T( const TSSSDData* EventData , const int i ) { return CalibrationManager::getInstance()->ApplyCalibration( "SSSD/Detector" + itoa( EventData->GetEnergyDetectorNbr(i) ) + "_Strip" + itoa( EventData->GetEnergyStripNbr(i) ) +"_T", EventData->GetTime(i) ); diff --git a/NPLib/SSSD/TSSSDPhysics.h b/NPLib/SSSD/TSSSDPhysics.h index ff10938ec..64e74ac0e 100644 --- a/NPLib/SSSD/TSSSDPhysics.h +++ b/NPLib/SSSD/TSSSDPhysics.h @@ -96,8 +96,8 @@ class TSSSDPhysics : public TObject, public NPA::VDetector TSSSDData* PreTreatedData; //! TSSSDPhysics* EventPhysics; //! - double m_E_Threshold; //! - double m_Pedestal_Threshold; //! + double m_E_Threshold; //! + double m_Pedestal_Threshold; //! private: // Map of activated Channel @@ -107,16 +107,16 @@ class TSSSDPhysics : public TObject, public NPA::VDetector // bool IsValidChannel(int DetectorNbr, int StripNbr) ; void Clear(); - void Clear(const Option_t*) {}; + void Clear(const Option_t*) {}; ClassDef(TSSSDPhysics,1) // SSSDPhysics structure }; -namespace LOCAL +namespace SSSD_LOCAL { - double fSi_E( TSSSDData* EventData , int i ); - double fSi_T( TSSSDData* EventData , int i ); + double fSi_E( const TSSSDData* EventData , const int i ); + double fSi_T( const TSSSDData* EventData , const int i ); } #endif -- GitLab