CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes | Friends

edm::UnscheduledHandler Class Reference

#include <UnscheduledHandler.h>

Inheritance diagram for edm::UnscheduledHandler:
edm::UnscheduledCallProducer

List of all members.

Public Member Functions

UnscheduledHandleroperator= (UnscheduledHandler const &)
void setEventSetup (EventSetup const &iSetup)
bool tryToFill (std::string const &label, EventPrincipal &iEvent)
 returns true if found an EDProducer and ran it
 UnscheduledHandler ()
 UnscheduledHandler (UnscheduledHandler const &)
virtual ~UnscheduledHandler ()

Private Member Functions

CurrentProcessingContext const * setCurrentProcessingContext (CurrentProcessingContext const *iContext)
virtual bool tryToFillImpl (std::string const &, EventPrincipal &, EventSetup const &, CurrentProcessingContext const *)=0

Private Attributes

CurrentProcessingContext const * m_context
EventSetup const * m_setup

Friends

class UnscheduledHandlerSentry

Detailed Description

Definition at line 33 of file UnscheduledHandler.h.


Constructor & Destructor Documentation

edm::UnscheduledHandler::UnscheduledHandler ( ) [inline]

Definition at line 37 of file UnscheduledHandler.h.

: m_setup(nullptr), m_context(nullptr) {}
UnscheduledHandler::~UnscheduledHandler ( ) [virtual]

Definition at line 41 of file UnscheduledHandler.cc.

                                          {
  }
edm::UnscheduledHandler::UnscheduledHandler ( UnscheduledHandler const &  )

Member Function Documentation

UnscheduledHandler& edm::UnscheduledHandler::operator= ( UnscheduledHandler const &  )
CurrentProcessingContext const * UnscheduledHandler::setCurrentProcessingContext ( CurrentProcessingContext const *  iContext) [private]

Definition at line 59 of file UnscheduledHandler.cc.

References m_context.

Referenced by edm::UnscheduledHandlerSentry::UnscheduledHandlerSentry(), and edm::UnscheduledHandlerSentry::~UnscheduledHandlerSentry().

                                                                                          {
     CurrentProcessingContext const* old = m_context;
     m_context = iContext;
     return old;
  }
void edm::UnscheduledHandler::setEventSetup ( EventSetup const &  iSetup) [inline]

Definition at line 52 of file UnscheduledHandler.h.

References m_setup.

                                                   {
         m_setup = &iSetup;
      }
bool UnscheduledHandler::tryToFill ( std::string const &  label,
EventPrincipal iEvent 
)

returns true if found an EDProducer and ran it

Definition at line 72 of file UnscheduledHandler.cc.

References m_context, m_setup, edm::CurrentProcessingContext::setUnscheduledDepth(), groupFilesInBlocks::temp, tryToFillImpl(), and edm::CurrentProcessingContext::unscheduledDepth().

                                                        {
     assert(m_setup);
     CurrentProcessingContext const* chosen = m_context;
     CurrentProcessingContext temp;
     if(0 != m_context) {
        temp = *m_context;
        temp.setUnscheduledDepth(m_context->unscheduledDepth());
        chosen = &temp;
     }
     UnscheduledHandlerSentry sentry(this, chosen);
     return tryToFillImpl(label, iEvent, *m_setup, chosen);
  }
virtual bool edm::UnscheduledHandler::tryToFillImpl ( std::string const &  ,
EventPrincipal ,
EventSetup const &  ,
CurrentProcessingContext const *   
) [private, pure virtual]

Implemented in edm::UnscheduledCallProducer.

Referenced by tryToFill().


Friends And Related Function Documentation

friend class UnscheduledHandlerSentry [friend]

Definition at line 36 of file UnscheduledHandler.h.


Member Data Documentation

Definition at line 65 of file UnscheduledHandler.h.

Referenced by setCurrentProcessingContext(), and tryToFill().

Definition at line 64 of file UnscheduledHandler.h.

Referenced by setEventSetup(), and tryToFill().