test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
getRef.h
Go to the documentation of this file.
1 #ifndef DataFormats_Common_getRef_h
2 #define DataFormats_Common_getRef_h
3 /* \function edm::getRef(...)
4  *
5  * \author Luca Lista, INFN
6  *
7  */
11 
12 namespace edm {
13  namespace helper {
14  template<typename C>
15  struct MatcherGetRef {
16  typedef Ref<C> ref_type;
17  static ref_type getRef( const Handle<C> & c, size_t k ) { return ref_type(c, k); }
18  };
19 
20  template<typename T>
21  struct MatcherGetRef<View<T> > {
23  static ref_type getRef( const Handle<View<T> > & v, size_t k ) { return v->refAt(k); }
24  };
25  }
26 
27  template<typename C>
28  typename helper::MatcherGetRef<C>::ref_type getRef( const Handle<C> & c, size_t k ) {
29  return helper::MatcherGetRef<C>::getRef( c, k );
30  }
31 }
32 
33 #endif
helper::MatcherGetRef< C >::ref_type getRef(const Handle< C > &c, size_t k)
Definition: getRef.h:28
static ref_type getRef(const Handle< View< T > > &v, size_t k)
Definition: getRef.h:23
static ref_type getRef(const Handle< C > &c, size_t k)
Definition: getRef.h:17
long double T