Project
Loading...
Searching...
No Matches
IRFrameFilter.cxx
Go to the documentation of this file.
1
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3
// All rights not expressly granted are reserved.
4
//
5
// This software is distributed under the terms of the GNU General Public
6
// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7
//
8
// In applying this license CERN does not waive the privileges and immunities
9
// granted to it by virtue of its status as an Intergovernmental Organization
10
// or submit itself to any jurisdiction.
11
12
#include "
MCHROFFiltering/IRFrameFilter.h
"
13
#include "
CommonDataFormat/InteractionRecord.h
"
14
15
using
o2::InteractionRecord
;
16
using
o2::dataformats::IRFrame
;
17
18
namespace
o2::mch
19
{
20
ROFFilter
createIRFrameFilter
(gsl::span<const o2::dataformats::IRFrame> irframes)
21
{
22
return
[irframes](
const
ROFRecord
& rof) {
23
InteractionRecord
rofStart{rof.getBCData()};
24
InteractionRecord
rofEnd = rofStart + rof.getBCWidth() - 1;
25
IRFrame
ref
(rofStart, rofEnd);
26
for
(
const
auto
&
ir
: irframes) {
27
if
(
ir
.info > 0) {
28
auto
overlap =
ref
.getOverlap(
ir
);
29
if
(overlap.isValid()) {
30
return
true
;
31
}
32
}
33
}
34
return
false
;
35
};
36
}
37
}
// namespace o2::mch
IRFrameFilter.h
InteractionRecord.h
int
o2::mch::ROFRecord
Definition
ROFRecord.h:35
ref
GLint ref
Definition
glcorearb.h:291
o2::mch
Definition
SimTraits.h:155
o2::mch::ROFFilter
std::function< bool(const ROFRecord &)> ROFFilter
Definition
ROFFilter.h:25
o2::mch::createIRFrameFilter
ROFFilter createIRFrameFilter(gsl::span< const o2::dataformats::IRFrame > irframes)
Definition
IRFrameFilter.cxx:20
o2::InteractionRecord
Definition
InteractionRecord.h:27
o2::dataformats::IRFrame
Definition
IRFrame.h:30
ir
o2::InteractionRecord ir(0, 0)
Detectors
MUON
MCH
ROFFiltering
src
IRFrameFilter.cxx
Generated on Tue Feb 25 2025 17:03:06 for Project by
1.9.8