00001 #ifndef INDII_FMRI_DATA_TEXTFILESEEDREADER_HPP
00002 #define INDII_FMRI_DATA_TEXTFILESEEDREADER_HPP
00003
00004 #include "SeedReader.hpp"
00005
00006 #include "indii/ml/aux/vector.hpp"
00007 #include "indii/ml/aux/matrix.hpp"
00008
00009 #include <sstream>
00010
00011 namespace indii {
00012 namespace fmri {
00013 namespace data {
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 class TextFileSeedReader : public SeedReader {
00025 public:
00026
00027
00028
00029
00030
00031
00032 TextFileSeedReader(std::istream* in);
00033
00034
00035
00036
00037
00038
00039
00040 TextFileSeedReader(const std::string file);
00041
00042
00043
00044
00045
00046
00047
00048
00049 TextFileSeedReader(std::istream* in, unsigned int seed);
00050
00051
00052
00053
00054
00055
00056
00057
00058 TextFileSeedReader(const std::string file, unsigned int seed);
00059
00060
00061
00062
00063
00064
00065
00066
00067 TextFileSeedReader(std::istream* in, const std::vector<unsigned int> seeds);
00068
00069
00070
00071
00072
00073
00074
00075
00076 TextFileSeedReader(const std::string file,
00077 const std::vector<unsigned int> seeds);
00078
00079
00080
00081
00082 ~TextFileSeedReader();
00083
00084 virtual unsigned int read(double* into);
00085
00086 virtual unsigned int read(indii::ml::aux::vector* into);
00087
00088 virtual unsigned int read(indii::ml::aux::matrix* into);
00089
00090 virtual unsigned int read(indii::ml::aux::symmetric_matrix* into);
00091
00092 private:
00093
00094
00095
00096 std::vector<double> values;
00097
00098
00099
00100
00101 unsigned int nextIndex;
00102
00103
00104
00105
00106 void nextLine();
00107
00108 };
00109
00110 }
00111 }
00112 }
00113
00114 #endif