Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Jan de Cuveland
cbmroot
Commits
ee94af22
Commit
ee94af22
authored
Apr 27, 2021
by
Oleg Golosov
Browse files
fix: install CbmConfigBase.h, small change in geometry setting
parent
57525b13
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
39 additions
and
5 deletions
+39
-5
core/CMakeLists.txt
core/CMakeLists.txt
+4
-0
core/config/CbmConfigBase.h
core/config/CbmConfigBase.h
+1
-1
macro/run/config.json
macro/run/config.json
+5
-0
sim/transport/steer/CbmTransportConfig.cxx
sim/transport/steer/CbmTransportConfig.cxx
+26
-4
sim/transport/steer/CbmTransportConfig.h
sim/transport/steer/CbmTransportConfig.h
+3
-0
No files found.
core/CMakeLists.txt
View file @
ee94af22
...
...
@@ -34,3 +34,7 @@ set(CBMDETECTORBASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/detectors PARENT_SCOPE)
If
(
GTEST_FOUND
)
add_subdirectory
(
data/test
)
EndIf
()
Install
(
FILES
${
CMAKE_CURRENT_SOURCE_DIR
}
/config/CbmConfigBase.h
DESTINATION include
)
core/config/CbmConfigBase.h
View file @
ee94af22
...
...
@@ -37,7 +37,7 @@ public:
SetLogLevel
(
tree
);
auto
moduleTree
{
tree
.
get_child_optional
(
Config_t
::
GetModuleTag
())};
if
(
!
moduleTree
)
{
LOG
(
error
)
<<
"CbmConfig: module tag
is
not
correct!
\n
"
;
LOG
(
error
)
<<
"CbmConfig: module tag not
found:"
<<
Config_t
::
GetModuleTag
()
;
return
false
;
}
if
(
!
Validate
(
moduleTree
.
get
()))
return
false
;
...
...
macro/run/config.json
View file @
ee94af22
...
...
@@ -72,6 +72,11 @@
"psd"
:
"v20a"
,
"platform"
:
"v13a"
}
},
"stackFilter"
:
{
"storeAllPrimaries"
:
true
,
"storeAllMothers"
:
true
,
"storeAllDecays"
:
true
}
},
...
...
sim/transport/steer/CbmTransportConfig.cxx
View file @
ee94af22
...
...
@@ -64,7 +64,10 @@ CbmTransportConfig::TagSet_t CbmTransportConfig::GetValidationTags()
"geometry.subsystems.psd"
,
"geometry.subsystems.hodo"
,
"geometry.subsystems.shield"
,
"geometry.subsystems.platform"
};
"geometry.subsystems.platform"
,
"stackFilter.storeAllPrimaries"
,
"stackFilter.storeAllMothers"
,
"stackFilter.storeAllDecays"
};
}
CbmTransportConfig
::
TagSet_t
CbmTransportConfig
::
GetAcceptedGenerators
()
{
return
{
"unigen"
,
"pluto"
,
"beam"
};
}
...
...
@@ -259,6 +262,11 @@ bool CbmTransportConfig::SetTransportParameters(CbmTransport& obj, const pt::ptr
}
bool
CbmTransportConfig
::
SetGeometry
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
)
{
return
SetGeometry
(
obj
.
GetSetup
(),
moduleTree
);
};
bool
CbmTransportConfig
::
SetGeometry
(
CbmSetup
*
setup
,
const
pt
::
ptree
&
moduleTree
)
{
auto
geometry
=
moduleTree
.
get_child_optional
(
"geometry"
);
if
(
!
geometry
)
{
...
...
@@ -267,9 +275,8 @@ bool CbmTransportConfig::SetGeometry(CbmTransport& obj, const pt::ptree& moduleT
}
auto
geometryTree
=
geometry
.
get
();
auto
baseSetup
=
geometryTree
.
get_optional
<
string
>
(
"baseSetup"
);
if
(
baseSetup
)
obj
.
LoadSetup
(
baseSetup
.
get
().
c_str
());
if
(
baseSetup
)
setup
->
LoadSetup
(
baseSetup
.
get
().
c_str
());
auto
setup
=
obj
.
GetSetup
();
auto
fieldTag
=
geometryTree
.
get_optional
<
string
>
(
"magneticField.tag"
);
auto
fieldScale
=
geometryTree
.
get_optional
<
float
>
(
"magneticField.scale"
);
auto
fieldX
=
geometryTree
.
get_optional
<
float
>
(
"magneticField.position.x"
);
...
...
@@ -297,10 +304,25 @@ bool CbmTransportConfig::SetGeometry(CbmTransport& obj, const pt::ptree& moduleT
return
true
;
}
bool
CbmTransportConfig
::
SetStackFilter
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
)
{
auto
stackFilterSettings
=
moduleTree
.
get_child_optional
(
"stackFilter"
);
if
(
!
stackFilterSettings
)
return
true
;
auto
settingsTree
=
stackFilterSettings
.
get
();
auto
&
filter
=
obj
.
GetStackFilter
();
auto
storeAllPrimaries
=
settingsTree
.
get_optional
<
bool
>
(
"storeAllPrimaries"
);
auto
storeAllMothers
=
settingsTree
.
get_optional
<
bool
>
(
"storeAllMothers"
);
auto
storeAllDecays
=
settingsTree
.
get_optional
<
bool
>
(
"storeAllDecays"
);
if
(
storeAllPrimaries
)
filter
->
SetStoreAllPrimaries
(
storeAllPrimaries
.
get
());
if
(
storeAllMothers
)
filter
->
SetStoreAllPrimaries
(
storeAllMothers
.
get
());
if
(
storeAllDecays
)
filter
->
SetStoreAllPrimaries
(
storeAllDecays
.
get
());
return
true
;
}
bool
CbmTransportConfig
::
LoadImpl
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
)
{
return
SetIO
(
obj
,
moduleTree
)
&&
SetTarget
(
obj
,
moduleTree
)
&&
SetBeamProfile
(
obj
,
moduleTree
)
&&
SetTransportParameters
(
obj
,
moduleTree
)
&&
SetGeometry
(
obj
,
moduleTree
);
&&
SetTransportParameters
(
obj
,
moduleTree
)
&&
SetGeometry
(
obj
,
moduleTree
)
&&
SetStackFilter
(
obj
,
moduleTree
);
}
ClassImp
(
CbmTransportConfig
)
sim/transport/steer/CbmTransportConfig.h
View file @
ee94af22
...
...
@@ -3,6 +3,7 @@
#include "CbmConfigBase.h"
class
CbmTransport
;
class
CbmSetup
;
class
CbmTransportConfig
:
public
CbmConfigBase
<
CbmTransportConfig
,
CbmTransport
>
{
...
...
@@ -18,6 +19,8 @@ public:
static
bool
SetBeamProfile
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
);
static
bool
SetTransportParameters
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
);
static
bool
SetGeometry
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
);
static
bool
SetGeometry
(
CbmSetup
*
setup
,
const
pt
::
ptree
&
moduleTree
);
static
bool
SetStackFilter
(
CbmTransport
&
obj
,
const
pt
::
ptree
&
moduleTree
);
ClassDef
(
CbmTransportConfig
,
1
);
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment