X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fstd%2Fsrc%2FbbstdReadVectorFromFile.cxx;fp=packages%2Fstd%2Fsrc%2FbbstdReadVectorFromFile.cxx;h=32e5cde93bf6f51d6da1be089c41a31a944094c9;hb=0a2d309bdf3249cedda021ee82cd1fa1b72a1811;hp=0000000000000000000000000000000000000000;hpb=08496817108d65c35b386ba63942edb5f9f6cb61;p=bbtk.git diff --git a/packages/std/src/bbstdReadVectorFromFile.cxx b/packages/std/src/bbstdReadVectorFromFile.cxx new file mode 100644 index 0000000..32e5cde --- /dev/null +++ b/packages/std/src/bbstdReadVectorFromFile.cxx @@ -0,0 +1,91 @@ +//===== +// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) +//===== +#include "bbstdReadVectorFromFile.h" +#include "bbstdPackage.h" +#include +namespace bbstd +{ + +BBTK_ADD_BLACK_BOX_TO_PACKAGE(std,ReadVectorFromFile) +BBTK_BLACK_BOX_IMPLEMENTATION(ReadVectorFromFile,bbtk::AtomicBlackBox); +//===== +// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) +//===== +void ReadVectorFromFile::Process() +{ + std::vector< std::vector< double > > Data; + std::ifstream openfile( bbGetInputFileName().c_str() ); + std::string Input; + unsigned int LineLength=bbGetInputLineLength(); + int skip = 0; + while ( getline( openfile, Input ) ) + { + std::stringstream Parse; + Parse << Input; + double Value; + std::vector Line; + // -------- une ligne sur 10! + skip++; + if(skip%10 != 0) + continue; + else + skip=1; + //-------- + while ( Parse >> Value ) + Line.push_back( Value ); + if ( Line.size() != LineLength ) + { + std::cout << "Line " << Data.size() + 1 << " expected " << + LineLength << " values, received " << Line.size() << " values, aborting." < >; + +} +//===== +// Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) +//===== +void ReadVectorFromFile::bbUserFinalizeProcessing() +{ + +// THE FINALIZATION METHOD BODY : +// Here does nothing +// but this is where you should desallocate the internal/output pointers +// if any + //delete Data; + +} +} +// EO namespace bbstd + +