vtkSMProxyManagerUtilities.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
13 #ifndef vtkSMProxyManagerUtilities_h
14 #define vtkSMProxyManagerUtilities_h
15 
16 #include "vtkRemotingServerManagerModule.h" // needed for exports
17 #include "vtkSMObject.h"
18 
19 #include <map> // for std::map
20 #include <set> // for std::set
21 #include <string> // for std::string
22 
23 class vtkPVXMLElement;
25 class vtkSMProxy;
26 
28 {
29 public:
32  void PrintSelf(ostream& os, vtkIndent indent) override;
33 
35 
38  void SetProxyManager(vtkSMSessionProxyManager* pxm);
39  vtkGetObjectMacro(ProxyManager, vtkSMSessionProxyManager);
41 
43 
52  std::set<vtkSMProxy*> GetProxiesWithAnnotations(
53  const std::map<std::string, std::string>& annotations, bool match_all);
54  std::set<vtkSMProxy*> GetProxiesWithAllAnnotations(
55  const std::map<std::string, std::string>& annotations)
56  {
57  return this->GetProxiesWithAnnotations(annotations, true);
58  }
59  std::set<vtkSMProxy*> GetProxiesWithAnyAnnotations(
60  const std::map<std::string, std::string>& annotations)
61  {
62  return this->GetProxiesWithAnnotations(annotations, false);
63  }
65 
67 
72  std::set<vtkSMProxy*> CollectHelpersAndRelatedProxies(const std::set<vtkSMProxy*>& proxies);
74 
75 protected:
77  ~vtkSMProxyManagerUtilities() override;
78 
79 private:
81  void operator=(const vtkSMProxyManagerUtilities&) = delete;
82 
83  vtkSMSessionProxyManager* ProxyManager;
84 };
85 
86 #endif
miscellaneous collection of proxy-manager utilities
#define VTKREMOTINGSERVERMANAGER_EXPORT
superclass for most server manager classes
Definition: vtkSMObject.h:17
std::set< vtkSMProxy * > GetProxiesWithAnyAnnotations(const std::map< std::string, std::string > &annotations)
Returns a collection of proxies that have the specified annotations.
The vtkSMSessionProxyManager is esponsible for creating and managing proxies for a given session...
static vtkSMObject * New()
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
This is used by vtkPVXMLParser to represent an XML document starting at the root element.
std::set< vtkSMProxy * > GetProxiesWithAllAnnotations(const std::map< std::string, std::string > &annotations)
Returns a collection of proxies that have the specified annotations.
void PrintSelf(ostream &os, vtkIndent indent) override