GDCM  2.2.0
gdcmOverlay.h
Go to the documentation of this file.
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 GDCMOVERLAY_H
00015 #define GDCMOVERLAY_H
00016 
00017 #include "gdcmTypes.h"
00018 #include "gdcmObject.h"
00019 
00020 namespace gdcm
00021 {
00022 
00023 class OverlayInternal;
00024 class ByteValue;
00025 class DataSet;
00026 class DataElement;
00038 class GDCM_EXPORT Overlay : public Object
00039 {
00040 public:
00041   Overlay();
00042   ~Overlay();
00044   void Print(std::ostream &) const;
00045 
00047   void Update(const DataElement & de);
00048 
00050   void SetGroup(unsigned short group);
00052   unsigned short GetGroup() const;
00054   void SetRows(unsigned short rows);
00056   unsigned short GetRows() const;
00058   void SetColumns(unsigned short columns);
00060   unsigned short GetColumns() const;
00062   void SetNumberOfFrames(unsigned int numberofframes);
00064   void SetDescription(const char* description);
00066   const char *GetDescription() const;
00068   void SetType(const char* type);
00070   const char *GetType() const;
00072   void SetOrigin(const signed short *origin);
00074   const signed short * GetOrigin() const;
00076   void SetFrameOrigin(unsigned short frameorigin);
00078   void SetBitsAllocated(unsigned short bitsallocated);
00080   unsigned short GetBitsAllocated() const;
00082   void SetBitPosition(unsigned short bitposition);
00084   unsigned short GetBitPosition() const;
00086   void SetOverlay(const char *array, unsigned int length);
00088   bool GrabOverlayFromPixelData(DataSet const &ds);
00089 
00090   const ByteValue &GetOverlayData() const;
00091 
00092   bool IsEmpty() const;
00093 
00095   bool IsZero() const;
00096 
00097   // return if the Overlay is stored in the pixel data or not
00098   bool IsInPixelData() const;
00099   void IsInPixelData(bool b);
00100 
00101   void Decode(std::istream &is, std::ostream &os);
00102 
00103   void Decompress(std::ostream &os) const;
00104 
00105   bool GetBuffer(char *buffer) const;
00106   bool GetUnpackBuffer(unsigned char *buffer) const;
00107 
00108   Overlay(Overlay const &ov);
00109 
00110 private:
00111   OverlayInternal *Internal;
00112 };
00113 
00114 } // end namespace gdcm
00115 
00116 #endif //GDCMOVERLAY_H

Generated on Tue Mar 27 2012 13:33:40 for GDCM by doxygen 1.8.0
SourceForge.net Logo