I wonder if there is a reason that the data in DataNode is stored as BaseData::Pointer instead of BaseData::ConstPointer.
The data should not be modified anyway.
As we aim to use the maximum const strategy, we have to de-const our ConstPointer if want to add it to a dataNode in our code.
mitk::Image::ConstPointer someImage; node->SetData(someImage) //doesn't compile: SetData only takes mitk::BaseData*