00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef HxBpoLeftShift_h
00011 #define HxBpoLeftShift_h
00012
00013 #include "HxTagList.h"
00014 #include "HxClassName.h"
00015 #include "HxCategories.h"
00016
00017
00020 template<class DstValT, class Src1ValT, class Src2ValT>
00021 class HxBpoLeftShift
00022 {
00023 public:
00025 typedef HxTagTransInVar TransVarianceCategory;
00026
00028 HxBpoLeftShift(HxTagList&)
00029 {}
00030
00032 DstValT doIt(const Src1ValT& x, const Src2ValT& y)
00033 { return x.leftShift(y); }
00034
00035 static DstValT neutralElement()
00036 { return DstValT(0); }
00037
00039 static HxString className()
00040 { return HxString("leftShift"); }
00041 };
00042
00043 #endif