MapRefViewTrait

MapRefViewTrait

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
#ifndef DataFormats_Common_MapRefViewTrait_h
#define DataFormats_Common_MapRefViewTrait_h
#include "DataFormats/Common/interface/Ref.h"
#include "DataFormats/Common/interface/RefProd.h"
#include "DataFormats/Common/interface/RefToBase.h"
#include "DataFormats/Common/interface/RefToBaseProd.h"
#include <map>

namespace edm {
  namespace helper {
    template <typename C>
    struct MapRefViewTrait {
      typedef Ref<C> ref_type;
      typedef RefProd<C> refprod_type;
    };

    template <typename T>
    struct MapRefViewTrait<View<T> > {
      typedef RefToBase<T> ref_type;
      typedef RefToBaseProd<T> refprod_type;
    };
  }  // namespace helper
}  // namespace edm

#endif