Medical Imaging Interaction Toolkit  2024.12.99-0da743f6
Medical Imaging Interaction Toolkit
mitkNodeSelectionService.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkNodeSelectionService_h
14 #define mitkNodeSelectionService_h
15 
17 
18 #include <mutex>
19 #include <unordered_map>
20 
21 namespace mitk
22 {
24  {
25  public:
27  ~NodeSelectionService() override;
28 
29  bool AddListener(const std::string& context, INodeSelectionListener* listener) override;
30  bool RemoveListener(const std::string& context, const INodeSelectionListener* listener) override;
31  bool RemoveListener(const INodeSelectionListener* listener) override;
32 
33  bool SendSelection(const std::string& context, const std::vector<mitk::DataNode::Pointer>& selection) const override;
34 
35  private:
36  std::unordered_multimap<std::string, INodeSelectionListener*> m_Listeners;
37  mutable std::mutex m_Mutex;
38  };
39 }
40 
41 #endif
mitk::NodeSelectionService::SendSelection
bool SendSelection(const std::string &context, const std::vector< mitk::DataNode::Pointer > &selection) const override
Send a selection to all listeners of a certain selection context.
mitk::INodeSelectionListener
Interface for listening to node selections sent via the INodeSelectionService.
Definition: mitkINodeSelectionListener.h:26
mitk::NodeSelectionService::RemoveListener
bool RemoveListener(const std::string &context, const INodeSelectionListener *listener) override
Remove a listener from selections of a certain selection context.
mitk::NodeSelectionService::NodeSelectionService
NodeSelectionService()
mitk::NodeSelectionService::~NodeSelectionService
~NodeSelectionService() override
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::NodeSelectionService::AddListener
bool AddListener(const std::string &context, INodeSelectionListener *listener) override
Add a listener for selections in a certain selection context.
mitk::INodeSelectionService
A simple messaging service for sending and receiving data node selections for certain contexts.
Definition: mitkINodeSelectionService.h:31
mitkINodeSelectionService.h
mitk::NodeSelectionService
Definition: mitkNodeSelectionService.h:23