Skip to content

Commit

Permalink
Fail test when calling function twice
Browse files Browse the repository at this point in the history
Change the Initialize function such that it asserts when the function is
called twice.
  • Loading branch information
fuhlig1 committed Jun 7, 2022
1 parent 32b25f3 commit 8e817e6
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
10 changes: 10 additions & 0 deletions examples/simulation/Tutorial1/src/FairTutorialDet1.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ FairTutorialDet1::FairTutorialDet1()
, fTime(-1.)
, fLength(-1.)
, fELoss(-1)
, fIsInitialised(kFALSE)
, fFairTutorialDet1PointCollection(new TClonesArray("FairTutorialDet1Point"))
{}

Expand All @@ -43,6 +44,7 @@ FairTutorialDet1::FairTutorialDet1(const char* name, Bool_t active)
, fTime(-1.)
, fLength(-1.)
, fELoss(-1)
, fIsInitialised(kFALSE)
, fFairTutorialDet1PointCollection(new TClonesArray("FairTutorialDet1Point"))
{}

Expand All @@ -55,6 +57,7 @@ FairTutorialDet1::FairTutorialDet1(const FairTutorialDet1& rhs)
, fTime(-1.)
, fLength(-1.)
, fELoss(-1)
, fIsInitialised(kFALSE)
, fFairTutorialDet1PointCollection(new TClonesArray("FairTutorialDet1Point"))
{}

Expand All @@ -68,7 +71,14 @@ FairTutorialDet1::~FairTutorialDet1()

void FairTutorialDet1::Initialize()
{

LOG(info) << "Initializing FairTutorialDet1";

// Prevent duplicate initialisation
assert(!fIsInitialised);

FairDetector::Initialize();
fIsInitialised = kTRUE;
/*
FairRuntimeDb* rtdb= FairRun::Instance()->GetRuntimeDb();
FairTutorialDet1GeoPar* par=(FairTutorialDet1GeoPar*)(rtdb->getContainer("FairTutorialDet1GeoPar"));
Expand Down
2 changes: 2 additions & 0 deletions examples/simulation/Tutorial1/src/FairTutorialDet1.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,8 @@ class FairTutorialDet1 : public FairDetector
Double32_t fLength; //! length
Double32_t fELoss; //! energy loss

Bool_t fIsInitialised; //! prevent double initilization

/** container for data points */

TClonesArray* fFairTutorialDet1PointCollection;
Expand Down

0 comments on commit 8e817e6

Please sign in to comment.