/usr/include/gdcm-2.6/gdcmUnpacker12Bits.h is in libgdcm2-dev 2.6.6-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | /*=========================================================================
Program: GDCM (Grassroots DICOM). A DICOM library
Copyright (c) 2006-2011 Mathieu Malaterre
All rights reserved.
See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
#ifndef GDCMUNPACKER12BITS_H
#define GDCMUNPACKER12BITS_H
#include "gdcmTypes.h"
namespace gdcm
{
/**
* \brief Pack/Unpack 12 bits pixel into 16bits
* \details
* \li You can only pack an even number of 16bits, which means a multiple of 4 (expressed in bytes)
* \li You can only unpack a multiple of 3 bytes
*
* This class has no purpose in general purpose DICOM implementation. However
* to be able to cope with some early ACR-NEMA file generated by a well-known
* private vendor, one would need to unpack 12bits Stored Pixel Value into a
* more standard 16bits Stored Pixel Value.
*
* \see Rescaler
*/
class GDCM_EXPORT Unpacker12Bits
{
public:
/// Pack an array of 16bits where all values are 12bits into a pack form. n
/// is the length in bytes of array in, out will be a fake 8bits array of size
/// (n / 2) * 3
static bool Pack(char *out, const char *in, size_t n);
/// Unpack an array of 'packed' 12bits data into a more conventional 16bits
/// array. n is the length in bytes of array in, out will be a 16bits array of
/// size (n / 3) * 2
static bool Unpack(char *out, const char *in, size_t n);
};
} // end namespace gdcm
#endif //GDCMUNPACKER12BITS_H
|