Mercurial > hg > orthanc
diff OrthancServer/ServerContext.cpp @ 291:4d7469f72a0b
embedding of dicom dictionaries
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 14 Dec 2012 15:15:48 +0100 |
parents | 40d3bf6cc8d9 |
children | 4eea080e6e7a |
line wrap: on
line diff
--- a/OrthancServer/ServerContext.cpp Fri Dec 14 11:24:24 2012 +0100 +++ b/OrthancServer/ServerContext.cpp Fri Dec 14 15:15:48 2012 +0100 @@ -36,6 +36,8 @@ #include <glog/logging.h> +#define ENABLE_DICOM_CACHE 1 + static const size_t DICOM_CACHE_SIZE = 2; @@ -178,6 +180,12 @@ ParsedDicomFile& ServerContext::GetDicomFile(const std::string& instancePublicId) { +#if ENABLE_DICOM_CACHE == 0 + static std::auto_ptr<IDynamicObject> p; + p.reset(provider_.Provide(instancePublicId)); + return dynamic_cast<ParsedDicomFile&>(*p); +#else return dynamic_cast<ParsedDicomFile&>(dicomCache_.Access(instancePublicId)); +#endif } }