DYT/Tool/3rdParty_x64/include/dcmtk/dcmimgle/diovdat.h
2024-11-22 23:19:31 +08:00

86 lines
1.6 KiB
C++

/*
*
* 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