FWCore
Framework
src
LuminosityBlockProcessingStatus.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
//
3
// Package: FWCore/Framework
4
// Class : LuminosityBlockProcessingStatus
5
//
6
// Implementation:
7
// [Notes on implementation]
8
//
9
// Original Author: Chris Jones
10
// Created: Thu, 11 Jan 2018 16:41:46 GMT
11
//
12
13
// system include files
14
15
// user include files
16
#include "
LuminosityBlockProcessingStatus.h
"
17
#include "
FWCore/Framework/interface/LuminosityBlockPrincipal.h
"
18
19
namespace
edm
{
20
void
LuminosityBlockProcessingStatus::resetResources
() {
21
endIOVWaitingTasks_
.
doneWaiting
(std::exception_ptr{});
22
for
(
auto
& iter :
eventSetupImpls_
) {
23
iter.reset();
24
}
25
resumeGlobalLumiQueue
();
26
run_
.reset();
27
}
28
29
void
LuminosityBlockProcessingStatus::setEndTime
() {
30
if
(2 !=
endTimeSetStatus_
) {
31
//not already set
32
char
expected = 0;
33
if
(
endTimeSetStatus_
.compare_exchange_strong(expected, 1)) {
34
lumiPrincipal_
->setEndTime(
endTime_
);
35
endTimeSetStatus_
.store(2);
36
}
else
{
37
//wait until time is set
38
while
(2 !=
endTimeSetStatus_
.load()) {
39
}
40
}
41
}
42
}
43
}
// namespace edm
edm::LuminosityBlockProcessingStatus::endTimeSetStatus_
std::atomic< char > endTimeSetStatus_
Definition:
LuminosityBlockProcessingStatus.h:121
edm
HLT enums.
Definition:
AlignableModifier.h:19
edm::LuminosityBlockProcessingStatus::run_
std::shared_ptr< void > run_
Definition:
LuminosityBlockProcessingStatus.h:112
edm::LuminosityBlockProcessingStatus::eventSetupImpls_
std::vector< std::shared_ptr< const EventSetupImpl > > eventSetupImpls_
Definition:
LuminosityBlockProcessingStatus.h:115
edm::LuminosityBlockProcessingStatus::setEndTime
void setEndTime()
Definition:
LuminosityBlockProcessingStatus.cc:29
edm::LuminosityBlockProcessingStatus::resetResources
void resetResources()
Definition:
LuminosityBlockProcessingStatus.cc:20
edm::WaitingTaskList::doneWaiting
void doneWaiting(std::exception_ptr iPtr)
Signals that the resource is now available and tasks should be spawned.
Definition:
WaitingTaskList.cc:169
LuminosityBlockProcessingStatus.h
edm::LuminosityBlockProcessingStatus::lumiPrincipal_
std::shared_ptr< LuminosityBlockPrincipal > lumiPrincipal_
Definition:
LuminosityBlockProcessingStatus.h:114
edm::LuminosityBlockProcessingStatus::endIOVWaitingTasks_
WaitingTaskList endIOVWaitingTasks_
Definition:
LuminosityBlockProcessingStatus.h:116
edm::LuminosityBlockProcessingStatus::endTime_
edm::Timestamp endTime_
Definition:
LuminosityBlockProcessingStatus.h:120
LuminosityBlockPrincipal.h
edm::LuminosityBlockProcessingStatus::resumeGlobalLumiQueue
void resumeGlobalLumiQueue()
Definition:
LuminosityBlockProcessingStatus.h:54
Generated for CMSSW Reference Manual by
1.8.16