Loading .hg_archival.txt +4 −4 Original line number Diff line number Diff line repo: 3959d33612ccaadc0d4d707227fbed09ac35e5fe node: afb581263e1d79e67ebf2fc1ca85780f9f3783e5 branch: Orthanc-1.4.2 node: 38b71a1006fd22750bb8f9ada9d2c6085bfe26de branch: Orthanc-1.5.0 latesttag: dcmtk-3.6.1 latesttagdistance: 423 changessincelatesttag: 465 latesttagdistance: 554 changessincelatesttag: 613 AUTHORS +2 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,8 @@ Authors of Orthanc 4000 Liege Belgium * Osimis S.A. <info@osimis.io> * Osimis S.A. Rue du Bois Saint-Jean 15/1 4102 Seraing Belgium http://www.osimis.io/ CMakeLists.txt +15 −8 Original line number Diff line number Diff line Loading @@ -58,6 +58,7 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/DicomInstanceToStore.cpp OrthancServer/ExportedResource.cpp OrthancServer/LuaScripting.cpp OrthancServer/OrthancConfiguration.cpp OrthancServer/OrthancFindRequestHandler.cpp OrthancServer/OrthancHttpHandler.cpp OrthancServer/OrthancInitialization.cpp Loading @@ -70,6 +71,8 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/OrthancRestApi/OrthancRestResources.cpp OrthancServer/OrthancRestApi/OrthancRestSystem.cpp OrthancServer/QueryRetrieveHandler.cpp OrthancServer/Search/DatabaseLookup.cpp OrthancServer/Search/DicomTagConstraint.cpp OrthancServer/Search/HierarchicalMatcher.cpp OrthancServer/Search/IFindConstraint.cpp OrthancServer/Search/ListConstraint.cpp Loading @@ -84,7 +87,9 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/ServerIndex.cpp OrthancServer/ServerJobs/ArchiveJob.cpp OrthancServer/ServerJobs/DicomModalityStoreJob.cpp OrthancServer/ServerJobs/DicomMoveScuJob.cpp OrthancServer/ServerJobs/LuaJobManager.cpp OrthancServer/ServerJobs/MergeStudyJob.cpp OrthancServer/ServerJobs/Operations/DeleteResourceOperation.cpp OrthancServer/ServerJobs/Operations/ModifyInstanceOperation.cpp OrthancServer/ServerJobs/Operations/StorePeerOperation.cpp Loading @@ -93,29 +98,31 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/ServerJobs/OrthancJobUnserializer.cpp OrthancServer/ServerJobs/OrthancPeerStoreJob.cpp OrthancServer/ServerJobs/ResourceModificationJob.cpp OrthancServer/ServerJobs/SplitStudyJob.cpp OrthancServer/ServerToolbox.cpp OrthancServer/SliceOrdering.cpp ) set(ORTHANC_UNIT_TESTS_SOURCES UnitTestsSources/DatabaseLookupTests.cpp UnitTestsSources/DicomMapTests.cpp UnitTestsSources/FileStorageTests.cpp UnitTestsSources/FromDcmtkTests.cpp UnitTestsSources/MemoryCacheTests.cpp UnitTestsSources/ImageProcessingTests.cpp UnitTestsSources/ImageTests.cpp UnitTestsSources/JpegLosslessTests.cpp UnitTestsSources/LuaTests.cpp UnitTestsSources/MemoryCacheTests.cpp UnitTestsSources/MultiThreadingTests.cpp UnitTestsSources/RestApiTests.cpp UnitTestsSources/SQLiteTests.cpp UnitTestsSources/SQLiteChromiumTests.cpp UnitTestsSources/SQLiteTests.cpp UnitTestsSources/ServerIndexTests.cpp UnitTestsSources/StreamTests.cpp UnitTestsSources/UnitTestsMain.cpp UnitTestsSources/VersionsTests.cpp UnitTestsSources/ZipTests.cpp UnitTestsSources/LuaTests.cpp UnitTestsSources/MultiThreadingTests.cpp UnitTestsSources/UnitTestsMain.cpp UnitTestsSources/ImageProcessingTests.cpp UnitTestsSources/JpegLosslessTests.cpp UnitTestsSources/StreamTests.cpp ) Loading Core/Cache/SharedArchive.cpp +26 −11 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ namespace Orthanc { delete it->second; archive_.erase(it); lru_.Invalidate(id); } } Loading @@ -59,7 +61,7 @@ namespace Orthanc if (it == that.archive_.end()) { throw OrthancException(ErrorCode_InexistentItem); item_ = NULL; } else { Loading @@ -69,6 +71,20 @@ namespace Orthanc } IDynamicObject& SharedArchive::Accessor::GetItem() const { if (item_ == NULL) { // "IsValid()" should have been called throw OrthancException(ErrorCode_BadSequenceOfCalls); } else { return *item_; } } SharedArchive::SharedArchive(size_t maxSize) : maxSize_(maxSize) { Loading Loading @@ -96,12 +112,12 @@ namespace Orthanc if (archive_.size() == maxSize_) { // The quota has been reached, remove the oldest element std::string oldest = lru_.RemoveOldest(); RemoveInternal(oldest); RemoveInternal(lru_.GetOldest()); } std::string id = Toolbox::GenerateUuid(); RemoveInternal(id); // Should never be useful because of UUID archive_[id] = obj; lru_.Add(id); Loading @@ -113,7 +129,6 @@ namespace Orthanc { boost::mutex::scoped_lock lock(mutex_); RemoveInternal(id); lru_.Invalidate(id); } Loading @@ -121,6 +136,7 @@ namespace Orthanc { items.clear(); { boost::mutex::scoped_lock lock(mutex_); for (Archive::const_iterator it = archive_.begin(); Loading @@ -130,5 +146,4 @@ namespace Orthanc } } } } Core/Cache/SharedArchive.h +5 −3 Original line number Diff line number Diff line Loading @@ -72,10 +72,12 @@ namespace Orthanc Accessor(SharedArchive& that, const std::string& id); IDynamicObject& GetItem() const bool IsValid() const { return *item_; return item_ != NULL; } IDynamicObject& GetItem() const; }; Loading Loading
.hg_archival.txt +4 −4 Original line number Diff line number Diff line repo: 3959d33612ccaadc0d4d707227fbed09ac35e5fe node: afb581263e1d79e67ebf2fc1ca85780f9f3783e5 branch: Orthanc-1.4.2 node: 38b71a1006fd22750bb8f9ada9d2c6085bfe26de branch: Orthanc-1.5.0 latesttag: dcmtk-3.6.1 latesttagdistance: 423 changessincelatesttag: 465 latesttagdistance: 554 changessincelatesttag: 613
AUTHORS +2 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,8 @@ Authors of Orthanc 4000 Liege Belgium * Osimis S.A. <info@osimis.io> * Osimis S.A. Rue du Bois Saint-Jean 15/1 4102 Seraing Belgium http://www.osimis.io/
CMakeLists.txt +15 −8 Original line number Diff line number Diff line Loading @@ -58,6 +58,7 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/DicomInstanceToStore.cpp OrthancServer/ExportedResource.cpp OrthancServer/LuaScripting.cpp OrthancServer/OrthancConfiguration.cpp OrthancServer/OrthancFindRequestHandler.cpp OrthancServer/OrthancHttpHandler.cpp OrthancServer/OrthancInitialization.cpp Loading @@ -70,6 +71,8 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/OrthancRestApi/OrthancRestResources.cpp OrthancServer/OrthancRestApi/OrthancRestSystem.cpp OrthancServer/QueryRetrieveHandler.cpp OrthancServer/Search/DatabaseLookup.cpp OrthancServer/Search/DicomTagConstraint.cpp OrthancServer/Search/HierarchicalMatcher.cpp OrthancServer/Search/IFindConstraint.cpp OrthancServer/Search/ListConstraint.cpp Loading @@ -84,7 +87,9 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/ServerIndex.cpp OrthancServer/ServerJobs/ArchiveJob.cpp OrthancServer/ServerJobs/DicomModalityStoreJob.cpp OrthancServer/ServerJobs/DicomMoveScuJob.cpp OrthancServer/ServerJobs/LuaJobManager.cpp OrthancServer/ServerJobs/MergeStudyJob.cpp OrthancServer/ServerJobs/Operations/DeleteResourceOperation.cpp OrthancServer/ServerJobs/Operations/ModifyInstanceOperation.cpp OrthancServer/ServerJobs/Operations/StorePeerOperation.cpp Loading @@ -93,29 +98,31 @@ set(ORTHANC_SERVER_SOURCES OrthancServer/ServerJobs/OrthancJobUnserializer.cpp OrthancServer/ServerJobs/OrthancPeerStoreJob.cpp OrthancServer/ServerJobs/ResourceModificationJob.cpp OrthancServer/ServerJobs/SplitStudyJob.cpp OrthancServer/ServerToolbox.cpp OrthancServer/SliceOrdering.cpp ) set(ORTHANC_UNIT_TESTS_SOURCES UnitTestsSources/DatabaseLookupTests.cpp UnitTestsSources/DicomMapTests.cpp UnitTestsSources/FileStorageTests.cpp UnitTestsSources/FromDcmtkTests.cpp UnitTestsSources/MemoryCacheTests.cpp UnitTestsSources/ImageProcessingTests.cpp UnitTestsSources/ImageTests.cpp UnitTestsSources/JpegLosslessTests.cpp UnitTestsSources/LuaTests.cpp UnitTestsSources/MemoryCacheTests.cpp UnitTestsSources/MultiThreadingTests.cpp UnitTestsSources/RestApiTests.cpp UnitTestsSources/SQLiteTests.cpp UnitTestsSources/SQLiteChromiumTests.cpp UnitTestsSources/SQLiteTests.cpp UnitTestsSources/ServerIndexTests.cpp UnitTestsSources/StreamTests.cpp UnitTestsSources/UnitTestsMain.cpp UnitTestsSources/VersionsTests.cpp UnitTestsSources/ZipTests.cpp UnitTestsSources/LuaTests.cpp UnitTestsSources/MultiThreadingTests.cpp UnitTestsSources/UnitTestsMain.cpp UnitTestsSources/ImageProcessingTests.cpp UnitTestsSources/JpegLosslessTests.cpp UnitTestsSources/StreamTests.cpp ) Loading
Core/Cache/SharedArchive.cpp +26 −11 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ namespace Orthanc { delete it->second; archive_.erase(it); lru_.Invalidate(id); } } Loading @@ -59,7 +61,7 @@ namespace Orthanc if (it == that.archive_.end()) { throw OrthancException(ErrorCode_InexistentItem); item_ = NULL; } else { Loading @@ -69,6 +71,20 @@ namespace Orthanc } IDynamicObject& SharedArchive::Accessor::GetItem() const { if (item_ == NULL) { // "IsValid()" should have been called throw OrthancException(ErrorCode_BadSequenceOfCalls); } else { return *item_; } } SharedArchive::SharedArchive(size_t maxSize) : maxSize_(maxSize) { Loading Loading @@ -96,12 +112,12 @@ namespace Orthanc if (archive_.size() == maxSize_) { // The quota has been reached, remove the oldest element std::string oldest = lru_.RemoveOldest(); RemoveInternal(oldest); RemoveInternal(lru_.GetOldest()); } std::string id = Toolbox::GenerateUuid(); RemoveInternal(id); // Should never be useful because of UUID archive_[id] = obj; lru_.Add(id); Loading @@ -113,7 +129,6 @@ namespace Orthanc { boost::mutex::scoped_lock lock(mutex_); RemoveInternal(id); lru_.Invalidate(id); } Loading @@ -121,6 +136,7 @@ namespace Orthanc { items.clear(); { boost::mutex::scoped_lock lock(mutex_); for (Archive::const_iterator it = archive_.begin(); Loading @@ -130,5 +146,4 @@ namespace Orthanc } } } }
Core/Cache/SharedArchive.h +5 −3 Original line number Diff line number Diff line Loading @@ -72,10 +72,12 @@ namespace Orthanc Accessor(SharedArchive& that, const std::string& id); IDynamicObject& GetItem() const bool IsValid() const { return *item_; return item_ != NULL; } IDynamicObject& GetItem() const; }; Loading