CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/DataFormats/Common/interface/MapRefViewTrait.h

Go to the documentation of this file.
00001 #ifndef DataFormats_Common_MapRefViewTrait_h
00002 #define DataFormats_Common_MapRefViewTrait_h
00003 #include "DataFormats/Common/interface/Ref.h"
00004 #include "DataFormats/Common/interface/RefProd.h"
00005 #include "DataFormats/Common/interface/RefToBase.h"
00006 #include "DataFormats/Common/interface/RefToBaseProd.h"
00007 #include <map>
00008 
00009 namespace edm {
00010   namespace helper {
00011     template<typename C>
00012     struct MapRefViewTrait {
00013       typedef Ref<C> ref_type;
00014       typedef RefProd<C> refprod_type;
00015     }; 
00016     
00017     template<typename T>
00018     struct MapRefViewTrait<View<T> > {
00019       typedef RefToBase<T> ref_type;
00020       typedef RefToBaseProd<T> refprod_type;
00021     }; 
00022   }
00023 }
00024 
00025 #endif