]> Creatis software - gdcm.git/blobdiff - src/gdcmPixelWriteConvert.cxx
Port Mathieu's modif from gdcm1.2
[gdcm.git] / src / gdcmPixelWriteConvert.cxx
index 645d03abb7e4c69375e7d6fd4f19d9fc1d012b18..9258fc143d51e80b2d65e28001956a6e9fee0d51 100644 (file)
@@ -3,8 +3,8 @@
   Program:   gdcm
   Module:    $RCSfile: gdcmPixelWriteConvert.cxx,v $
   Language:  C++
-  Date:      $Date: 2005/02/01 10:29:56 $
-  Version:   $Revision: 1.6 $
+  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
@@ -24,14 +24,14 @@ namespace gdcm
 //-----------------------------------------------------------------------------
 // Constructor / Destructor
 /**
- * \brief Construcror
+ * \brief Constructor
  */
 PixelWriteConvert::PixelWriteConvert() 
 {
-   ReadData = 0;
+   ReadData     = 0;
    ReadDataSize = 0;
 
-   UserData = 0;
+   UserData     = 0;
    UserDataSize = 0;
 }
 
@@ -45,34 +45,43 @@ 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;
    }
@@ -83,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;
    }