/* * * Copyright (C) 1996-2011, OFFIS e.V. * All rights reserved. See COPYRIGHT file for details. * * This software and supporting documentation were developed by * * OFFIS e.V. * R&D Division Health * Escherweg 2 * D-26121 Oldenburg, Germany * * * Module: dcmimgle * * Author: Joerg Riesmeier * * Purpose: DicomOverlayData (Header) * */ #ifndef DIOVDAT_H #define DIOVDAT_H #include "dcmtk/config/osconfig.h" #include "dcmtk/dcmimgle/diobjcou.h" /*------------------------* * forward declarations * *------------------------*/ class DiOverlay; class DiOverlayPlane; /*-------------------------------* * declaration of helper class * *-------------------------------*/ /** Class to handle overlay pixel data */ class DCMTK_DCMIMGLE_EXPORT DiOverlayData : public DiObjectCounter { friend class DiOverlay; public: /** constructor * ** @param entries number of array entries * @param count number of valid overlay planes */ DiOverlayData(unsigned int entries, unsigned int count = 0); /** destructor */ virtual ~DiOverlayData(); private: /// number of (valid) overlay planes unsigned int Count; /// number of array entries (allocated memory) unsigned int ArrayEntries; /// pointer to an array of planes DiOverlayPlane **Planes; /// pointer to overlay data (if scaled, flipped or rotated) Uint16 *DataBuffer; // --- declarations to avoid compiler warnings DiOverlayData(const DiOverlayData &); DiOverlayData &operator=(const DiOverlayData &); }; #endif