Commit 71674e3a authored by Stezowski Olivier's avatar Stezowski Olivier
Browse files

Merge branch 'GEMWithTalys' into 'preprod'

Gem with talys

See merge request !39
parents e65bfbb3 bef356c7
Pipeline #31349 passed with stages
in 5 minutes and 55 seconds
...@@ -171,6 +171,25 @@ BaseGEM::BaseGEM(): ...@@ -171,6 +171,25 @@ BaseGEM::BaseGEM():
fAD.SetOwner(kTRUE); fAD.SetOwner(kTRUE);
} }
BaseGEM::BaseGEM(LevelScheme *lev) :
TObject(),
fLevelScheme(lev), fFeeding(), fRandFeeding(), fRandDown(), fAD(), fRand0(), fTmp(), fEoC(),
fDirection(kDown),
fMinEnergyFactor(10.0),
fADType(0),
fCutLifeTime(0.0000000001), /* 0.1*ns from Krane 1971 */
fSigma(0.0)
{
fTmp.SetOwner(kTRUE);
fRandDown.SetOwner(kTRUE);
fFeeding.SetOwner(kTRUE);
fRandFeeding.SetOwner(kTRUE);
fAD.SetOwner(kTRUE);
InitRandom();
}
BaseGEM::~BaseGEM() BaseGEM::~BaseGEM()
{ {
BaseGEM::Clear(""); // clear everything BaseGEM::Clear(""); // clear everything
...@@ -576,7 +595,7 @@ Int_t BaseGEM::DoCascade(TSeqCollection &cas, TSeqCollection &directions, Int_t ...@@ -576,7 +595,7 @@ Int_t BaseGEM::DoCascade(TSeqCollection &cas, TSeqCollection &directions, Int_t
obj = ((RandObj *)fRandFeeding.At( which_first ))->Rand(); obj = ((RandObj *)fRandFeeding.At( which_first ))->Rand();
while ( obj != &fEoC ) { while ( obj != &fEoC ) {
link = (Link *)fLevelScheme->GetLinks().At(obj->GetUniqueID()); link = (Link *)fLevelScheme->GetLinks().At(obj->GetUniqueID());
result_one_link += link->DoCascade(cas,o); result_one_link = link->DoCascade(cas,o);
for (Int_t i = result; i < result + result_one_link; i++) { // make sur the direction collection is synchronize with cas for (Int_t i = result; i < result + result_one_link; i++) { // make sur the direction collection is synchronize with cas
if ( directions.At(i) == 0 ) { if ( directions.At(i) == 0 ) {
......
...@@ -142,6 +142,7 @@ namespace Gw { ...@@ -142,6 +142,7 @@ namespace Gw {
public: public:
BaseGEM(); BaseGEM();
BaseGEM(LevelScheme *);
virtual ~BaseGEM(); virtual ~BaseGEM();
//! To get all the entry point in this level scheme with their intensities //! To get all the entry point in this level scheme with their intensities
......
...@@ -105,7 +105,7 @@ protected: ...@@ -105,7 +105,7 @@ protected:
BaseLSPlayer* fPlayer; //! level scheme player pointer BaseLSPlayer* fPlayer; //! level scheme player pointer
protected: public:
//! Add level //! Add level
void AddLevel(Level* level); void AddLevel(Level* level);
......
...@@ -63,6 +63,8 @@ public: ...@@ -63,6 +63,8 @@ public:
void Set(Parity::EParity); void Set(Parity::EParity);
bool IsParity(Parity::EParity) const; bool IsParity(Parity::EParity) const;
virtual Short_t Get() ;
//! set the value, can be overloaded //! set the value, can be overloaded
virtual void Set(const char *s) ; virtual void Set(const char *s) ;
...@@ -76,6 +78,8 @@ public: ...@@ -76,6 +78,8 @@ public:
inline bool Parity::IsQNumber(QNumber::EQtype t) const { return kParity == t; } inline bool Parity::IsQNumber(QNumber::EQtype t) const { return kParity == t; }
inline void Parity::Set(Parity::EParity p) { fParity = p; } inline void Parity::Set(Parity::EParity p) { fParity = p; }
inline bool Parity::IsParity(Parity::EParity p) const { return p == fParity; } inline bool Parity::IsParity(Parity::EParity p) const { return p == fParity; }
inline Short_t Parity::Get() { return fParity; }
} }
//! to write a parity in a stream //! to write a parity in a stream
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment