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::StreamedProduct Class Reference

#include <StreamedProducts.h>

Public Member Functions

BranchID branchID () const
 
void clear ()
 
BranchDescription const * desc () const
 
std::vector< BranchID > const * parents () const
 
EDProduct const * prod () const
 
ProductStatus status () const
 
 StreamedProduct ()
 
 StreamedProduct (BranchDescription const &desc)
 
 StreamedProduct (EDProduct const *prod, BranchDescription const &desc, ProductStatus status, std::vector< BranchID > const *parents)
 

Private Attributes

BranchDescription const * desc_
 
std::vector< BranchID > const * parents_
 
EDProduct const * prod_
 
ProductStatus status_
 

Detailed Description

Definition at line 32 of file StreamedProducts.h.

Constructor & Destructor Documentation

edm::StreamedProduct::StreamedProduct ( )
inline

Definition at line 34 of file StreamedProducts.h.

BranchDescription const * desc_
ProductStatus neverCreated()
Definition: ProductStatus.h:18
std::vector< BranchID > const * parents_
EDProduct const * prod_
edm::StreamedProduct::StreamedProduct ( BranchDescription const &  desc)
inlineexplicit

Definition at line 35 of file StreamedProducts.h.

35  :
BranchDescription const * desc_
ProductStatus neverCreated()
Definition: ProductStatus.h:18
BranchDescription const * desc() const
std::vector< BranchID > const * parents_
EDProduct const * prod_
edm::StreamedProduct::StreamedProduct ( EDProduct const *  prod,
BranchDescription const &  desc,
ProductStatus  status,
std::vector< BranchID > const *  parents 
)

Definition at line 6 of file StreamedProducts.cc.

References edm::BranchDescription::branchName(), edm::hlt::Exception, edm::BranchDescription::init(), edm::EDProduct::isPresent(), edm::errors::LogicError, edm::productstatus::present(), and status_.

9  :
11  if (productstatus::present(status_) && (prod == 0 || !prod->isPresent())) {
12  desc.init();
13  throw edm::Exception(edm::errors::LogicError, "StreamedProduct::StreamedProduct\n")
14  << "A product with a status of 'present' is not actually present.\n"
15  << "The branch name is " << desc.branchName() << "\n"
16  << "Contact a framework developer.\n";
17  }
18  }
std::string & branchName() const
BranchDescription const * desc_
std::vector< BranchID > const * parents() const
ProductStatus present()
Definition: ProductStatus.h:17
BranchDescription const * desc() const
EDProduct const * prod() const
std::vector< BranchID > const * parents_
bool isPresent() const
Definition: EDProduct.h:19
EDProduct const * prod_
ProductStatus status() const

Member Function Documentation

BranchID edm::StreamedProduct::branchID ( ) const
inline

Definition at line 45 of file StreamedProducts.h.

References edm::BranchDescription::branchID(), and desc_.

45 {return desc_->branchID();}
BranchDescription const * desc_
BranchID const & branchID() const
void edm::StreamedProduct::clear ( void  )
inline
BranchDescription const* edm::StreamedProduct::desc ( ) const
inline

Definition at line 44 of file StreamedProducts.h.

References desc_.

44 {return desc_;}
BranchDescription const * desc_
std::vector<BranchID> const* edm::StreamedProduct::parents ( ) const
inline

Definition at line 47 of file StreamedProducts.h.

References parents_.

47 {return parents_;}
std::vector< BranchID > const * parents_
EDProduct const* edm::StreamedProduct::prod ( ) const
inline

Definition at line 43 of file StreamedProducts.h.

References prod_.

43 {return prod_;}
EDProduct const * prod_
ProductStatus edm::StreamedProduct::status ( ) const
inline

Definition at line 46 of file StreamedProducts.h.

References status_.

46 {return status_;}

Member Data Documentation

BranchDescription const* edm::StreamedProduct::desc_
private

Definition at line 60 of file StreamedProducts.h.

Referenced by branchID(), clear(), and desc().

std::vector<BranchID> const* edm::StreamedProduct::parents_
private

Definition at line 62 of file StreamedProducts.h.

Referenced by clear(), and parents().

EDProduct const* edm::StreamedProduct::prod_
private

Definition at line 59 of file StreamedProducts.h.

Referenced by clear(), and prod().

ProductStatus edm::StreamedProduct::status_
private

Definition at line 61 of file StreamedProducts.h.

Referenced by clear(), status(), and StreamedProduct().