Skip to content
Snippets Groups Projects
Commit de2091e2 authored by Cyril Lenain's avatar Cyril Lenain :surfer_tone3:
Browse files

Adding HF multiplicity in FissionChamber

parent e76d466e
No related branches found
No related tags found
No related merge requests found
Pipeline #191012 passed
...@@ -88,6 +88,8 @@ class TFissionChamberData : public TObject { ...@@ -88,6 +88,8 @@ class TFissionChamberData : public TObject {
{return fFC_Time[i];}//! {return fFC_Time[i];}//!
inline Double_t GetTimeHF(const unsigned int &i) const inline Double_t GetTimeHF(const unsigned int &i) const
{return fFC_Time_HF[i];}//! {return fFC_Time_HF[i];}//!
inline UShort_t GetHFMultiplicity() const
{return fFC_Time_HF.size();}//!
inline Bool_t GetFakeFissionStatus(const unsigned int &i) const inline Bool_t GetFakeFissionStatus(const unsigned int &i) const
{return fFC_isFakeFission[i];}//! {return fFC_isFakeFission[i];}//!
......
...@@ -81,7 +81,7 @@ void TFissionChamberPhysics::BuildSimplePhysicalEvent() { ...@@ -81,7 +81,7 @@ void TFissionChamberPhysics::BuildSimplePhysicalEvent() {
void TFissionChamberPhysics::BuildPhysicalEvent() { void TFissionChamberPhysics::BuildPhysicalEvent() {
// apply thresholds and calibration // apply thresholds and calibration
PreTreat(); PreTreat();
// match energy and time together // match energy and time together
unsigned int mysizeE = m_PreTreatedData->GetMultiplicity(); unsigned int mysizeE = m_PreTreatedData->GetMultiplicity();
for (UShort_t e = 0; e < mysizeE ; e++) { for (UShort_t e = 0; e < mysizeE ; e++) {
...@@ -89,9 +89,14 @@ void TFissionChamberPhysics::BuildPhysicalEvent() { ...@@ -89,9 +89,14 @@ void TFissionChamberPhysics::BuildPhysicalEvent() {
Q1.push_back(m_PreTreatedData->GetQ1(e)); Q1.push_back(m_PreTreatedData->GetQ1(e));
Q2.push_back(m_PreTreatedData->GetQ2(e)); Q2.push_back(m_PreTreatedData->GetQ2(e));
Time.push_back(m_PreTreatedData->GetTime(e)); Time.push_back(m_PreTreatedData->GetTime(e));
Time_HF.push_back(m_PreTreatedData->GetTimeHF(e));
isFakeFission.push_back(m_PreTreatedData->GetFakeFissionStatus(e)); isFakeFission.push_back(m_PreTreatedData->GetFakeFissionStatus(e));
} }
unsigned int mysizeHF = m_PreTreatedData->GetHFMultiplicity();
for(UShort_t e =0; e < mysizeHF ; e++){
Time_HF.push_back(m_PreTreatedData->GetTimeHF(e));
}
} }
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
...@@ -119,9 +124,13 @@ void TFissionChamberPhysics::PreTreat() { ...@@ -119,9 +124,13 @@ void TFissionChamberPhysics::PreTreat() {
m_PreTreatedData->SetQ2(Q2); m_PreTreatedData->SetQ2(Q2);
m_PreTreatedData->SetTime(Time); m_PreTreatedData->SetTime(Time);
m_PreTreatedData->SetFakeFissionStatus(m_EventData->GetFakeFissionStatus(i)); m_PreTreatedData->SetFakeFissionStatus(m_EventData->GetFakeFissionStatus(i));
m_PreTreatedData->SetTimeHF(m_EventData->GetTimeHF(i));
} }
} }
unsigned int mysizeHF = m_EventData->GetHFMultiplicity();
for (UShort_t i = 0; i < mysizeHF ; ++i) {
m_PreTreatedData->SetTimeHF(m_EventData->GetTimeHF(i));
}
} }
...@@ -215,7 +224,7 @@ void TFissionChamberPhysics::ReadConfiguration(NPL::InputParser parser) { ...@@ -215,7 +224,7 @@ void TFissionChamberPhysics::ReadConfiguration(NPL::InputParser parser) {
if(blocks[i]->HasTokenList(cart)){ if(blocks[i]->HasTokenList(cart)){
if(NPOptionManager::getInstance()->GetVerboseLevel()) if(NPOptionManager::getInstance()->GetVerboseLevel())
cout << endl << "//// FissionChamber " << i+1 << endl; cout << endl << "//// FissionChamber " << i+1 << endl;
TVector3 Pos = blocks[i]->GetTVector3("POS","mm"); TVector3 Pos = blocks[i]->GetTVector3("POS","mm");
string gas = blocks[i]->GetString("GasMaterial"); string gas = blocks[i]->GetString("GasMaterial");
double pressure = blocks[i]->GetDouble("Pressure","bar"); double pressure = blocks[i]->GetDouble("Pressure","bar");
...@@ -334,14 +343,14 @@ NPL::VDetector* TFissionChamberPhysics::Construct() { ...@@ -334,14 +343,14 @@ NPL::VDetector* TFissionChamberPhysics::Construct() {
// Registering the construct method to the factory // // Registering the construct method to the factory //
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
extern "C"{ extern "C"{
class proxy_FissionChamber{ class proxy_FissionChamber{
public: public:
proxy_FissionChamber(){ proxy_FissionChamber(){
NPL::DetectorFactory::getInstance()->AddToken("FissionChamber","FissionChamber"); NPL::DetectorFactory::getInstance()->AddToken("FissionChamber","FissionChamber");
NPL::DetectorFactory::getInstance()->AddDetector("FissionChamber",TFissionChamberPhysics::Construct); NPL::DetectorFactory::getInstance()->AddDetector("FissionChamber",TFissionChamberPhysics::Construct);
} }
}; };
proxy_FissionChamber p_FissionChamber; proxy_FissionChamber p_FissionChamber;
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment