HomePhabricator
Diffusion MITK f3fa7f7ca0b9

Description

Fixed T23741

For mitk::UIDGenerator I have decided to base it internally on
boost::uuid (name_generator).

Reasoning:
I second @steint point, that it makes no sense to implement a UUID
generation code on its own.

Using boost can be a fast way to get a result, because it is
already included in the superbuild.
I think we should avoid being dependent on boost for too many
things, as the build has sometimes trouble with Boost?

This is not a valid argument in the current master as (1) boost is a
dependency of MITKCore anyways and (2) boost::uuid is nowadays header
only, so no new problems are introduced.
Further, I hided boost::uuid as an implementation detail so, we build
no further dependencies and can change it later one.

The other proposed options crossguid and stduuid would introduce further
additional 3rd party dependencies (like Microsoft GSL). So I see no
benefit in try to avoid boost (wich already is a core dependency) by
introducing even more dependencies.

DICOM UUID:
This we will also need. But I think it is cleaner to manage that on the
DICOM module level (and not the core) then we can also use DCMTKs or
GDCMs implementation.

Signed-off-by: Ralf Floca <r.floca@dkfz-heidelberg.de>

Details

Provenance
flocaAuthored on May 30 2020, 11:33 PM
flocaPushed on Jun 2 2020, 9:25 PM
Differential Revision
Restricted Differential Revision
Parents
rMITK1bab67a27d3d: Fixed T24144 by migrating 2-step-linear model
Branches
Unknown
Tags
Unknown
Tasks
T23741: Specify default UID generation method