diff Plugins/Engine/OrthancPlugins.cpp @ 1741:06addfcd1d4c

OrthancStarted and OrthancStopped events in plugins
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 23 Oct 2015 16:49:17 +0200
parents 5e99a70b0635
children 2dd5c6b0380b
line wrap: on
line diff
--- a/Plugins/Engine/OrthancPlugins.cpp	Thu Oct 22 19:53:51 2015 +0200
+++ b/Plugins/Engine/OrthancPlugins.cpp	Fri Oct 23 16:49:17 2015 +0200
@@ -514,7 +514,9 @@
 
 
 
-  void OrthancPlugins::SignalChange(const ServerIndexChange& change)
+  void OrthancPlugins::SignalChangeInternal(OrthancPluginChangeType changeType,
+                                            OrthancPluginResourceType resourceType,
+                                            const char* resource)
   {
     boost::recursive_mutex::scoped_lock lock(pimpl_->changeCallbackMutex_);
 
@@ -522,10 +524,7 @@
            callback = pimpl_->onChangeCallbacks_.begin(); 
          callback != pimpl_->onChangeCallbacks_.end(); ++callback)
     {
-      OrthancPluginErrorCode error = (*callback)
-        (Plugins::Convert(change.GetChangeType()),
-         Plugins::Convert(change.GetResourceType()),
-         change.GetPublicId().c_str());
+      OrthancPluginErrorCode error = (*callback) (changeType, resourceType, resource);
 
       if (error != OrthancPluginErrorCode_Success)
       {
@@ -537,6 +536,15 @@
 
 
 
+  void OrthancPlugins::SignalChange(const ServerIndexChange& change)
+  {
+    SignalChangeInternal(Plugins::Convert(change.GetChangeType()),
+                         Plugins::Convert(change.GetResourceType()),
+                         change.GetPublicId().c_str());
+  }
+
+
+
   static void CopyToMemoryBuffer(OrthancPluginMemoryBuffer& target,
                                  const void* data,
                                  size_t size)
@@ -1258,6 +1266,8 @@
         throw OrthancException(ErrorCode_ParameterOutOfRange);
       }
 
+      printf("ICI %s\n", p.instanceId);
+
       std::string content;
       pimpl_->context_->ReadFile(content, p.instanceId, FileContentType_Dicom);
       dicom.reset(new ParsedDicomFile(content));