Skip to content

Commit befca57

Browse files
committed
FairModule: move member variable initialization to the header file
Static thread_local member variables initialization in the source file does not work within pyROOT. Moved all member initialization to the header file.
1 parent 166170e commit befca57

2 files changed

Lines changed: 14 additions & 40 deletions

File tree

fairroot/base/sim/FairModule.cxx

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,6 @@
5353

5454
class FairGeoMedium;
5555

56-
thread_local TArrayI* FairModule::volNumber = 0;
57-
thread_local Int_t FairModule::fNbOfVolumes = 0;
58-
thread_local FairVolumeList* FairModule::vList = 0;
59-
thread_local TRefArray* FairModule::svList = 0;
60-
6156
void FairModule::ConstructGeometry()
6257
{
6358
LOG(warn)
@@ -74,16 +69,7 @@ FairModule::~FairModule() {}
7469

7570
FairModule::FairModule(const char* Name, const char* title, Bool_t Active)
7671
: TNamed(Name, title)
77-
, fMotherVolumeName("")
78-
, fgeoVer("Not defined")
79-
, fgeoName("Not defined")
80-
, fModId(-1)
8172
, fActive(Active)
82-
, fNbOfSensitiveVol(0)
83-
, fVerboseLevel(0)
84-
, flGeoPar(nullptr)
85-
, fGeoSaved(kFALSE)
86-
, fMC(nullptr)
8773
{
8874
if (!svList) {
8975
svList = new TRefArray();
@@ -102,9 +88,7 @@ FairModule::FairModule(const FairModule& rhs)
10288
, fActive(rhs.fActive)
10389
, fNbOfSensitiveVol(rhs.fNbOfSensitiveVol)
10490
, fVerboseLevel(rhs.fVerboseLevel)
105-
, flGeoPar(nullptr)
10691
, fGeoSaved(rhs.fGeoSaved)
107-
, fMC(nullptr)
10892
{
10993
if (!svList) {
11094
svList = new TRefArray();
@@ -135,16 +119,6 @@ FairModule::FairModule(const FairModule& rhs)
135119

136120
FairModule::FairModule()
137121
: TNamed()
138-
, fMotherVolumeName("")
139-
, fgeoVer("Not defined")
140-
, fgeoName("Not defined")
141-
, fModId(-1)
142-
, fActive(kFALSE)
143-
, fNbOfSensitiveVol(0)
144-
, fVerboseLevel(0)
145-
, flGeoPar(nullptr)
146-
, fGeoSaved(kFALSE)
147-
, fMC(nullptr)
148122
{}
149123

150124
FairModule& FairModule::operator=(const FairModule& rhs)

fairroot/base/sim/FairModule.h

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -137,14 +137,14 @@ class FairModule : public TNamed
137137
TList* GetListOfGeoPar() { return flGeoPar; }
138138

139139
/**list of volumes in a simulation session*/
140-
static thread_local FairVolumeList* vList; //!
140+
static thread_local inline FairVolumeList* vList{0}; //!
141141
/**total number of volumes in a simulaion session*/
142-
static thread_local Int_t fNbOfVolumes; //!
142+
static thread_local inline Int_t fNbOfVolumes{0}; //!
143143
/**list of all sensitive volumes in a simulaion session*/
144-
static thread_local TRefArray* svList; //!
144+
static thread_local inline TRefArray* svList{0}; //!
145145

146-
static thread_local TArrayI* volNumber; //!
147-
TString fMotherVolumeName; //!
146+
static thread_local inline TArrayI* volNumber{0}; //!
147+
TString fMotherVolumeName{""}; //!
148148
FairVolume* getFairVolume(FairGeoNode* fNode);
149149
void AddSensitiveVolume(TGeoVolume* v);
150150

@@ -160,15 +160,15 @@ class FairModule : public TNamed
160160
protected:
161161
FairModule(const FairModule&);
162162
FairModule& operator=(const FairModule&);
163-
TString fgeoVer;
164-
TString fgeoName;
165-
Int_t fModId;
166-
Bool_t fActive;
167-
Int_t fNbOfSensitiveVol; //!
168-
Int_t fVerboseLevel;
169-
TList* flGeoPar; //! list of Detector Geometry parameters
170-
Bool_t fGeoSaved; //! flag for initialisation
171-
TVirtualMC* fMC; //! cahed pointer to MC (available only after initialization)
163+
TString fgeoVer{"Not defined"};
164+
TString fgeoName{"Not defined"};
165+
Int_t fModId{-1};
166+
Bool_t fActive{kFALSE};
167+
Int_t fNbOfSensitiveVol{0}; //!
168+
Int_t fVerboseLevel{0};
169+
TList* flGeoPar{nullptr}; //! list of Detector Geometry parameters
170+
Bool_t fGeoSaved{kFALSE}; //! flag for initialisation
171+
TVirtualMC* fMC{nullptr}; //! cahed pointer to MC (available only after initialization)
172172

173173
ClassDefOverride(FairModule, 4);
174174
};

0 commit comments

Comments
 (0)