Row_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 template<typename eT>
00022 class Row : public Mat<eT>, public BaseVec< eT, Row<eT> >
00023 {
00024 public:
00025
00026 typedef eT elem_type;
00027 typedef typename get_pod_type<elem_type>::pod_type pod_type;
00028
00029
00030 inline Row();
00031 inline explicit Row(const u32 N);
00032 inline Row(const u32 in_rows, const u32 in_cols);
00033
00034 inline Row(const char* text);
00035 inline const Row& operator=(const char* text);
00036 inline Row(const std::string& text);
00037 inline const Row& operator=(const std::string& text);
00038
00039 inline Row(const Row& X);
00040 inline const Row& operator=(const Row& X);
00041 inline const Row& operator*=(const Row& X);
00042
00043
00044 inline Row(const Mat<eT>& X);
00045 inline const Row& operator=(const Mat<eT>& X);
00046 inline const Row& operator*=(const Mat<eT>& X);
00047
00048 inline Row( eT* aux_mem, const u32 aux_n_rows, const u32 aux_n_cols, const bool copy_aux_mem = true);
00049 inline Row(const eT* aux_mem, const u32 aux_n_rows, const u32 aux_n_cols);
00050
00051 inline Row( eT* aux_mem, const u32 aux_length, const bool copy_aux_mem = true);
00052 inline Row(const eT* aux_mem, const u32 aux_length);
00053
00054 template<typename T1, typename T2>
00055 inline explicit Row(const Base<pod_type,T1>& A, const Base<pod_type,T2>& B);
00056
00057 inline Row(const subview<eT>& X);
00058 inline const Row& operator=(const subview<eT>& X);
00059 inline const Row& operator*=(const subview<eT>& X);
00060
00061 inline Row(const subview_cube<eT>& X);
00062 inline const Row& operator=(const subview_cube<eT>& X);
00063 inline const Row& operator*=(const subview_cube<eT>& X);
00064
00065 inline explicit Row(const diagview<eT>& X);
00066 inline const Row& operator=(const diagview<eT>& X);
00067 inline const Row& operator*=(const diagview<eT>& X);
00068
00069 arma_inline eT& col(const u32 col_num);
00070 arma_inline eT col(const u32 col_num) const;
00071
00072 arma_inline subview_row<eT> cols(const u32 in_col1, const u32 in_col2);
00073 arma_inline const subview_row<eT> cols(const u32 in_col1, const u32 in_col2) const;
00074
00075 template<typename T1, typename op_type> inline Row(const Op<T1, op_type> &X);
00076 template<typename T1, typename op_type> inline const Row& operator=(const Op<T1, op_type> &X);
00077 template<typename T1, typename op_type> inline const Row& operator*=(const Op<T1, op_type> &X);
00078
00079 template<typename T1, typename T2, typename glue_type> inline Row(const Glue<T1, T2, glue_type> &X);
00080 template<typename T1, typename T2, typename glue_type> inline const Row& operator=(const Glue<T1, T2, glue_type> &X);
00081 template<typename T1, typename T2, typename glue_type> inline const Row& operator*=(const Glue<T1, T2, glue_type> &X);
00082
00083 inline void set_size(const u32 N);
00084 inline void set_size(const u32 n_rows, const u32 n_cols);
00085
00086 template<typename eT2>
00087 inline void copy_size(const Mat<eT2>& m);
00088
00089 inline void zeros();
00090 inline void zeros(const u32 N);
00091 inline void zeros(const u32 n_rows, const u32 n_cols);
00092
00093 inline void ones();
00094 inline void ones(const u32 N);
00095 inline void ones(const u32 n_rows, const u32 n_cols);
00096
00097 inline void load(const std::string name, const file_type type = auto_detect);
00098 };
00099
00100
00101