CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
edm::eventsetup::SynchronousEventSetupsController Class Reference

#include <SynchronousEventSetupsController.h>

Public Member Functions

void eventSetupForInstance (IOVSyncValue const &)
 
std::shared_ptr
< EventSetupProvider
makeProvider (ParameterSet &, ActivityRegistry *, ParameterSet const *eventSetupPset=nullptr)
 
SynchronousEventSetupsController
const & 
operator= (SynchronousEventSetupsController const &)=delete
 
SynchronousEventSetupsController
const & 
operator= (SynchronousEventSetupsController &&)=delete
 
 SynchronousEventSetupsController ()
 
 SynchronousEventSetupsController (SynchronousEventSetupsController const &)=delete
 
 SynchronousEventSetupsController (SynchronousEventSetupsController &&)=delete
 
 ~SynchronousEventSetupsController ()
 

Private Attributes

EventSetupsController controller_
 
oneapi::tbb::global_control globalControl_
 
oneapi::tbb::task_group taskGroup_
 

Detailed Description

Description: Manages a group of EventSetups which can share components.

Usage: Useful for unit testing parts of the EventSetup system

Definition at line 30 of file SynchronousEventSetupsController.h.

Constructor & Destructor Documentation

edm::eventsetup::SynchronousEventSetupsController::SynchronousEventSetupsController ( )

Definition at line 24 of file SynchronousEventSetupsController.cc.

25  : globalControl_(oneapi::tbb::global_control::max_allowed_parallelism, 1) {}
edm::eventsetup::SynchronousEventSetupsController::~SynchronousEventSetupsController ( )

Definition at line 27 of file SynchronousEventSetupsController.cc.

References controller_, edm::FinalWaitingTask::done(), edm::eventsetup::EventSetupsController::endIOVsAsync(), and taskGroup_.

27  {
28  FinalWaitingTask finalTask;
30  do {
31  taskGroup_.wait();
32  } while (not finalTask.done());
33  }
void endIOVsAsync(edm::WaitingTaskHolder iEndTask)
edm::eventsetup::SynchronousEventSetupsController::SynchronousEventSetupsController ( SynchronousEventSetupsController const &  )
delete
edm::eventsetup::SynchronousEventSetupsController::SynchronousEventSetupsController ( SynchronousEventSetupsController &&  )
delete

Member Function Documentation

void edm::eventsetup::SynchronousEventSetupsController::eventSetupForInstance ( IOVSyncValue const &  syncValue)

Definition at line 40 of file SynchronousEventSetupsController.cc.

References controller_, edm::eventsetup::synchronousEventSetupForInstance(), and taskGroup_.

40  {
42  }
void synchronousEventSetupForInstance(IOVSyncValue const &syncValue, oneapi::tbb::task_group &iGroup, eventsetup::EventSetupsController &espController)
std::shared_ptr< EventSetupProvider > edm::eventsetup::SynchronousEventSetupsController::makeProvider ( ParameterSet iPSet,
ActivityRegistry activityRegistry,
ParameterSet const *  eventSetupPset = nullptr 
)

Definition at line 35 of file SynchronousEventSetupsController.cc.

References controller_, and edm::eventsetup::EventSetupsController::makeProvider().

36  {
37  return controller_.makeProvider(iPSet, activityRegistry, eventSetupPset);
38  }
std::shared_ptr< EventSetupProvider > makeProvider(ParameterSet &, ActivityRegistry *, ParameterSet const *eventSetupPset=nullptr, unsigned int maxConcurrentIOVs=0, bool dumpOptions=false)
SynchronousEventSetupsController const& edm::eventsetup::SynchronousEventSetupsController::operator= ( SynchronousEventSetupsController const &  )
delete
SynchronousEventSetupsController const& edm::eventsetup::SynchronousEventSetupsController::operator= ( SynchronousEventSetupsController &&  )
delete

Member Data Documentation

EventSetupsController edm::eventsetup::SynchronousEventSetupsController::controller_
private
oneapi::tbb::global_control edm::eventsetup::SynchronousEventSetupsController::globalControl_
private

Definition at line 48 of file SynchronousEventSetupsController.h.

oneapi::tbb::task_group edm::eventsetup::SynchronousEventSetupsController::taskGroup_
private