Mercurial > hg > orthanc
comparison OrthancServer/FromDcmtkBridge.cpp @ 176:81f11fb357f2
uid generation
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 07 Nov 2012 17:21:21 +0100 |
parents | fe180eae201d |
children | 4031f73fe0e4 |
comparison
equal
deleted
inserted
replaced
175:662af781a227 | 176:81f11fb357f2 |
---|---|
55 #include <dcmtk/dcmdata/dcvrfl.h> | 55 #include <dcmtk/dcmdata/dcvrfl.h> |
56 #include <dcmtk/dcmdata/dcvrsl.h> | 56 #include <dcmtk/dcmdata/dcvrsl.h> |
57 #include <dcmtk/dcmdata/dcvrss.h> | 57 #include <dcmtk/dcmdata/dcvrss.h> |
58 #include <dcmtk/dcmdata/dcvrul.h> | 58 #include <dcmtk/dcmdata/dcvrul.h> |
59 #include <dcmtk/dcmdata/dcvrus.h> | 59 #include <dcmtk/dcmdata/dcvrus.h> |
60 #include <dcmtk/dcmdata/dcuid.h> | |
60 | 61 |
61 #include <boost/math/special_functions/round.hpp> | 62 #include <boost/math/special_functions/round.hpp> |
62 | 63 |
63 namespace Orthanc | 64 namespace Orthanc |
64 { | 65 { |
612 it = values.map_.begin(); it != values.map_.end(); it++) | 613 it = values.map_.begin(); it != values.map_.end(); it++) |
613 { | 614 { |
614 result[GetName(it->first)] = it->second->AsString(); | 615 result[GetName(it->first)] = it->second->AsString(); |
615 } | 616 } |
616 } | 617 } |
618 | |
619 | |
620 std::string FromDcmtkBridge::GenerateUniqueIdentifier(DicomRootLevel level) | |
621 { | |
622 char uid[100]; | |
623 | |
624 switch (level) | |
625 { | |
626 case DicomRootLevel_Instance: | |
627 return dcmGenerateUniqueIdentifier(uid, SITE_INSTANCE_UID_ROOT); | |
628 | |
629 case DicomRootLevel_Series: | |
630 return dcmGenerateUniqueIdentifier(uid, SITE_SERIES_UID_ROOT); | |
631 | |
632 case DicomRootLevel_Study: | |
633 return dcmGenerateUniqueIdentifier(uid, SITE_STUDY_UID_ROOT); | |
634 | |
635 default: | |
636 throw OrthancException(ErrorCode_ParameterOutOfRange); | |
637 } | |
638 } | |
639 | |
617 } | 640 } |