00001 #ifndef Impala_Core_Array_InvLvvLw2_h
00002 #define Impala_Core_Array_InvLvvLw2_h
00003
00004 #include <vector>
00005 #include "Core/Array/Pattern/PatM6PixOp.h"
00006 #include "Core/Array/Trait/M6poLvvLw2.h"
00007
00008 namespace Impala
00009 {
00010 namespace Core
00011 {
00012 namespace Array
00013 {
00014
00015
00016
00017 template<class DstArrayT, class SrcArrayT>
00018 inline void
00019 InvLvvLw2(DstArrayT*& dst, SrcArrayT* s1, SrcArrayT* s2, SrcArrayT* s3,
00020 SrcArrayT* s4, SrcArrayT* s5, SrcArrayT* s6)
00021 {
00022 Trait::M6poLvvLw2<DstArrayT, SrcArrayT> mpo;
00023 Pattern::PatM6PixOp(dst, s1, s2, s3, s4, s5, s6, mpo);
00024 }
00025
00026
00027
00028 template<class ArrayT>
00029 inline void
00030 InvLvvLw2(ArrayT*& dst, const std::vector<ArrayT*>& lList)
00031 {
00032 InvLvvLw2(dst,
00033 lList[0], lList[1], lList[2],
00034 lList[3], lList[4], lList[5]);
00035 }
00036
00037 }
00038 }
00039 }
00040
00041 #endif