Skip to content
Snippets Groups Projects
Commit 73ee2ab6 authored by de Séréville Nicolas's avatar de Séréville Nicolas
Browse files

+ Add Charissa detector in NPLib (data class only)

parent 68888018
No related branches found
No related tags found
No related merge requests found
include ../Makefile.arch
#------------------------------------------------------------------------------
#SHARELIB = libCharissaData.so libCharissaPhysics.so libCharissaSpectra.so
SHARELIB = libCharissa.so
all: $(SHARELIB)
#------------------------------------------------------------------------------
############### Detector ##############
## MUST2 ##
#libCharissa.so: TCharissaData.o TCharissaDataDict.o TCharissaPhysics.o TCharissaPhysicsDict.o TCharissaSpectra.o
libCharissa.so: TCharissaData.o TCharissaDataDict.o
$(LD) $(SOFLAGS) $^ $(OutPutOpt) $@
TCharissaDataDict.cxx: TCharissaData.h
rootcint -f $@ -c $^
TCharissaPhysicsDict.cxx: TCharissaPhysics.h
rootcint -f $@ -c $^
# dependances
TCharissaData.o: TCharissaData.cxx TCharissaData.h
TCharissaPhysics.o: TCharissaPhysics.cxx TCharissaPhysics.h
TCharissaSpectra.o: TCharissaSpectra.cxx TCharissaSpectra.h
#######################################
############# Clean and More ##########
clean:
@rm -f core *~ *.o *Dict*
distclean:
make clean; rm -f *.so
.SUFFIXES: .$(SrcSuf)
###
.$(SrcSuf).$(ObjSuf):
$(CXX) $(CXXFLAGS) $(INCLUDE) -c $<
/*****************************************************************************
* Copyright (C) 2009-2013 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: Adrien MATTA contact address: matta@ipno.in2p3.fr *
* *
* Creation Date : febuary 2009 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class hold must2 Raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include <iostream>
using namespace std;
#include "TCharissaData.h"
ClassImp(TCharissaData)
TCharissaData::TCharissaData()
{
// Default constructor
Clear();
}
TCharissaData::~TCharissaData()
{
}
void TCharissaData::Clear()
{
// DSSSD 1st layer
// (X,E)
fCharissa_Layer1_StripXE_DetectorNbr.clear();
fCharissa_Layer1_StripXE_StripNbr.clear();
fCharissa_Layer1_StripXE_Energy.clear();
// (X,T)
fCharissa_Layer1_StripXT_DetectorNbr.clear();
fCharissa_Layer1_StripXT_StripNbr.clear();
fCharissa_Layer1_StripXT_Time.clear();
// (Y,E)
fCharissa_Layer1_StripYE_DetectorNbr.clear();
fCharissa_Layer1_StripYE_StripNbr.clear();
fCharissa_Layer1_StripYE_Energy.clear();
// (Y,T)
fCharissa_Layer1_StripYT_DetectorNbr.clear();
fCharissa_Layer1_StripYT_StripNbr.clear();
fCharissa_Layer1_StripYT_Time.clear();
// DSSSD 2nd layer
// (X,E)
fCharissa_Layer2_StripXE_DetectorNbr.clear();
fCharissa_Layer2_StripXE_StripNbr.clear();
fCharissa_Layer2_StripXE_Energy.clear();
// (X,T)
fCharissa_Layer2_StripXT_DetectorNbr.clear();
fCharissa_Layer2_StripXT_StripNbr.clear();
fCharissa_Layer2_StripXT_Time.clear();
// (Y,E)
fCharissa_Layer2_StripYE_DetectorNbr.clear();
fCharissa_Layer2_StripYE_StripNbr.clear();
fCharissa_Layer2_StripYE_Energy.clear();
// (Y,T)
fCharissa_Layer2_StripYT_DetectorNbr.clear();
fCharissa_Layer2_StripYT_StripNbr.clear();
fCharissa_Layer2_StripYT_Time.clear();
// CsI E
fCharissa_CsIE_DetectorNbr.clear();
fCharissa_CsIE_CristalNbr.clear();
fCharissa_CsIE_Energy.clear();
// CsI T
fCharissa_CsIT_DetectorNbr.clear();
fCharissa_CsIT_CristalNbr.clear();
fCharissa_CsIT_Time.clear();
}
void TCharissaData::Dump() const
{
cout << "XXXXXXXXXXXXXXXXXXXXXXXX TCharissaData: New Event XXXXXXXXXXXXXXXXX" << endl;
// DSSSD 1st layer
// (X,E)
cout << "Charissa_Layer1_StripXE_Mult = " << fCharissa_Layer1_StripXE_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer1_StripXE_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer1_StripXE_DetectorNbr[i] << " Strip: " << fCharissa_Layer1_StripXE_StripNbr[i] << " Energy: " << fCharissa_Layer1_StripXE_Energy[i] << endl;
// (X,T)
cout << "Charissa_Layer1 StripXT_Mult = " << fCharissa_Layer1_StripXT_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer1_StripXT_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer1_StripXT_DetectorNbr[i] << " Strip: " << fCharissa_Layer1_StripXT_StripNbr[i] << " Time: " << fCharissa_Layer1_StripXT_Time[i] << endl;
// (Y,E)
cout << "Charissa_Layer1 StripYE_Mult = " << fCharissa_Layer1_StripYE_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer1_StripYE_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer1_StripYE_DetectorNbr[i] << " Strip: " << fCharissa_Layer1_StripYE_StripNbr[i] << " Energy: " << fCharissa_Layer1_StripYE_Energy[i] << endl;
// (Y,T)
cout << "Charissa_Layer1 StripYT_Mult = " << fCharissa_Layer1_StripYT_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer1_StripYT_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer1_StripYT_DetectorNbr[i] << " Strip: " << fCharissa_Layer1_StripYT_StripNbr[i] << " Time: " << fCharissa_Layer1_StripYT_Time[i] << endl;
// DSSSD 2nd layer
// (X,E)
cout << "Charissa_Layer2_StripXE_Mult = " << fCharissa_Layer2_StripXE_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer2_StripXE_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer2_StripXE_DetectorNbr[i] << " Strip: " << fCharissa_Layer2_StripXE_StripNbr[i] << " Energy: " << fCharissa_Layer2_StripXE_Energy[i] << endl;
// (X,T)
cout << "Charissa_Layer2 StripXT_Mult = " << fCharissa_Layer2_StripXT_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer2_StripXT_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer2_StripXT_DetectorNbr[i] << " Strip: " << fCharissa_Layer2_StripXT_StripNbr[i] << " Time: " << fCharissa_Layer2_StripXT_Time[i] << endl;
// (Y,E)
cout << "Charissa_Layer2 StripYE_Mult = " << fCharissa_Layer2_StripYE_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer2_StripYE_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer2_StripYE_DetectorNbr[i] << " Strip: " << fCharissa_Layer2_StripYE_StripNbr[i] << " Energy: " << fCharissa_Layer2_StripYE_Energy[i] << endl;
// (Y,T)
cout << "Charissa_Layer2 StripYT_Mult = " << fCharissa_Layer2_StripYT_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_Layer2_StripYT_DetectorNbr.size(); i++)
cout << "DetNbr: " << fCharissa_Layer2_StripYT_DetectorNbr[i] << " Strip: " << fCharissa_Layer2_StripYT_StripNbr[i] << " Time: " << fCharissa_Layer2_StripYT_Time[i] << endl;
// CsI
// Energy
cout << "Charissa_CsIE_Mult = " << fCharissa_CsIE_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_CsIE_DetectorNbr.size(); i++)
cout << "Det: " << fCharissa_CsIE_DetectorNbr[i] << " Pad: " << fCharissa_CsIE_CristalNbr[i] << " Energy: " << fCharissa_CsIE_Energy[i] << endl;
// Time
cout << "Charissa_CsIT_Mult = " << fCharissa_CsIT_DetectorNbr.size() << endl;
for (UShort_t i = 0; i < fCharissa_CsIT_DetectorNbr.size(); i++)
cout << "Det: " << fCharissa_CsIT_DetectorNbr[i] << " Pad: " << fCharissa_CsIT_CristalNbr[i] << " Time: " << fCharissa_CsIT_Time[i] << endl;
}
#ifndef __MUST2DATA__
#define __MUST2DATA__
/*****************************************************************************
* Copyright (C) 2009-2013 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: N. de Sereville contact address: deserevi@ipno.in2p3.fr *
* *
* Creation Date : december 2013 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class holds Charissa raw data *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include "TObject.h"
#include <vector>
using namespace std;
class TCharissaData : public TObject {
private:
// DSSSD 1st layer
// X strips
// Energy
vector<UShort_t> fCharissa_Layer1_StripXE_DetectorNbr;
vector<UShort_t> fCharissa_Layer1_StripXE_StripNbr;
vector<Double_t> fCharissa_Layer1_StripXE_Energy;
// Time
vector<UShort_t> fCharissa_Layer1_StripXT_DetectorNbr;
vector<UShort_t> fCharissa_Layer1_StripXT_StripNbr;
vector<Double_t> fCharissa_Layer1_StripXT_Time;
// Y strips
// Energy
vector<UShort_t> fCharissa_Layer1_StripYE_DetectorNbr;
vector<UShort_t> fCharissa_Layer1_StripYE_StripNbr;
vector<Double_t> fCharissa_Layer1_StripYE_Energy;
// Time
vector<UShort_t> fCharissa_Layer1_StripYT_DetectorNbr;
vector<UShort_t> fCharissa_Layer1_StripYT_StripNbr;
vector<Double_t> fCharissa_Layer1_StripYT_Time;
// DSSSD 2nd layer
// X strips
// Energy
vector<UShort_t> fCharissa_Layer2_StripXE_DetectorNbr;
vector<UShort_t> fCharissa_Layer2_StripXE_StripNbr;
vector<Double_t> fCharissa_Layer2_StripXE_Energy;
// Time
vector<UShort_t> fCharissa_Layer2_StripXT_DetectorNbr;
vector<UShort_t> fCharissa_Layer2_StripXT_StripNbr;
vector<Double_t> fCharissa_Layer2_StripXT_Time;
// Y strips
// Energy
vector<UShort_t> fCharissa_Layer2_StripYE_DetectorNbr;
vector<UShort_t> fCharissa_Layer2_StripYE_StripNbr;
vector<Double_t> fCharissa_Layer2_StripYE_Energy;
// Time
vector<UShort_t> fCharissa_Layer2_StripYT_DetectorNbr;
vector<UShort_t> fCharissa_Layer2_StripYT_StripNbr;
vector<Double_t> fCharissa_Layer2_StripYT_Time;
// CsI
// Energy
vector<UShort_t> fCharissa_CsIE_DetectorNbr;
vector<UShort_t> fCharissa_CsIE_CristalNbr;
vector<Double_t> fCharissa_CsIE_Energy;
// Time
vector<UShort_t> fCharissa_CsIT_DetectorNbr;
vector<UShort_t> fCharissa_CsIT_CristalNbr;
vector<Double_t> fCharissa_CsIT_Time;
public:
TCharissaData();
virtual ~TCharissaData();
void Clear();
void Clear(const Option_t*) {};
void Dump() const;
///////////////////// SETTERS ////////////////////////
// DSSSD 1st stage
// (X,E)
void SetCharissaLayer1StripXEDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer1_StripXE_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer1StripXEStripNbr(const UShort_t StripNbr) {fCharissa_Layer1_StripXE_StripNbr.push_back(StripNbr);}
void SetCharissaLayer1StripXEEnergy(const Double_t Energy) {fCharissa_Layer1_StripXE_Energy.push_back(Energy);}
// (X,T)
void SetCharissaLayer1StripXTDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer1_StripXT_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer1StripXTStripNbr(const UShort_t StripNbr) {fCharissa_Layer1_StripXT_StripNbr.push_back(StripNbr);}
void SetCharissaLayer1StripXTTime(const Double_t Time) {fCharissa_Layer1_StripXT_Time.push_back(Time);}
// (Y,E)
void SetCharissaLayer1StripYEDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer1_StripYE_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer1StripYEStripNbr(const UShort_t StripNbr) {fCharissa_Layer1_StripYE_StripNbr.push_back(StripNbr);}
void SetCharissaLayer1StripYEEnergy(const Double_t Energy) {fCharissa_Layer1_StripYE_Energy.push_back(Energy);}
// (Y,T)
void SetCharissaLayer1StripYTDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer1_StripYT_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer1StripYTStripNbr(const UShort_t StripNbr) {fCharissa_Layer1_StripYT_StripNbr.push_back(StripNbr);}
void SetCharissaLayer1StripYTTime(const Double_t Time) {fCharissa_Layer1_StripYT_Time.push_back(Time);}
// DSSSD 2nd stage
// (X,E)
void SetCharissaLayer2StripXEDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer2_StripXE_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer2StripXEStripNbr(const UShort_t StripNbr) {fCharissa_Layer2_StripXE_StripNbr.push_back(StripNbr);}
void SetCharissaLayer2StripXEEnergy(const Double_t Energy) {fCharissa_Layer2_StripXE_Energy.push_back(Energy);}
// (X,T)
void SetCharissaLayer2StripXTDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer2_StripXT_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer2StripXTStripNbr(const UShort_t StripNbr) {fCharissa_Layer2_StripXT_StripNbr.push_back(StripNbr);}
void SetCharissaLayer2StripXTTime(const Double_t Time) {fCharissa_Layer2_StripXT_Time.push_back(Time);}
// (Y,E)
void SetCharissaLayer2StripYEDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer2_StripYE_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer2StripYEStripNbr(const UShort_t StripNbr) {fCharissa_Layer2_StripYE_StripNbr.push_back(StripNbr);}
void SetCharissaLayer2StripYEEnergy(const Double_t Energy) {fCharissa_Layer2_StripYE_Energy.push_back(Energy);}
// (Y,T)
void SetCharissaLayer2StripYTDetectorNbr(const UShort_t DetNbr) {fCharissa_Layer2_StripYT_DetectorNbr.push_back(DetNbr);}
void SetCharissaLayer2StripYTStripNbr(const UShort_t StripNbr) {fCharissa_Layer2_StripYT_StripNbr.push_back(StripNbr);}
void SetCharissaLayer2StripYTTime(const Double_t Time) {fCharissa_Layer2_StripYT_Time.push_back(Time);}
// CsI
// (E)
void SetCharissaCsIEDetectorNbr(const UShort_t DetNbr) {fCharissa_CsIE_DetectorNbr.push_back(DetNbr);}
void SetCharissaCsIECristalNbr(const UShort_t CristalNbr) {fCharissa_CsIE_CristalNbr.push_back(CristalNbr);}
void SetCharissaCsIEEnergy(const Double_t Energy) {fCharissa_CsIE_Energy.push_back(Energy);}
// (T)
void SetCharissaCsITDetectorNbr(const UShort_t DetNbr) {fCharissa_CsIT_DetectorNbr.push_back(DetNbr);}
void SetCharissaCsITCristalNbr(const UShort_t CristalNbr) {fCharissa_CsIT_CristalNbr.push_back(CristalNbr);}
void SetCharissaCsITTime(const Double_t Time) {fCharissa_CsIT_Time.push_back(Time);}
///////////////////// GETTERS ////////////////////////
// DSSSD 1st layer
// (X,E)
UShort_t GetCharissaLayer1StripXEMult() const {return fCharissa_Layer1_StripXE_DetectorNbr.size();}
UShort_t GetCharissaLayer1StripXEDetectorNbr(const Int_t i) const {return fCharissa_Layer1_StripXE_DetectorNbr[i];}
UShort_t GetCharissaLayer1StripXEStripNbr(const Int_t i) const {return fCharissa_Layer1_StripXE_StripNbr[i];}
Double_t GetCharissaLayer1StripXEEnergy(const Int_t i) const {return fCharissa_Layer1_StripXE_Energy[i];}
// (X,T)
UShort_t GetCharissaLayer1StripXTMult() const {return fCharissa_Layer1_StripXT_DetectorNbr.size();}
UShort_t GetCharissaLayer1StripXTDetectorNbr(const Int_t i) const {return fCharissa_Layer1_StripXT_DetectorNbr[i];}
UShort_t GetCharissaLayer1StripXTStripNbr(const Int_t i) const {return fCharissa_Layer1_StripXT_StripNbr[i];}
Double_t GetCharissaLayer1StripXTTime(const Int_t i) const {return fCharissa_Layer1_StripXT_Time[i];}
// (Y,E)
UShort_t GetCharissaLayer1StripYEMult() const {return fCharissa_Layer1_StripYE_DetectorNbr.size();}
UShort_t GetCharissaLayer1StripYEDetectorNbr(const Int_t i) const {return fCharissa_Layer1_StripYE_DetectorNbr[i];}
UShort_t GetCharissaLayer1StripYEStripNbr(const Int_t i) const {return fCharissa_Layer1_StripYE_StripNbr[i];}
Double_t GetCharissaLayer1StripYEEnergy(const Int_t i) const {return fCharissa_Layer1_StripYE_Energy[i];}
// (Y,T)
UShort_t GetCharissaLayer1StripYTMult() const {return fCharissa_Layer1_StripYT_DetectorNbr.size();}
UShort_t GetCharissaLayer1StripYTDetectorNbr(const Int_t i) const {return fCharissa_Layer1_StripYT_DetectorNbr[i];}
UShort_t GetCharissaLayer1StripYTStripNbr(const Int_t i) const {return fCharissa_Layer1_StripYT_StripNbr[i];}
Double_t GetCharissaLayer1StripYTTime(const Int_t i) const {return fCharissa_Layer1_StripYT_Time[i];}
// DSSSD 2nd layer
// (X,E)
UShort_t GetCharissaLayer2StripXEMult() const {return fCharissa_Layer2_StripXE_DetectorNbr.size();}
UShort_t GetCharissaLayer2StripXEDetectorNbr(const Int_t i) const {return fCharissa_Layer2_StripXE_DetectorNbr[i];}
UShort_t GetCharissaLayer2StripXEStripNbr(const Int_t i) const {return fCharissa_Layer2_StripXE_StripNbr[i];}
Double_t GetCharissaLayer2StripXEEnergy(const Int_t i) const {return fCharissa_Layer2_StripXE_Energy[i];}
// (X,T)
UShort_t GetCharissaLayer2StripXTMult() const {return fCharissa_Layer2_StripXT_DetectorNbr.size();}
UShort_t GetCharissaLayer2StripXTDetectorNbr(const Int_t i) const {return fCharissa_Layer2_StripXT_DetectorNbr[i];}
UShort_t GetCharissaLayer2StripXTStripNbr(const Int_t i) const {return fCharissa_Layer2_StripXT_StripNbr[i];}
Double_t GetCharissaLayer2StripXTTime(const Int_t i) const {return fCharissa_Layer2_StripXT_Time[i];}
// (Y,E)
UShort_t GetCharissaLayer2StripYEMult() const {return fCharissa_Layer2_StripYE_DetectorNbr.size();}
UShort_t GetCharissaLayer2StripYEDetectorNbr(const Int_t i) const {return fCharissa_Layer2_StripYE_DetectorNbr[i];}
UShort_t GetCharissaLayer2StripYEStripNbr(const Int_t i) const {return fCharissa_Layer2_StripYE_StripNbr[i];}
Double_t GetCharissaLayer2StripYEEnergy(const Int_t i) const {return fCharissa_Layer2_StripYE_Energy[i];}
// (Y,T)
UShort_t GetCharissaLayer2StripYTMult() const {return fCharissa_Layer2_StripYT_DetectorNbr.size();}
UShort_t GetCharissaLayer2StripYTDetectorNbr(const Int_t i) const {return fCharissa_Layer2_StripYT_DetectorNbr[i];}
UShort_t GetCharissaLayer2StripYTStripNbr(const Int_t i) const {return fCharissa_Layer2_StripYT_StripNbr[i];}
Double_t GetCharissaLayer2StripYTTime(const Int_t i) const {return fCharissa_Layer2_StripYT_Time[i];}
// CsI
//(E)
UShort_t GetCharissaCsIEMult() const {return fCharissa_CsIE_DetectorNbr.size();}
UShort_t GetCharissaCsIEDetectorNbr(const Int_t i) const {return fCharissa_CsIE_DetectorNbr[i];}
UShort_t GetCharissaCsIECristalNbr(const Int_t i) const {return fCharissa_CsIE_CristalNbr[i];}
Double_t GetCharissaCsIEEnergy(const Int_t i) const {return fCharissa_CsIE_Energy[i];}
//(T)
UShort_t GetCharissaCsITMult() const {return fCharissa_CsIT_DetectorNbr.size();}
UShort_t GetCharissaCsITDetectorNbr(const Int_t i) const {return fCharissa_CsIT_DetectorNbr[i];}
UShort_t GetCharissaCsITCristalNbr(const Int_t i) const {return fCharissa_CsIT_CristalNbr[i];}
Double_t GetCharissaCsITTime(const Int_t i) const {return fCharissa_CsIT_Time[i];}
ClassDef(TCharissaData,1) // CharissaData structure
};
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment