/* * * Copyright (C) 1996-2016, 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 (Source) * */ #include "dcmtk/config/osconfig.h" #include "dcmtk/dcmdata/dctypes.h" #include "dcmtk/dcmimgle/diovlay.h" #include "dcmtk/dcmimgle/diovpln.h" #include "dcmtk/ofstd/ofbmanip.h" /*---------------* * constructor * *---------------*/ DiOverlayData::DiOverlayData(unsigned int entries, unsigned int count) : Count(count), ArrayEntries(entries), Planes(NULL), DataBuffer(NULL) { if ((entries > 0) && (entries <= DiOverlay::MaxOverlayCount)) { Planes = new DiOverlayPlane *[entries]; if (Planes != NULL) OFBitmanipTemplate::zeroMem(Planes, entries); } } /*---------------* * destructors * *---------------*/ DiOverlayData::~DiOverlayData() { if (Planes != NULL) { unsigned int i; for (i = 0; i < ArrayEntries; ++i) delete Planes[i]; } delete[] Planes; delete[] DataBuffer; }