GDCM
2.2.3
|
00001 /*========================================================================= 00002 00003 Program: GDCM (Grassroots DICOM). A DICOM library 00004 00005 Copyright (c) 2006-2011 Mathieu Malaterre 00006 All rights reserved. 00007 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details. 00008 00009 This software is distributed WITHOUT ANY WARRANTY; without even 00010 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. See the above copyright notice for more information. 00012 00013 =========================================================================*/ 00014 #ifndef GDCMICONIMAGE_H 00015 #define GDCMICONIMAGE_H 00016 00017 #if 0 00018 #include "gdcmObject.h" 00019 #include "gdcmDataElement.h" 00020 #include "gdcmPhotometricInterpretation.h" 00021 #include "gdcmPixelFormat.h" 00022 #include "gdcmTransferSyntax.h" 00023 00024 #include <vector> 00025 00026 namespace gdcm 00027 { 00028 00032 class GDCM_EXPORT IconImage : public Object 00033 { 00034 public: 00035 IconImage(); 00036 ~IconImage(); 00037 void Print(std::ostream &) const {} 00038 00040 void SetTransferSyntax(TransferSyntax const &ts) { 00041 TS = ts; 00042 } 00043 const TransferSyntax &GetTransferSyntax() const { 00044 return TS; 00045 } 00046 void SetDataElement(DataElement const &de) { 00047 PixelData = de; 00048 } 00049 const DataElement& GetDataElement() const { return PixelData; } 00050 00051 void SetColumns(unsigned int col) { SetDimension(0,col); } 00052 void SetRows(unsigned int rows) { SetDimension(1,rows); } 00053 void SetDimension(unsigned int idx, unsigned int dim); 00054 int GetColumns() const { return Dimensions[0]; } 00055 int GetRows() const { return Dimensions[1]; } 00056 // Get/Set PixelFormat 00057 const PixelFormat &GetPixelFormat() const 00058 { 00059 return PF; 00060 } 00061 void SetPixelFormat(PixelFormat const &pf) 00062 { 00063 PF = pf; 00064 } 00065 00066 const PhotometricInterpretation &GetPhotometricInterpretation() const; 00067 void SetPhotometricInterpretation(PhotometricInterpretation const &pi); 00068 00069 bool IsEmpty() const { return Dimensions.size() == 0; } 00070 void Clear(); 00071 00072 bool GetBuffer(char *buffer) const; 00073 00074 private: 00075 TransferSyntax TS; 00076 PixelFormat PF; // SamplesPerPixel, BitsAllocated, BitsStored, HighBit, PixelRepresentation 00077 PhotometricInterpretation PI; 00078 std::vector<unsigned int> Dimensions; // Col/Row 00079 std::vector<double> Spacing; // PixelAspectRatio ? 00080 DataElement PixelData; // copied from 7fe0,0010 00081 static const unsigned int NumberOfDimensions = 2; 00082 }; 00083 00084 } // end namespace gdcm 00085 #endif 00086 #include "gdcmBitmap.h" 00087 00088 namespace gdcm 00089 { 00090 //class GDCM_EXPORT IconImage : public Pixmap {}; 00091 typedef Bitmap IconImage; 00092 } 00093 00094 #endif //GDCMICONIMAGE_H