CMS 3D CMS Logo

Public Member Functions | Private Member Functions

edm::NoDelayedReader Class Reference

#include <NoDelayedReader.h>

Inheritance diagram for edm::NoDelayedReader:
edm::DelayedReader

List of all members.

Public Member Functions

virtual ~NoDelayedReader ()

Private Member Functions

virtual std::auto_ptr< EDProductgetProduct_ (BranchKey const &k, EDProductGetter const *ep) const

Detailed Description

Definition at line 11 of file NoDelayedReader.h.


Constructor & Destructor Documentation

edm::NoDelayedReader::~NoDelayedReader ( ) [virtual]

Definition at line 12 of file NoDelayedReader.cc.

{}

Member Function Documentation

std::auto_ptr< EDProduct > edm::NoDelayedReader::getProduct_ ( BranchKey const &  k,
EDProductGetter const *  ep 
) const [private, virtual]

Implements edm::DelayedReader.

Definition at line 15 of file NoDelayedReader.cc.

References compareJSON::const, Exception, edm::EventPrincipal::id(), edm::LuminosityBlockPrincipal::id(), and edm::errors::LogicError.

                                                                                  {
    EventPrincipal const* epr = dynamic_cast<EventPrincipal const*>(ep);
    if (epr) {
      throw edm::Exception(errors::LogicError,"NoDelayedReader")
        << "getProduct() called for branchkey: " << k << " EventID: " << epr->id() << "\n";
    }
    RunPrincipal const* rpr = dynamic_cast<RunPrincipal const*>(ep);
    if (rpr) {
      throw edm::Exception(errors::LogicError,"NoDelayedReader")
        << "getProduct() called for branchkey: " << k << " RunID: " << epr->id() << "\n";
    }
    LuminosityBlockPrincipal const* lpr = dynamic_cast<LuminosityBlockPrincipal const*>(ep);
    if (lpr) {
      throw edm::Exception(errors::LogicError,"NoDelayedReader")
        << "getProduct() called for branchkey: " << k << " LuminosityBlockNumber_t: " << lpr->id() << "\n";
    }
    throw edm::Exception(errors::LogicError,"NoDelayedReader")
      << "getProduct() called for branchkey: " << k << "\n";
  }