11 #ifndef vtkSMPropertyLink_h 12 #define vtkSMPropertyLink_h 18 class vtkSMPropertyLinkInternals;
19 class vtkSMPropertyLinkObserver;
38 void AddLinkedProperty(
vtkSMProxy* proxy,
const char* propertyname,
int updateDir);
39 void RemoveLinkedProperty(
vtkSMProxy* proxy,
const char* propertyname);
47 unsigned int GetNumberOfLinkedProperties();
58 const char* GetLinkedPropertyName(
int index);
66 int GetLinkedPropertyDirection(
int index);
92 friend class vtkSMPropertyLinkInternals;
93 friend class vtkSMPropertyLinkObserver;
115 vtkSMPropertyLinkInternals* Internals;
116 bool ModifyingProperty;
virtual int LoadXMLState(vtkPVXMLElement *linkElement, vtkSMProxyLocator *locator)=0
Load the link state.
void LoadState(const vtkSMMessage *msg, vtkSMProxyLocator *locator) override
This method is used to initialize the object to the given state If the definitionOnly Flag is set to ...
#define VTKREMOTINGSERVERMANAGER_EXPORT
virtual void UpdateState()=0
Update the internal protobuf state.
superclass for all SM properties
virtual void SaveXMLState(const char *linkname, vtkPVXMLElement *parent)=0
Save the state of the link.
virtual void PropertyModified(vtkSMProxy *proxy, const char *pname)=0
Called when a property of an input proxy is modified.
Header class that setup every thing in order to use Protobuf messages in a transparent manner...
Abstract base class for proxy/property links.
virtual int GetLinkedObjectDirection(int index)=0
Get the direction of a object involved in this link (see vtkSMLink::UpdateDirections) ...
virtual unsigned int GetNumberOfLinkedObjects()=0
Get the number of object that are involved in this link.
Creates a link between two properties.
virtual void UpdateVTKObjects(vtkSMProxy *proxy)=0
Called when an input proxy is updated (UpdateVTKObjects).
proxy for a VTK object(s) on a server
virtual vtkSMProxy * GetLinkedProxy(int index)=0
Get a proxy involved in this link.
is used to locate proxies referred to in state xmls while loading state files.
virtual void UpdateProperty(vtkSMProxy *caller, const char *pname)=0
Called when a property is pushed.
virtual void RemoveAllLinks()=0
Remove all links.
This is used by vtkPVXMLParser to represent an XML document starting at the root element.
static vtkSMSessionObject * New()
void PrintSelf(ostream &os, vtkIndent indent) override