diff --git a/modules/ustk_core/src/io/usRawFileParser.cpp b/modules/ustk_core/src/io/usRawFileParser.cpp index 02407303..0ee2c911 100644 --- a/modules/ustk_core/src/io/usRawFileParser.cpp +++ b/modules/ustk_core/src/io/usRawFileParser.cpp @@ -49,13 +49,7 @@ void usRawFileParser::read(usImage3D &image3D, const std::string &rawFilename) { std::ifstream fileStream(rawFilename.c_str(), std::ios::in | std::ios::binary); - unsigned int i = 0; - while (i < image3D.getSize()) { - char c; - fileStream.get(c); - image3D.getData()[i] = c; - i++; - } + fileStream.read((char *)image3D.getData(), image3D.getSize()*sizeof(unsigned char)); fileStream.close(); } @@ -67,11 +61,7 @@ void usRawFileParser::read(usImage3D &image3D, const std::string void usRawFileParser::write(const usImage3D &image3D, const std::string &rawFilename) { std::fstream fileStream(rawFilename.c_str(), std::ios::out | std::ios::binary); - unsigned int i = 0; - while (i < image3D.getSize()) { - fileStream.put(image3D.getConstData()[i]); - i++; - } + fileStream.write((const char*)image3D.getConstData(), image3D.getSize()*sizeof(unsigned char)); fileStream.close(); } @@ -83,11 +73,7 @@ void usRawFileParser::write(const usImage3D &image3D, const std:: void usRawFileParser::read(usImageRF3D &image3D, const std::string &rawFilename) { std::ifstream fileStream(rawFilename.c_str(), std::ios::in | std::ios::binary); - unsigned int i = 0; - while (i < image3D.getSize()) { - fileStream.read((char *)(image3D.bitmap + i), sizeof(short)); - i++; - } + fileStream.read((char*)image3D.bitmap, image3D.getSize()*sizeof(short)); fileStream.close(); } @@ -99,11 +85,7 @@ void usRawFileParser::read(usImageRF3D &image3D, const std::string &rawFi void usRawFileParser::write(const usImageRF3D &image3D, const std::string &rawFilename) { std::fstream fileStream(rawFilename.c_str(), std::ios::out | std::ios::binary); - unsigned int i = 0; - while (i < image3D.getSize()) { - fileStream.write((char *)(image3D.getConstData() + i), sizeof(short)); - i++; - } + fileStream.write((const char*)image3D.getConstData(), image3D.getSize()*sizeof(short)); fileStream.close(); } diff --git a/modules/ustk_grabber/src/usNetworkGrabberPreScan3D.cpp b/modules/ustk_grabber/src/usNetworkGrabberPreScan3D.cpp index 9c593b8c..2badcc4b 100644 --- a/modules/ustk_grabber/src/usNetworkGrabberPreScan3D.cpp +++ b/modules/ustk_grabber/src/usNetworkGrabberPreScan3D.cpp @@ -187,14 +187,9 @@ void usNetworkGrabberPreScan3D::dataArrived() m_motorSettings.setMotorRadius(m_imageHeader.motorRadius); // set data info - m_grabbedImage.setFrameCount(m_imageHeader.frameCount); + m_grabbedImage.setFrameCount(m_imageHeader.frameCount>1?(m_imageHeader.frameCount-1):0); m_grabbedImage.setFramesPerVolume(m_imageHeader.framesPerVolume); - // warning if timestamps are close (< 10 ms) - if (m_imageHeader.timeStamp - m_grabbedImage.getTimeStamp() < 10) { - std::cout << "WARNING : new image received with an acquisition timestamp close to previous image (<10ms)" - << std::endl; - } m_grabbedImage.setTimeStamp(m_imageHeader.timeStamp); m_grabbedImage.resize(m_imageHeader.frameWidth, m_imageHeader.frameHeight);