]> Creatis software - clitk.git/blobdiff - common/clitkHisImageIO.cxx
XVI IO
[clitk.git] / common / clitkHisImageIO.cxx
index 009d282428546ae2fdd18e29cbd4a41b8a7790f2..1ee1995ee6b13847813f3abbf5826c9c0320e09e 100755 (executable)
@@ -81,7 +81,6 @@ void clitk::HisImageIO::ReadImageInformation() {
   SetDimensions(1, brx-ulx+1);
   if (nrframes>1)\r
     SetDimensions(2, nrframes);\r
-  file.close();\r
 } ////
 
 //--------------------------------------------------------------------
@@ -97,7 +96,6 @@ bool clitk::HisImageIO::CanReadFile(const char* FileNameToRead)
 //--------------------------------------------------------------------
 // Read Image Content
 void clitk::HisImageIO::Read(void * buffer) {
-
   // open file
   std::ifstream file(m_FileName.c_str(), std::ios::in | std::ios::binary);
   if ( file.fail() )
@@ -117,10 +115,18 @@ void clitk::HisImageIO::Read(void * buffer) {
                       << file.gcount() << " bytes. The current state is: "
                       << file.rdstate());
 }
+  
+//--------------------------------------------------------------------
+bool clitk::HisImageIO::CanWriteFile(const char* FileNameToWrite)
+{ std::string filename(FileNameToWrite);
+  std::string filenameext = GetExtension(filename);
+  if (filenameext != std::string("his")) return false;
+  return true;
+}
 
 //--------------------------------------------------------------------
-// Write Image Information
-void clitk::HisImageIO::WriteImageInformation(bool keepOfStream)
+// Write Image
+void clitk::HisImageIO::Write(const void* buffer)
 {
   std::ofstream file(m_FileName.c_str(), std::ios::out | std::ios::binary);
   if ( file.fail() )
@@ -168,28 +174,8 @@ void clitk::HisImageIO::WriteImageInformation(bool keepOfStream)
       itkExceptionMacro(<< "Unsupported field type");\r
       break;\r
   }\r
+\r
   file.write(szHeader, m_HeaderSize);\r
-  file.close();\r
-}
-  
-//--------------------------------------------------------------------
-// Write Image Information
-bool clitk::HisImageIO::CanWriteFile(const char* FileNameToWrite)
-{
-  std::string filename(FileNameToWrite);
-  std::string filenameext = GetExtension(filename);
-  if (filenameext != std::string("his")) return false;
-  return true;
-}
-
-//--------------------------------------------------------------------
-// Write Image
-void clitk::HisImageIO::Write(const void * buffer) 
-{
-  std::ofstream file(m_FileName.c_str(), std::ios::out | std::ios::binary | std::ios::ate);
-  if ( file.fail() )
-    itkGenericExceptionMacro(<< "Could not open file (for writing): " << m_FileName);
-
   file.write((const char *)buffer, GetImageSizeInBytes());\r
   file.close();
 } ////