101 #ifndef vtkSMSessionProxyManager_h
102 #define vtkSMSessionProxyManager_h
104 #include "vtkRemotingServerManagerModule.h"
123 class vtkSMProxyManagerObserver;
124 class vtkSMProxyManagerProxySet;
151 static vtkTypeUInt32 GetReservedGlobalID();
163 const char* groupName,
const char* proxyName,
const char* subProxyName =
nullptr);
171 vtkSMDocumentation* GetProxyDocumentation(
const char* groupName,
const char* proxyName);
182 const char* groupName,
const char* proxyName,
const char* propertyName);
196 void RegisterProxy(
const char* groupname,
const char* name,
vtkSMProxy* proxy);
202 std::string RegisterProxy(
const char* groupname,
vtkSMProxy* proxy);
209 vtkSMProxy* GetProxy(
const char* groupname,
const char* name);
217 void GetProxies(
const char* groupname,
const char* name,
vtkCollection* collection);
220 this->GetProxies(groupname,
nullptr, collection);
231 vtkSMProxy* GetPrototypeProxy(
const char* groupname,
const char* name);
236 unsigned int GetNumberOfProxies(
const char* groupname);
242 const char* GetProxyName(
const char* groupname,
unsigned int idx);
250 const char* GetProxyName(
const char* groupname,
vtkSMProxy* proxy);
266 std::string GetUniqueProxyName(
267 const char* groupname,
const char* prefix,
bool alwaysAppend =
true);
274 const char* IsProxyInGroup(
vtkSMProxy* proxy,
const char* groupname);
281 void UnRegisterProxy(
const char* groupname,
const char* name,
vtkSMProxy*);
282 void UnRegisterProxy(
const char* name);
294 void UnRegisterProxies();
303 void UpdateRegisteredProxies(
const char* groupname,
int modified_only = 1);
304 void UpdateRegisteredProxies(
int modified_only = 1);
315 void UpdateRegisteredProxiesInOrder(
int modified_only = 1);
322 int GetNumberOfLinks();
327 const char* GetLinkName(
int index);
333 void RegisterLink(
const char* linkname,
vtkSMLink* link);
338 void UnRegisterLink(
const char* linkname);
344 vtkSMLink* GetRegisteredLink(
const char* linkname);
350 const char* GetRegisteredLinkName(
vtkSMLink* link);
355 void UnRegisterAllLinks();
365 void RegisterCustomProxyDefinition(
const char* group,
const char* name,
vtkPVXMLElement* top);
373 void UnRegisterCustomProxyDefinition(
const char* group,
const char* name);
381 void UnRegisterCustomProxyDefinitions();
386 vtkPVXMLElement* GetProxyDefinition(
const char* group,
const char* name);
392 void LoadCustomProxyDefinitions(
const char* filename);
409 vtkTypeUInt32 location = 0x10 );
418 vtkGetMacro(InLoadXMLState,
bool);
423 bool SaveString(
const char*
string,
const char* filename, vtkTypeUInt32 location);
428 std::string LoadString(
const char* filename, vtkTypeUInt32 location);
435 bool SaveXMLState(
const char* filename, vtkTypeUInt32 location = 0x10 );
458 const std::set<vtkSMProxy*>& restrictionSet,
bool forceRestriction =
false);
471 void InstantiateGroupPrototypes(
const char* groupName);
476 void InstantiatePrototypes();
481 void ClearPrototypes();
486 bool HasDefinition(
const char* groupName,
const char* proxyName);
492 int AreProxiesModified();
503 vtkPVXMLElement* GetProxyHints(
const char* xmlgroup,
const char* xmlname);
505 const char* groupName,
const char* proxyName,
const char* propertyName);
516 vtkGetMacro(UpdateInputProxies,
int);
522 bool LoadConfigurationXML(
const char* xmlcontents);
557 void UnRegisterSelectionModel(
const char* name);
565 void UpdateFromRemote();
574 bool IsStateUpdateNotificationEnabled();
575 void DisableStateUpdateNotification();
576 void EnableStateUpdateNotification();
577 void TriggerStateUpdate();
597 vtkSMProxy* FindProxy(
const char* reggroup,
const char* xmlgroup,
const char* xmltype);
606 friend class vtkSMProxyManagerObserver;
613 const char* subProxyName =
nullptr);
620 const char* groupName,
const char* proxyName,
const char* subProxyName =
nullptr);
625 virtual void ExecuteEvent(
vtkObject* obj,
unsigned long event,
void* data);
630 void RemovePrototype(
const char* groupname,
const char* proxyname);
643 void CollectReferredProxies(vtkSMProxyManagerProxySet& setOfProxies,
vtkSMProxy* proxy);
653 vtkSMProxyManagerObserver* Observer;