CMS 3D CMS Logo

edm::OutputHandle< T > Class Template Reference

#include <DataFormats/Common/interface/OutputHandle.h>

List of all members.

Public Member Functions

ConstBranchDescription const * desc () const
T const * entryInfo () const
boost::shared_ptr< T > entryInfoSharedPtr () const
bool failedToGet () const
ProductID id () const
bool isValid () const
OutputHandleoperator= (OutputHandle const &rhs)
 OutputHandle (const boost::shared_ptr< cms::Exception > &iWhyFailed)
 Used when the attempt to get the data failed.
 OutputHandle (EDProduct const *prod, ConstBranchDescription const *desc, boost::shared_ptr< EventEntryInfo > entryInfo)
 OutputHandle (OutputHandle const &h)
 OutputHandle ()
void swap (OutputHandle &other)
boost::shared_ptr< cms::ExceptionwhyFailed () const
EDProduct const * wrapper () const
 ~OutputHandle ()

Private Attributes

ConstBranchDescription const * desc_
boost::shared_ptr< T > entryInfo_
boost::shared_ptr< cms::ExceptionwhyFailed_
EDProduct const * wrap_


Detailed Description

template<typename T>
class edm::OutputHandle< T >

Definition at line 36 of file OutputHandle.h.


Constructor & Destructor Documentation

template<typename T>
edm::OutputHandle< T >::OutputHandle (  )  [inline]

Definition at line 38 of file OutputHandle.h.

00038                    :
00039       wrap_(0),
00040       desc_(0),
00041       entryInfo_() {}

template<typename T>
edm::OutputHandle< T >::OutputHandle ( OutputHandle< T > const &  h  )  [inline]

Definition at line 43 of file OutputHandle.h.

00043                                         :
00044       wrap_(h.wrap_),
00045       desc_(h.desc_),
00046       entryInfo_(h.entryInfo_),
00047       whyFailed_(h.whyFailed_){}

template<typename T>
edm::OutputHandle< T >::OutputHandle ( EDProduct const *  prod,
ConstBranchDescription const *  desc,
boost::shared_ptr< EventEntryInfo entryInfo 
) [inline]

Definition at line 49 of file OutputHandle.h.

00049                                                                                                                        :
00050       wrap_(prod),
00051       desc_(desc),
00052       entryInfo_(boost::shared_ptr<T>(new T(*entryInfo))) {}

template<typename T>
edm::OutputHandle< T >::OutputHandle ( const boost::shared_ptr< cms::Exception > &  iWhyFailed  )  [inline]

Used when the attempt to get the data failed.

Definition at line 55 of file OutputHandle.h.

00055                                                                  :
00056       wrap_(0),
00057       desc_(0),
00058       entryInfo_(),
00059       whyFailed_(iWhyFailed) {}
    

template<typename T>
edm::OutputHandle< T >::~OutputHandle (  )  [inline]

Definition at line 61 of file OutputHandle.h.

00061 {}


Member Function Documentation

template<typename T>
ConstBranchDescription const* edm::OutputHandle< T >::desc (  )  const [inline]

Definition at line 109 of file OutputHandle.h.

References edm::OutputHandle< T >::desc_.

00109                                                {
00110       return desc_;
00111     }

template<typename T>
T const* edm::OutputHandle< T >::entryInfo (  )  const [inline]

Definition at line 101 of file OutputHandle.h.

References edm::OutputHandle< T >::entryInfo_.

Referenced by edm::RootOutputFile::fillBranches(), and edm::StreamSerializer::serializeEvent().

00101                                {
00102       return entryInfo_.get();
00103     }

template<typename T>
boost::shared_ptr<T> edm::OutputHandle< T >::entryInfoSharedPtr (  )  const [inline]

Definition at line 105 of file OutputHandle.h.

References edm::OutputHandle< T >::entryInfo_.

Referenced by edm::StreamSerializer::serializeEvent().

00105                                                   {
00106       return entryInfo_;
00107     }

template<typename T>
bool edm::OutputHandle< T >::failedToGet (  )  const [inline]

Definition at line 82 of file OutputHandle.h.

References edm::OutputHandle< T >::whyFailed_.

00082                              {
00083       return 0 != whyFailed_.get();
00084     }

template<typename T>
ProductID edm::OutputHandle< T >::id ( void   )  const [inline]

Definition at line 90 of file OutputHandle.h.

References edm::OutputHandle< T >::entryInfo_.

00090                          {
00091       if (!entryInfo_) {
00092         return ProductID();
00093       }
00094       return entryInfo_->productID();
00095     }

template<typename T>
bool edm::OutputHandle< T >::isValid ( void   )  const [inline]

Definition at line 78 of file OutputHandle.h.

References edm::OutputHandle< T >::desc_, edm::OutputHandle< T >::entryInfo_, and edm::OutputHandle< T >::wrap_.

00078                          {
00079       return wrap_ && desc_ &&entryInfo_;
00080     }

template<typename T>
OutputHandle& edm::OutputHandle< T >::operator= ( OutputHandle< T > const &  rhs  )  [inline]

Definition at line 72 of file OutputHandle.h.

References edm::OutputHandle< T >::swap(), and pyDBSRunClass::temp.

00072                                                      {
00073       OutputHandle temp(rhs);
00074       this->swap(temp);
00075       return *this;
00076     }

template<typename T>
void edm::OutputHandle< T >::swap ( OutputHandle< T > &  other  )  [inline]

Definition at line 63 of file OutputHandle.h.

References edm::OutputHandle< T >::desc_, edm::OutputHandle< T >::entryInfo_, std::swap(), edm::OutputHandle< T >::whyFailed_, and edm::OutputHandle< T >::wrap_.

Referenced by edm::OutputHandle< T >::operator=(), and edm::swap().

00063                                    {
00064       using std::swap;
00065       std::swap(wrap_, other.wrap_);
00066       std::swap(desc_, other.desc_);
00067       std::swap(entryInfo_, other.entryInfo_);
00068       swap(whyFailed_,other.whyFailed_);
00069     }

template<typename T>
boost::shared_ptr<cms::Exception> edm::OutputHandle< T >::whyFailed (  )  const [inline]

Definition at line 97 of file OutputHandle.h.

References edm::OutputHandle< T >::whyFailed_.

00097                                                     {
00098       return whyFailed_;
00099     }

template<typename T>
EDProduct const* edm::OutputHandle< T >::wrapper (  )  const [inline]

Definition at line 86 of file OutputHandle.h.

References edm::OutputHandle< T >::wrap_.

Referenced by edm::RootOutputFile::fillBranches(), and edm::StreamSerializer::serializeEvent().

00086                                      {
00087       return wrap_;
00088     }


Member Data Documentation

template<typename T>
ConstBranchDescription const* edm::OutputHandle< T >::desc_ [private]

Definition at line 115 of file OutputHandle.h.

Referenced by edm::OutputHandle< T >::desc(), edm::OutputHandle< T >::isValid(), and edm::OutputHandle< T >::swap().

template<typename T>
boost::shared_ptr<T> edm::OutputHandle< T >::entryInfo_ [private]

Definition at line 116 of file OutputHandle.h.

Referenced by edm::OutputHandle< T >::entryInfo(), edm::OutputHandle< T >::entryInfoSharedPtr(), edm::OutputHandle< T >::id(), edm::OutputHandle< T >::isValid(), and edm::OutputHandle< T >::swap().

template<typename T>
boost::shared_ptr<cms::Exception> edm::OutputHandle< T >::whyFailed_ [private]

Definition at line 117 of file OutputHandle.h.

Referenced by edm::OutputHandle< T >::failedToGet(), edm::OutputHandle< T >::swap(), and edm::OutputHandle< T >::whyFailed().

template<typename T>
EDProduct const* edm::OutputHandle< T >::wrap_ [private]

Definition at line 114 of file OutputHandle.h.

Referenced by edm::OutputHandle< T >::isValid(), edm::OutputHandle< T >::swap(), and edm::OutputHandle< T >::wrapper().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:42:01 2009 for CMSSW by  doxygen 1.5.4