]> Creatis software - gdcm.git/blobdiff - src/gdcmPixelWriteConvert.cxx
Swap64 deals with double (VR=FD)
[gdcm.git] / src / gdcmPixelWriteConvert.cxx
index 899f816f84e8047ed78399f4cfa27119930b3356..9258fc143d51e80b2d65e28001956a6e9fee0d51 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmPixelWriteConvert.cxx,v $
   Language:  C++
-  Date:      $Date: 2005/01/23 10:12:34 $
-  Version:   $Revision: 1.5 $
+  Date:      $Date: 2005/10/23 15:09:19 $
+  Version:   $Revision: 1.11 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
@@ -23,54 +23,65 @@ namespace gdcm
 {
 //-----------------------------------------------------------------------------
 // Constructor / Destructor
-
-/// \brief Construcror
+/**
+ * \brief Constructor
+ */
 PixelWriteConvert::PixelWriteConvert() 
 {
-   ReadData = 0;
+   ReadData     = 0;
    ReadDataSize = 0;
 
-   UserData = 0;
+   UserData     = 0;
    UserDataSize = 0;
 }
 
-/// \brief Destructor
+/**
+ * \brief Destructor
+ */
 PixelWriteConvert::~PixelWriteConvert() 
 {
 }
 
 //-----------------------------------------------------------------------------
 // Public
-
 /**
- * \brief   SetReadData
- * @param   data data
- * @param   size size
+ * \brief   sets Read Data (and size)
+ * @param   data data (uint8_t is for prototyping. if your data is not uint8_t
+ *                     just cast the pointer for calling the method)
+ * @param   size data size, in bytes
  */
-void PixelWriteConvert::SetReadData(uint8_t *data,size_t size)
+void PixelWriteConvert::SetReadData(uint8_t *data, size_t size)
 {
    ReadData = data;
    ReadDataSize = size;
 }
 
 /**
- * \brief   SetUserData
- * @param   data data
- * @param   size size
+ * \brief   Sets the internal pointer to the caller's inData
+ *          image representation, BUT WITHOUT COPYING THE DATA.
+ *          - 'image' Pixels are presented as C-like 2D arrays : line per line.
+ *          - 'volume'Pixels are presented as C-like 3D arrays : plane per plane 
+ * \warning Since the pixels are not copied, it is the caller's responsability
+ *          not to deallocate its data before gdcm uses them (e.g. with
+ *          the Write() method )
+ * @param   data data (uint8_t is for prototyping. if your data is not uint8_t
+ *                     just cast the pointer for calling the method)
+ * @param   size size, in bytes.
  */
-void PixelWriteConvert::SetUserData(uint8_t *data,size_t size)
+void PixelWriteConvert::SetUserData(uint8_t *data, size_t size)
 {
    UserData = data;
    UserDataSize = size;
 }
 
 /**
- * \brief   GetData
- * @return  data 
+ * \brief   Get Data (UserData or ReadData)
+ * @return  data (uint8_t is for prototyping. if your data is 
+ *                    *not* uint8_t, just cast the returned pointer)
  */
 uint8_t *PixelWriteConvert::GetData()
 {
-   if(UserData)
+   if ( UserData )
    {
       return UserData;
    }
@@ -81,12 +92,12 @@ uint8_t *PixelWriteConvert::GetData()
 }
 
 /**
- * \brief   GetDataSize
- * @return  size 
+ * \brief   Get Data Size (UserData or ReadData)
+ * @return  size, in bytes.
  */
 size_t PixelWriteConvert::GetDataSize()
 {
-   if(UserData)
+   if ( UserData )
    {
       return UserDataSize;
    }
@@ -96,5 +107,14 @@ size_t PixelWriteConvert::GetDataSize()
    }
 }
 
+//-----------------------------------------------------------------------------
+// Protected
+
+//-----------------------------------------------------------------------------
+// Private
+
+//-----------------------------------------------------------------------------
+// Print
+
 //-----------------------------------------------------------------------------
 } // end namespace gdcm