00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #if !defined (octave_GEPBALANCE_h)
00025 #define octave_GEPBALANCE_h 1
00026
00027 #include <iosfwd>
00028 #include <string>
00029
00030 #include "dMatrix.h"
00031
00032 class
00033 OCTAVE_API
00034 GEPBALANCE
00035 {
00036 public:
00037
00038 GEPBALANCE (void) : balanced_mat (), balancing_mat () { }
00039
00040 GEPBALANCE (const Matrix& a, const Matrix& b, const std::string& balance_job)
00041 {
00042 init (a, b, balance_job);
00043 }
00044
00045 GEPBALANCE (const GEPBALANCE& a)
00046 : balanced_mat (a.balanced_mat), balanced_mat2 (a.balanced_mat2),
00047 balancing_mat (a.balancing_mat), balancing_mat2 (a.balancing_mat2) { }
00048
00049 GEPBALANCE& operator = (const GEPBALANCE& a)
00050 {
00051 if (this != &a)
00052 {
00053 balanced_mat = a.balanced_mat;
00054 balanced_mat2 = a.balanced_mat2;
00055 balancing_mat = a.balancing_mat;
00056 balancing_mat2 = a.balancing_mat2;
00057 }
00058 return *this;
00059 }
00060
00061 ~GEPBALANCE (void) { }
00062
00063 Matrix balanced_matrix (void) const { return balanced_mat; }
00064
00065 Matrix balanced_matrix2 (void) const { return balanced_mat2; }
00066
00067 Matrix balancing_matrix (void) const { return balancing_mat; }
00068
00069 Matrix balancing_matrix2 (void) const { return balancing_mat2; }
00070
00071 friend std::ostream& operator << (std::ostream& os, const GEPBALANCE& a);
00072
00073 private:
00074
00075 Matrix balanced_mat;
00076 Matrix balanced_mat2;
00077 Matrix balancing_mat;
00078 Matrix balancing_mat2;
00079
00080 octave_idx_type init (const Matrix& a, const Matrix& b,
00081 const std::string& balance_job);
00082 };
00083
00084 #endif
00085
00086
00087
00088
00089
00090