1 #ifndef DataFormats_FWLite_Handle_h
2 #define DataFormats_FWLite_Handle_h
25 template<
typename T>
class Wrapper;
28 #if !defined(__CINT__) && !defined(__MAKECINT__)
95 const char* iModuleLabel,
96 const char* iProductInstanceLabel = 0,
97 const char* iProcessLabel = 0) {
102 iProductInstanceLabel,
110 iProductInstanceLabel,
118 iProductInstanceLabel,
213 const char* iModuleLabel,
214 const char* iProductInstanceLabel = 0,
215 const char* iProcessLabel = 0)
219 iProductInstanceLabel,
274 #if defined(__CINT__) || defined(__MAKECINT__)
275 #include <RVersion.h>
276 #if ROOT_VERSION_CODE >= 336384 // ROOT_VERSION(5,34,0), doesn't work
279 #define DECL_HANDLE_VECTOR(T) \
280 typedef fwlite::Handle<vector<T> > Handle<vector<T,allocator<T> > >
284 DECL_HANDLE_VECTOR(
bool);
286 DECL_HANDLE_VECTOR(
char);
287 DECL_HANDLE_VECTOR(
unsigned char);
290 DECL_HANDLE_VECTOR(
short);
291 DECL_HANDLE_VECTOR(
unsigned short);
292 DECL_HANDLE_VECTOR(
int);
293 DECL_HANDLE_VECTOR(
unsigned int);
294 DECL_HANDLE_VECTOR(
long);
295 DECL_HANDLE_VECTOR(
unsigned long);
296 DECL_HANDLE_VECTOR(
long long);
297 DECL_HANDLE_VECTOR(
unsigned long long);
299 DECL_HANDLE_VECTOR(
float);
300 DECL_HANDLE_VECTOR(
double);
static ErrorThrower * errorThrowerBranchNotFoundException(const std::type_info &, const char *, const char *, const char *)
virtual std::string const getBranchNameFor(std::type_info const &, char const *, char const *, char const *) const =0
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
T const * product() const
ErrorThrower * errorThrower_
static ErrorThrower * errorThrowerProductNotFoundException(const std::type_info &, const char *, const char *, const char *)
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Handle(const Handle< T > &iOther)
T const * product() const
const Handle< T > & operator=(const Handle< T > &iOther)
static std::type_info const & typeInfo()
virtual void throwIt() const =0