op_var_proto.hpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 class op_var
00023 {
00024 public:
00025
00026 template<typename eT>
00027 inline static eT direct_var(const eT* const X, const u32 N, const u32 norm_type = 0);
00028
00029 template<typename T>
00030 inline static T direct_var(const std::complex<T>* const X, const u32 N, const u32 norm_type = 0);
00031
00032
00033
00034 template<typename eT>
00035 inline static void apply(Mat<eT>& out, const Mat<eT>& X, const u32 norm_type, const u32 dim);
00036
00037 template<typename T>
00038 inline static void apply(Mat<T>& out, const Mat< std::complex<T> >& X, const u32 norm_type, const u32 dim);
00039
00040
00041
00042 template<typename eT>
00043 inline static eT direct_var(const subview<eT>& X, const u32 norm_type = 0);
00044
00045 template<typename T>
00046 inline static T direct_var(const subview< std::complex<T> >& X, const u32 norm_type = 0);
00047
00048
00049 template<typename eT>
00050 inline static eT direct_var(const diagview<eT>& X, const u32 norm_type = 0);
00051
00052 template<typename T>
00053 inline static T direct_var(const diagview< std::complex<T> >& X, const u32 norm_type = 0);
00054
00055 };
00056
00057
00058
00059