MCPcopy Create free account
hub / github.com/MITK/MITK / ImageDataItem

Method ImageDataItem

Modules/Core/src/DataManagement/mitkImageDataItem.cpp:33–71  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

31#include <mitkImageVtkWriteAccessor.h>
32
33mitk::ImageDataItem::ImageDataItem(const ImageDataItem &aParent,
34 const mitk::ImageDescriptor::Pointer desc,
35 int timestep,
36 unsigned int dimension,
37 void *data,
38 bool manageMemory,
39 size_t offset)
40 : m_Data(static_cast<unsigned char *>(aParent.m_Data) + offset),
41 m_PixelType(new mitk::PixelType(aParent.GetPixelType())),
42 m_ManageMemory(false),
43 m_VtkImageData(nullptr),
44 m_VtkImageReadAccessor(nullptr),
45 m_VtkImageWriteAccessor(nullptr),
46 m_Offset(offset),
47 m_IsComplete(false),
48 m_Size(0),
49 m_Parent(&aParent),
50 m_Dimension(dimension),
51 m_Timestep(timestep)
52{
53 // compute size
54 // const unsigned int *dims = desc->GetDimensions();
55 for (unsigned int i = 0; i < dimension; i++)
56 {
57 m_Dimensions[i] = desc->GetDimensions()[i];
58 }
59 this->ComputeItemSize(m_Dimensions, dimension);
60
61 if (data != nullptr && data != m_Data)
62 {
63 memcpy(m_Data, data, m_Size);
64 if (manageMemory)
65 {
66 delete[](unsigned char *) data;
67 }
68 }
69
70 m_ReferenceCount = 0;
71}
72
73mitk::ImageDataItem::~ImageDataItem()
74{

Callers

nothing calls this directly

Calls 4

ComputeItemSizeMethod · 0.95
GetDimensionsMethod · 0.80
GetChannelDescriptorMethod · 0.80
GetPixelTypeMethod · 0.45

Tested by

no test coverage detected