Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
np
nptool
Commits
c2ea4aa2
Commit
c2ea4aa2
authored
Jun 03, 2021
by
Morfouace
Browse files
Adding Sofia detectors to NPLib
parent
42785e9c
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
1797 additions
and
5 deletions
+1797
-5
NPLib/Detectors/Sofia/CMakeLists.txt
NPLib/Detectors/Sofia/CMakeLists.txt
+19
-5
NPLib/Detectors/Sofia/TSofAtData.cxx
NPLib/Detectors/Sofia/TSofAtData.cxx
+64
-0
NPLib/Detectors/Sofia/TSofAtData.h
NPLib/Detectors/Sofia/TSofAtData.h
+84
-0
NPLib/Detectors/Sofia/TSofMwpcData.cxx
NPLib/Detectors/Sofia/TSofMwpcData.cxx
+63
-0
NPLib/Detectors/Sofia/TSofMwpcData.h
NPLib/Detectors/Sofia/TSofMwpcData.h
+81
-0
NPLib/Detectors/Sofia/TSofSciData.cxx
NPLib/Detectors/Sofia/TSofSciData.cxx
+63
-0
NPLib/Detectors/Sofia/TSofSciData.h
NPLib/Detectors/Sofia/TSofSciData.h
+81
-0
NPLib/Detectors/Sofia/TSofTofWData.cxx
NPLib/Detectors/Sofia/TSofTofWData.cxx
+66
-0
NPLib/Detectors/Sofia/TSofTofWData.h
NPLib/Detectors/Sofia/TSofTofWData.h
+88
-0
NPLib/Detectors/Sofia/TSofTofWPhysics.cxx
NPLib/Detectors/Sofia/TSofTofWPhysics.cxx
+284
-0
NPLib/Detectors/Sofia/TSofTofWPhysics.h
NPLib/Detectors/Sofia/TSofTofWPhysics.h
+152
-0
NPLib/Detectors/Sofia/TSofTrimData.cxx
NPLib/Detectors/Sofia/TSofTrimData.cxx
+65
-0
NPLib/Detectors/Sofia/TSofTrimData.h
NPLib/Detectors/Sofia/TSofTrimData.h
+87
-0
NPLib/Detectors/Sofia/TSofTrimPhysics.cxx
NPLib/Detectors/Sofia/TSofTrimPhysics.cxx
+291
-0
NPLib/Detectors/Sofia/TSofTrimPhysics.h
NPLib/Detectors/Sofia/TSofTrimPhysics.h
+157
-0
NPLib/Detectors/Sofia/TSofTwimData.cxx
NPLib/Detectors/Sofia/TSofTwimData.cxx
+65
-0
NPLib/Detectors/Sofia/TSofTwimData.h
NPLib/Detectors/Sofia/TSofTwimData.h
+87
-0
No files found.
NPLib/Detectors/Sofia/CMakeLists.txt
View file @
c2ea4aa2
add_custom_command
(
OUTPUT TSofiaPhysicsDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofiaPhysics.h TSofiaPhysicsDict.cxx TSofiaPhysics.rootmap libNPSofia.dylib DEPENDS TSofiaPhysics.h
)
add_custom_command
(
OUTPUT TSofiaDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofiaData.h TSofiaDataDict.cxx TSofiaData.rootmap libNPSofia.dylib DEPENDS TSofiaData.h
)
add_library
(
NPSofia SHARED TSofiaSpectra.cxx TSofiaData.cxx TSofiaPhysics.cxx TSofiaDataDict.cxx TSofiaPhysicsDict.cxx
)
target_link_libraries
(
NPSofia
${
ROOT_LIBRARIES
}
NPCore
)
install
(
FILES TSofiaData.h TSofiaPhysics.h TSofiaSpectra.h DESTINATION
${
CMAKE_INCLUDE_OUTPUT_DIRECTORY
}
)
add_custom_command
(
OUTPUT TSofSciDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofSciData.h TSofSciDataDict.cxx TSofSciData.rootmap libNPSofia.dylib DEPENDS TSofSciData.h
)
add_custom_command
(
OUTPUT TSofTofWDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofTofWData.h TSofTofWDataDict.cxx TSofTofWData.rootmap libNPSofia.dylib DEPENDS TSofTofWData.h
)
add_custom_command
(
OUTPUT TSofTofWPhysicsDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofTofWPhysics.h TSofTofWPhysicsDict.cxx TSofTofWPhysics.rootmap libNPSofia.dylib DEPENDS TSofTofWPhysics.h
)
add_custom_command
(
OUTPUT TSofMwpcDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofMwpcData.h TSofMwpcDataDict.cxx TSofMwpcData.rootmap libNPSofia.dylib DEPENDS TSofMwpcData.h
)
add_custom_command
(
OUTPUT TSofAtDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofAtData.h TSofAtDataDict.cxx TSofAtData.rootmap libNPSofia.dylib DEPENDS TSofAtData.h
)
add_custom_command
(
OUTPUT TSofTrimDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofTrimData.h TSofTrimDataDict.cxx TSofTrimData.rootmap libNPSofia.dylib DEPENDS TSofTrimData.h
)
add_custom_command
(
OUTPUT TSofTrimPhysicsDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofTrimPhysics.h TSofTrimPhysicsDict.cxx TSofTrimPhysics.rootmap libNPSofia.dylib DEPENDS TSofTrimPhysics.h
)
add_custom_command
(
OUTPUT TSofTwimDataDict.cxx COMMAND
${
CMAKE_BINARY_DIR
}
/scripts/build_dict.sh TSofTwimData.h TSofTwimDataDict.cxx TSofTwimData.rootmap libNPSofia.dylib DEPENDS TSofTwimData.h
)
add_library
(
NPSofia SHARED TSofSciData.cxx TSofSciDataDict.cxx TSofMwpcData.cxx TSofMwpcDataDict.cxx TSofAtData.cxx TSofAtDataDict.cxx TSofTrimData.cxx TSofTrimDataDict.cxx TSofTrimPhysics.cxx TSofTrimPhysicsDict.cxx TSofTwimData.cxx TSofTwimDataDict.cxx TSofTofWData.cxx TSofTofWDataDict.cxx TSofTofWPhysics.cxx TSofTofWPhysicsDict.cxx
)
target_link_libraries
(
NPSofia
${
ROOT_LIBRARIES
}
NPCore NPPhysics
)
install
(
FILES TSofSciData.h TSofMwpcData.h TSofAtData.h TSofTrimData.h TSofTrimPhysics.h TSofTwimData.h TSofTofWData.h TSofTofWPhysics.h DESTINATION
${
CMAKE_INCLUDE_OUTPUT_DIRECTORY
}
)
NPLib/Detectors/Sofia/TSofAtData.cxx
0 → 100644
View file @
c2ea4aa2
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* Creation Date : May 2021 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofAt Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include "TSofAtData.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using
namespace
std
;
ClassImp
(
TSofAtData
)
//////////////////////////////////////////////////////////////////////
TSofAtData
::
TSofAtData
()
{
}
//////////////////////////////////////////////////////////////////////
TSofAtData
::~
TSofAtData
()
{
}
//////////////////////////////////////////////////////////////////////
void
TSofAtData
::
Clear
()
{
fAT_AnodeNbr
.
clear
();
fAT_Energy
.
clear
();
fAT_Time
.
clear
();
fAT_PileUp
.
clear
();
fAT_Overflow
.
clear
();
}
//////////////////////////////////////////////////////////////////////
void
TSofAtData
::
Dump
()
const
{
// This method is very useful for debuging and worth the dev.
cout
<<
"XXXXXXXXXXXXXXXXXXXXXXXX New Event [TSofAtData::Dump()] XXXXXXXXXXXXXXXXX"
<<
endl
;
// Energy
size_t
mysize
=
fAT_AnodeNbr
.
size
();
cout
<<
"AT_Mult: "
<<
GetMultiplicity
()
<<
endl
;
}
NPLib/Detectors/Sofia/TSofAtData.h
0 → 100644
View file @
c2ea4aa2
#ifndef __SofAtDATA__
#define __SofAtDATA__
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* *
* Creation Date : May 2021 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofAt Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
// STL
#include <vector>
using
namespace
std
;
// ROOT
#include "TObject.h"
class
TSofAtData
:
public
TObject
{
//////////////////////////////////////////////////////////////
// data members are hold into vectors in order
// to allow multiplicity treatment
private:
vector
<
int
>
fAT_AnodeNbr
;
vector
<
double
>
fAT_Energy
;
vector
<
double
>
fAT_Time
;
vector
<
bool
>
fAT_PileUp
;
vector
<
bool
>
fAT_Overflow
;
//////////////////////////////////////////////////////////////
// Constructor and destructor
public:
TSofAtData
();
~
TSofAtData
();
//////////////////////////////////////////////////////////////
// Inherited from TObject and overriden to avoid warnings
public:
void
Clear
();
void
Clear
(
const
Option_t
*
)
{};
void
Dump
()
const
;
//////////////////////////////////////////////////////////////
// Getters and Setters
// Prefer inline declaration to avoid unnecessary called of
// frequently used methods
// add //! to avoid ROOT creating dictionnary for the methods
public:
////////////////////// SETTERS ////////////////////////
inline
void
SetAnodeNbr
(
int
det
){
fAT_AnodeNbr
.
push_back
(
det
);};
//!
inline
void
SetEnergy
(
double
Energy
){
fAT_Energy
.
push_back
(
Energy
);};
//!
inline
void
SetTime
(
double
Time
){
fAT_Time
.
push_back
(
Time
);};
//!
inline
void
SetPileUp
(
bool
ispileup
){
fAT_PileUp
.
push_back
(
ispileup
);};
//!
inline
void
SetOverflow
(
bool
isoverflow
){
fAT_Overflow
.
push_back
(
isoverflow
);};
//!
////////////////////// GETTERS ////////////////////////
inline
int
GetMultiplicity
()
const
{
return
fAT_AnodeNbr
.
size
();}
//!
inline
int
GetAnodeNbr
(
const
unsigned
int
&
i
)
const
{
return
fAT_AnodeNbr
[
i
];}
//!
inline
double
GetEnergy
(
const
unsigned
int
&
i
)
const
{
return
fAT_Energy
[
i
];}
//!
inline
double
GetTime
(
const
unsigned
int
&
i
)
const
{
return
fAT_Time
[
i
];}
//!
inline
bool
GetPileUp
(
const
unsigned
int
&
i
)
const
{
return
fAT_PileUp
[
i
];}
//!
inline
bool
GetOverflow
(
const
unsigned
int
&
i
)
const
{
return
fAT_Overflow
[
i
];}
//!
//////////////////////////////////////////////////////////////
// Required for ROOT dictionnary
ClassDef
(
TSofAtData
,
1
)
// SofAtData structure
};
#endif
NPLib/Detectors/Sofia/TSofMwpcData.cxx
0 → 100644
View file @
c2ea4aa2
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* Creation Date : May 2021 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofMwpc Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include "TSofMwpcData.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using
namespace
std
;
ClassImp
(
TSofMwpcData
)
//////////////////////////////////////////////////////////////////////
TSofMwpcData
::
TSofMwpcData
()
{
}
//////////////////////////////////////////////////////////////////////
TSofMwpcData
::~
TSofMwpcData
()
{
}
//////////////////////////////////////////////////////////////////////
void
TSofMwpcData
::
Clear
()
{
fMwpc_DetNbr
.
clear
();
fMwpc_Plane
.
clear
();
fMwpc_Pad
.
clear
();
fMwpc_Charge
.
clear
();
}
//////////////////////////////////////////////////////////////////////
void
TSofMwpcData
::
Dump
()
const
{
// This method is very useful for debuging and worth the dev.
cout
<<
"XXXXXXXXXXXXXXXXXXXXXXXX New Event [TSofMwpcData::Dump()] XXXXXXXXXXXXXXXXX"
<<
endl
;
// Energy
size_t
mysize
=
fMwpc_Charge
.
size
();
cout
<<
"MWPC_Mult: "
<<
GetMultiplicity
()
<<
endl
;
}
NPLib/Detectors/Sofia/TSofMwpcData.h
0 → 100644
View file @
c2ea4aa2
#ifndef __SofMwpcDATA__
#define __SofMwpcDATA__
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* *
* Creation Date : May 2021 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofMwpc Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
// STL
#include <vector>
using
namespace
std
;
// ROOT
#include "TObject.h"
class
TSofMwpcData
:
public
TObject
{
//////////////////////////////////////////////////////////////
// data members are hold into vectors in order
// to allow multiplicity treatment
private:
vector
<
int
>
fMwpc_DetNbr
;
vector
<
int
>
fMwpc_Plane
;
vector
<
int
>
fMwpc_Pad
;
vector
<
int
>
fMwpc_Charge
;
//////////////////////////////////////////////////////////////
// Constructor and destructor
public:
TSofMwpcData
();
~
TSofMwpcData
();
//////////////////////////////////////////////////////////////
// Inherited from TObject and overriden to avoid warnings
public:
void
Clear
();
void
Clear
(
const
Option_t
*
)
{};
void
Dump
()
const
;
//////////////////////////////////////////////////////////////
// Getters and Setters
// Prefer inline declaration to avoid unnecessary called of
// frequently used methods
// add //! to avoid ROOT creating dictionnary for the methods
public:
////////////////////// SETTERS ////////////////////////
inline
void
SetDetectorNbr
(
int
det
){
fMwpc_DetNbr
.
push_back
(
det
);};
//!
inline
void
SetPlane
(
int
p
){
fMwpc_Plane
.
push_back
(
p
);};
//!
inline
void
SetPad
(
int
p
){
fMwpc_Pad
.
push_back
(
p
);};
//!
inline
void
SetCharge
(
int
q
){
fMwpc_Charge
.
push_back
(
q
);};
//!
////////////////////// GETTERS ////////////////////////
inline
int
GetMultiplicity
()
const
{
return
fMwpc_DetNbr
.
size
();}
//!
inline
int
GetDetectorNbr
(
const
unsigned
int
&
i
)
const
{
return
fMwpc_DetNbr
[
i
];}
//!
inline
int
GetPlane
(
const
unsigned
int
&
i
)
const
{
return
fMwpc_Plane
[
i
];}
//!
inline
int
GetPad
(
const
unsigned
int
&
i
)
const
{
return
fMwpc_Pad
[
i
];}
//!
inline
int
GetCharge
(
const
unsigned
int
&
i
)
const
{
return
fMwpc_Charge
[
i
];}
//!
//////////////////////////////////////////////////////////////
// Required for ROOT dictionnary
ClassDef
(
TSofMwpcData
,
1
)
// SofMwpcData structure
};
#endif
NPLib/Detectors/Sofia/TSofSciData.cxx
0 → 100644
View file @
c2ea4aa2
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* Creation Date : May 2021 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofSci Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include "TSofSciData.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using
namespace
std
;
ClassImp
(
TSofSciData
)
//////////////////////////////////////////////////////////////////////
TSofSciData
::
TSofSciData
()
{
}
//////////////////////////////////////////////////////////////////////
TSofSciData
::~
TSofSciData
()
{
}
//////////////////////////////////////////////////////////////////////
void
TSofSciData
::
Clear
()
{
fSofSci_DetNbr
.
clear
();
fSofSci_Pmt
.
clear
();
fSofSci_CT
.
clear
();
fSofSci_FT
.
clear
();
}
//////////////////////////////////////////////////////////////////////
void
TSofSciData
::
Dump
()
const
{
// This method is very useful for debuging and worth the dev.
cout
<<
"XXXXXXXXXXXXXXXXXXXXXXXX New Event [TSofSciData::Dump()] XXXXXXXXXXXXXXXXX"
<<
endl
;
// Energy
size_t
mysize
=
fSofSci_DetNbr
.
size
();
cout
<<
"SofSci_Mult: "
<<
GetMultiplicity
()
<<
endl
;
}
NPLib/Detectors/Sofia/TSofSciData.h
0 → 100644
View file @
c2ea4aa2
#ifndef __SofSciDATA__
#define __SofSciDATA__
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* *
* Creation Date : May 2021 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofSci Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
// STL
#include <vector>
using
namespace
std
;
// ROOT
#include "TObject.h"
class
TSofSciData
:
public
TObject
{
//////////////////////////////////////////////////////////////
// data members are hold into vectors in order
// to allow multiplicity treatment
private:
vector
<
int
>
fSofSci_DetNbr
;
vector
<
int
>
fSofSci_Pmt
;
vector
<
double
>
fSofSci_CT
;
vector
<
double
>
fSofSci_FT
;
//////////////////////////////////////////////////////////////
// Constructor and destructor
public:
TSofSciData
();
~
TSofSciData
();
//////////////////////////////////////////////////////////////
// Inherited from TObject and overriden to avoid warnings
public:
void
Clear
();
void
Clear
(
const
Option_t
*
)
{};
void
Dump
()
const
;
//////////////////////////////////////////////////////////////
// Getters and Setters
// Prefer inline declaration to avoid unnecessary called of
// frequently used methods
// add //! to avoid ROOT creating dictionnary for the methods
public:
////////////////////// SETTERS ////////////////////////
inline
void
SetDetectorNbr
(
int
det
){
fSofSci_DetNbr
.
push_back
(
det
);};
//!
inline
void
SetPmt
(
int
pmt
){
fSofSci_Pmt
.
push_back
(
pmt
);};
//!
inline
void
SetCoarseTime
(
double
Time
){
fSofSci_CT
.
push_back
(
Time
);};
//!
inline
void
SetFineTime
(
double
Time
){
fSofSci_FT
.
push_back
(
Time
);};
//!
////////////////////// GETTERS ////////////////////////
inline
int
GetMultiplicity
()
const
{
return
fSofSci_DetNbr
.
size
();}
//!
inline
int
GetDetectorNbr
(
const
unsigned
int
&
i
)
const
{
return
fSofSci_DetNbr
[
i
];}
//!
inline
int
GetPmt
(
const
unsigned
int
&
i
)
const
{
return
fSofSci_Pmt
[
i
];}
//!
inline
double
GetCoarseTime
(
const
unsigned
int
&
i
)
const
{
return
fSofSci_CT
[
i
];}
//!
inline
double
GetFineTime
(
const
unsigned
int
&
i
)
const
{
return
fSofSci_FT
[
i
];}
//!
//////////////////////////////////////////////////////////////
// Required for ROOT dictionnary
ClassDef
(
TSofSciData
,
1
)
// SofSciData structure
};
#endif
NPLib/Detectors/Sofia/TSofTofWData.cxx
0 → 100644
View file @
c2ea4aa2
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* *
* Creation Date : November 2020 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold Sofia Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include "TSofTofWData.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using
namespace
std
;
ClassImp
(
TSofTofWData
)
//////////////////////////////////////////////////////////////////////
TSofTofWData
::
TSofTofWData
()
{
}
//////////////////////////////////////////////////////////////////////
TSofTofWData
::~
TSofTofWData
()
{
}
//////////////////////////////////////////////////////////////////////
void
TSofTofWData
::
Clear
()
{
fTOF_PlasticNbr
.
clear
();
fTOF_Pmt
.
clear
();
fTOF_Energy
.
clear
();
fTOF_CT
.
clear
();
fTOF_FT
.
clear
();
fTOF_WhichFlag
.
clear
();
}
//////////////////////////////////////////////////////////////////////
void
TSofTofWData
::
Dump
()
const
{
// This method is very useful for debuging and worth the dev.
cout
<<
"XXXXXXXXXXXXXXXXXXXXXXXX New Event [TSofTofWData::Dump()] XXXXXXXXXXXXXXXXX"
<<
endl
;
// Energy
size_t
mysize
=
fTOF_PlasticNbr
.
size
();
cout
<<
"TOF_Mult: "
<<
mysize
<<
endl
;
}
NPLib/Detectors/Sofia/TSofTofWData.h
0 → 100644
View file @
c2ea4aa2
#ifndef __SofTofWDATA__
#define __SofTofWDATA__
/*****************************************************************************
* Copyright (C) 2009-2020 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: Pierre Morfouace contact address: pierre.morfouace2@cea.fr *
* *
* Creation Date : November 2020 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold SofTofW Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
// STL
#include <vector>
using
namespace
std
;
// ROOT
#include "TObject.h"
class
TSofTofWData
:
public
TObject
{
//////////////////////////////////////////////////////////////
// data members are hold into vectors in order
// to allow multiplicity treatment
private:
vector
<
int
>
fTOF_PlasticNbr
;
vector
<
int
>
fTOF_Pmt
;
vector
<
double
>
fTOF_Energy
;
vector
<
double
>
fTOF_CT
;
vector
<
double
>
fTOF_FT
;
vector
<
bool
>
fTOF_WhichFlag
;
//////////////////////////////////////////////////////////////
// Constructor and destructor
public:
TSofTofWData
();
~
TSofTofWData
();
//////////////////////////////////////////////////////////////
// Inherited from TObject and overriden to avoid warnings
public:
void
Clear
();
void
Clear
(
const
Option_t
*
)
{};
void
Dump
()
const
;
//////////////////////////////////////////////////////////////
// Getters and Setters
// Prefer inline declaration to avoid unnecessary called of
// frequently used methods
// add //! to avoid ROOT creating dictionnary for the methods
public:
////////////////////// SETTERS ////////////////////////
inline
void
SetPlasticNbr
(
int
plastic
){
fTOF_PlasticNbr
.
push_back
(
plastic
);};
//!
inline
void
SetPmt
(
int
pmt
){
fTOF_Pmt
.
push_back
(
pmt
);};
//!
inline
void
SetEnergy
(
double
Energy
){
fTOF_Energy
.
push_back
(
Energy
);};
//!
inline
void
SetCoarseTime
(
double
Time
){
fTOF_CT
.
push_back
(
Time
);};
//!
inline
void
SetFineTime
(
double
Time
){
fTOF_FT
.
push_back
(
Time
);};
//!
inline
void
SetWhichFlag
(
bool
flag
){
fTOF_WhichFlag
.
push_back
(
flag
);};
//!
////////////////////// GETTERS ////////////////////////