Mercurial > hg > orthanc
diff OrthancServer/ServerContext.h @ 1436:0a3e3be59094
uncoupling of SignalChange for Lua scripts
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 30 Jun 2015 17:19:26 +0200 |
parents | f9cd40166269 |
children | b2b09a3dbd8e |
line wrap: on
line diff
--- a/OrthancServer/ServerContext.h Tue Jun 30 16:46:23 2015 +0200 +++ b/OrthancServer/ServerContext.h Tue Jun 30 17:19:26 2015 +0200 @@ -32,6 +32,7 @@ #pragma once +#include "../Core/MultiThreading/SharedMessageQueue.h" #include "../Core/Cache/MemoryCache.h" #include "../Core/Cache/SharedArchive.h" #include "../Core/FileStorage/CompressedFileStorageAccessor.h" @@ -48,6 +49,8 @@ #include "ServerIndex.h" #include <boost/filesystem.hpp> +#include <boost/thread.hpp> + namespace Orthanc { @@ -100,6 +103,9 @@ typedef std::list<ServerListener> ServerListeners; + static void ChangeThread(ServerContext* that); + + ServerIndex index_; CompressedFileStorageAccessor accessor_; bool compressionEnabled_; @@ -114,6 +120,10 @@ OrthancPlugins* plugins_; ServerListeners listeners_; + bool done_; + SharedMessageQueue pendingChanges_; + boost::thread changeThread_; + SharedArchive queryRetrieveArchive_; std::string defaultLocalAet_; @@ -139,6 +149,8 @@ ServerContext(IDatabaseWrapper& database); + ~ServerContext(); + void SetStorageArea(IStorageArea& storage) { accessor_.SetStorageArea(storage);