1 #ifndef DataFormats_FWLite_Handle_h 2 #define DataFormats_FWLite_Handle_h 51 : data_(iOther.data_), errorThrower_(iOther.errorThrower_ ? iOther.errorThrower_->
clone() :
nullptr) {}
60 bool isValid()
const {
return data_ !=
nullptr; }
101 const char* iModuleLabel,
102 const char* iProductInstanceLabel =
nullptr,
103 const char* iProcessLabel =
nullptr) {
106 iP.getByLabel(TempWrapT::typeInfo(), iModuleLabel, iProductInstanceLabel, iProcessLabel, pTemp);
107 delete errorThrower_;
108 errorThrower_ =
nullptr;
109 if (
nullptr == temp) {
110 errorThrower_ = ErrorThrower::errorThrowerBranchNotFoundException(
111 TempWrapT::typeInfo(), iModuleLabel, iProductInstanceLabel, iProcessLabel);
115 if (data_ ==
nullptr) {
116 errorThrower_ = ErrorThrower::errorThrowerProductNotFoundException(
117 TempWrapT::typeInfo(), iModuleLabel, iProductInstanceLabel, iProcessLabel);
210 const char* iModuleLabel,
211 const char* iProductInstanceLabel =
nullptr,
212 const char* iProcessLabel =
nullptr) {
213 return iEvent.
getBranchNameFor(TempWrapT::typeInfo(), iModuleLabel, iProductInstanceLabel, iProcessLabel);
249 const T*
temp = data_;
250 data_ = iOther.
data_;
260 errorThrower_->throwIt();
virtual std::string const getBranchNameFor(std::type_info const &, char const *, char const *, char const *) const =0
void swap(Association< C > &lhs, Association< C > &rhs)
void getByLabel(const P &iP, const char *iModuleLabel, const char *iProductInstanceLabel=0, const char *iProcessLabel=0)
const std::string getBranchNameFor(const fwlite::EventBase &iEvent, const char *iModuleLabel, const char *iProductInstanceLabel=0, const char *iProcessLabel=0)
const T & operator*() const
void swap(Handle< T > &iOther)
bool failedToGet() const
Returns true only if Handle was used in a 'get' call and the data could not be found.
const T * operator->() const
edm::Wrapper< T > TempWrapT
ErrorThrower const * errorThrower_
T const * product() const
std::pair< OmniClusterRef, TrackingParticleRef > P
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Handle(const Handle< T > &iOther)
T const * product() const
static void check(T const &p, std::string const &id, SelectedProducts const &iProducts)
const Handle< T > & operator=(const Handle< T > &iOther)