diff options
| author | Joe Zhao <ztuowen@gmail.com> | 2015-03-08 16:02:15 +0800 | 
|---|---|---|
| committer | Joe Zhao <ztuowen@gmail.com> | 2015-03-08 16:02:15 +0800 | 
| commit | e500bb4cdb32b13cc022b6dc5d221de7ad97a73e (patch) | |
| tree | 643bcf86336437ccee6182fc6d19c92f33b7201a /tools | |
| parent | 457024eedfaf6e08146038c8cb3034e590a81df6 (diff) | |
| download | ranksvm-e500bb4cdb32b13cc022b6dc5d221de7ad97a73e.tar.gz ranksvm-e500bb4cdb32b13cc022b6dc5d221de7ad97a73e.tar.bz2 ranksvm-e500bb4cdb32b13cc022b6dc5d221de7ad97a73e.zip  | |
added commandline parser
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/dataProvider.h | 4 | ||||
| -rw-r--r-- | tools/fileDataProvider.h | 12 | ||||
| -rw-r--r-- | tools/matrixIO.h | 30 | 
3 files changed, 40 insertions, 6 deletions
diff --git a/tools/dataProvider.h b/tools/dataProvider.h index d598f3f..b2384c9 100644 --- a/tools/dataProvider.h +++ b/tools/dataProvider.h @@ -19,8 +19,8 @@ public:      virtual Eigen::MatrixXd* getAttr() = 0;      virtual Eigen::VectorXd* getPref() = 0; -    virtual int open(); -    virtual bool EOFile(); +    virtual int open()=0; +    virtual bool EOFile()=0;  };  #endif
\ No newline at end of file diff --git a/tools/fileDataProvider.h b/tools/fileDataProvider.h index 3cfb3f9..7937866 100644 --- a/tools/fileDataProvider.h +++ b/tools/fileDataProvider.h @@ -11,10 +11,14 @@ private:  public:      FileDP(){};      FileDP(std::string fn):fname(fn){}; -    virtual Eigen::MatrixXd* getNextAttr(); -    virtual Eigen::VectorXd* getNextPref(); -    virtual int open(); -    virtual bool EOFile(); +    virtual Eigen::MatrixXd* getAttr(){ +        return new Eigen::MatrixXd(3,3); +    } +    virtual Eigen::VectorXd* getPref(){ +        return new Eigen::VectorXd(3); +    }; +    virtual int open(){return 0;}; +    virtual bool EOFile(){return true;};  };  #endif
\ No newline at end of file diff --git a/tools/matrixIO.h b/tools/matrixIO.h new file mode 100644 index 0000000..88cd419 --- /dev/null +++ b/tools/matrixIO.h @@ -0,0 +1,30 @@ +#ifndef MATIO_H +#define MATIO_H + +#include<iostream> + +namespace Eigen{ +    template<class Matrix> +    void write_stream(std::ostream &ostr, const Matrix& matrix){ +        typename Matrix::Index rows=matrix.rows(), cols=matrix.cols(); +        ostr<<rows<<" "<<cols<<std::endl; +        for (int r=0;r<rows;++r) +        { +            for (int c=0;c<cols;++c) +                ostr<<matrix(r,c)<<" "; +            ostr<<std::endl; +        } +    } +    template<class Matrix> +    void read_stream(std::istream &istr, Matrix& matrix){ +        typename Matrix::Index rows=0, cols=0; +        istr>>rows>>cols; +        matrix.resize(rows, cols); +        for (int r=0;r<rows;++r) +            for (int c=0;c<cols;++c) +                istr>>matrix(r,c); +    } +} // Eigen:: + + +#endif
\ No newline at end of file  | 
