CMS 3D CMS Logo

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

#include <ProcessContext.h>

Public Member Functions

bool isSubProcess () const
 
ParameterSetID const & parameterSetID () const
 
ProcessContext const & parentProcessContext () const
 
ProcessConfiguration const * processConfiguration () const
 
 ProcessContext ()
 
std::string const & processName () const
 
void setParentProcessContext (ProcessContext const *parentProcessContext)
 
void setProcessConfiguration (ProcessConfiguration const *processConfiguration)
 

Private Attributes

ProcessContext const * parentProcessContext_
 
ProcessConfiguration const * processConfiguration_
 

Detailed Description

Description: Holds pointer to ProcessConfiguration and if this is a SubProcess also a pointer to the parent ProcessContext. This is intended primarily to be passed to Services as an argument to their callback functions.

Usage:

Definition at line 27 of file ProcessContext.h.

Constructor & Destructor Documentation

edm::ProcessContext::ProcessContext ( )

Definition at line 8 of file ProcessContext.cc.

8  :
9  processConfiguration_(nullptr),
10  parentProcessContext_(nullptr) {
11  }
ProcessConfiguration const * processConfiguration_
ProcessContext const * parentProcessContext_

Member Function Documentation

bool edm::ProcessContext::isSubProcess ( ) const
inline

Definition at line 36 of file ProcessContext.h.

References parentProcessContext_.

Referenced by edm::operator<<(), parentProcessContext(), and FastTimerService::processID().

36 { return parentProcessContext_ != nullptr; }
ProcessContext const * parentProcessContext_
ParameterSetID const& edm::ProcessContext::parameterSetID ( ) const
inline
ProcessContext const & edm::ProcessContext::parentProcessContext ( ) const

Definition at line 14 of file ProcessContext.cc.

References Exception, isSubProcess(), edm::errors::LogicError, and parentProcessContext_.

Referenced by edm::operator<<(), FastTimerService::processID(), and setParentProcessContext().

14  {
15  if (!isSubProcess()) {
17  << "ProcessContext::parentProcessContext This function should only be called for SubProcesses.\n"
18  << "If necessary, you can check this by calling isSubProcess first.\n";
19  }
20  return *parentProcessContext_;
21  }
bool isSubProcess() const
ProcessContext const * parentProcessContext_
ProcessConfiguration const* edm::ProcessContext::processConfiguration ( ) const
inline

Definition at line 35 of file ProcessContext.h.

References processConfiguration_.

Referenced by edm::operator<<(), and setProcessConfiguration().

35 { return processConfiguration_; }
ProcessConfiguration const * processConfiguration_
std::string const& edm::ProcessContext::processName ( ) const
inline
void edm::ProcessContext::setParentProcessContext ( ProcessContext const *  parentProcessContext)

Definition at line 29 of file ProcessContext.cc.

References parentProcessContext(), and parentProcessContext_.

Referenced by edm::SubProcess::SubProcess().

29  {
31  }
ProcessContext const & parentProcessContext() const
ProcessContext const * parentProcessContext_
void edm::ProcessContext::setProcessConfiguration ( ProcessConfiguration const *  processConfiguration)

Definition at line 24 of file ProcessContext.cc.

References processConfiguration(), and processConfiguration_.

Referenced by edm::EventProcessor::init(), and edm::SubProcess::SubProcess().

24  {
26  }
ProcessConfiguration const * processConfiguration() const
ProcessConfiguration const * processConfiguration_

Member Data Documentation

ProcessContext const* edm::ProcessContext::parentProcessContext_
private

Definition at line 48 of file ProcessContext.h.

Referenced by isSubProcess(), parentProcessContext(), and setParentProcessContext().

ProcessConfiguration const* edm::ProcessContext::processConfiguration_
private