Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
LHCb
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Requirements
Jira
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
LHCb
LHCb
Commits
68549368
Commit
68549368
authored
2 years ago
by
Christopher Rob Jones
Browse files
Options
Downloads
Patches
Plain Diff
Don't throw exception if source ID is missing in LHCb Tel40 Link condition
parent
21f4e297
No related branches found
No related tags found
1 merge request
!4014
Use tel40 link condition from DeLHCb detector object with RichTel40CableMapping
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
Rich/RichFutureDAQ/src/lib/RichTel40CableMapping.cpp
+12
-6
12 additions, 6 deletions
Rich/RichFutureDAQ/src/lib/RichTel40CableMapping.cpp
with
12 additions
and
6 deletions
Rich/RichFutureDAQ/src/lib/RichTel40CableMapping.cpp
+
12
−
6
View file @
68549368
...
...
@@ -26,6 +26,10 @@
if ( messenger() ) { ri_debug( __VA_ARGS__ ); }
#define verbo( ... ) \
if ( messenger() ) { ri_verbo( __VA_ARGS__ ); }
#define warning( ... ) \
if ( messenger() ) { ri_warning( __VA_ARGS__ ); }
#define info( ... ) \
if ( messenger() ) { ri_info( __VA_ARGS__ ); }
// boost
#include
"boost/container/static_vector.hpp"
...
...
@@ -156,21 +160,23 @@ void Tel40CableMapping::fillCableMaps( const LHCb::Detector::DeLHCb&
LHCb
::
RichSmartID
smartID
(
rich
,
panel
,
LHCb
::
RichSmartID
::
MaPMTID
);
smartID
.
setLargePMT
(
isLargePMT
);
// Is link active. Start with value in RICH condition.
bool
linkIsActive
=
(
0
!=
status
);
#ifdef USE_DD4HEP
// Use link status flag from general LHCb condition instead of from RICH condition.
const
auto
linksActive
=
lhcb
.
tell40link
(
sourceID
.
data
()
);
if
(
!
linksActive
.
has_value
()
)
{
throw
Rich
::
Exception
(
"Source ID '"
+
std
::
to_string
(
sourceID
.
data
()
)
+
"' is missing in LHCb Tel40 Link condition data"
);
warning
(
"Source ID '"
,
sourceID
.
data
(),
"' is missing in LHCb Tel40 Link condition"
,
endmsg
);
}
else
{
// LHCb general condition has this source ID so use its value instead.
linkIsActive
=
linksActive
.
value
().
isEnabled
(
link
.
data
()
);
// temporary sanity check
assert
(
status
==
linkIsActive
);
}
const
bool
linkIsActive
=
linksActive
.
value
().
isEnabled
(
link
.
data
()
);
// temporary sanity check
assert
(
status
==
linkIsActive
);
#else
// with DetDesc just use RICH value
// Eventually once DetDesc is dropped the use of the RICH status code can be dropped
// entirely both here and from the condition itself in dd4hep.
const
bool
linkIsActive
=
(
0
!=
status
);
#endif
// link data struct
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment