GDCM 2.2.0

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Directories
- Examples

- File List
- File Members

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