23 #ifndef vtkSMPropertyLink_h 24 #define vtkSMPropertyLink_h 30 class vtkSMPropertyLinkInternals;
31 class vtkSMPropertyLinkObserver;
50 void AddLinkedProperty(
vtkSMProxy* proxy,
const char* propertyname,
int updateDir);
51 void RemoveLinkedProperty(
vtkSMProxy* proxy,
const char* propertyname);
59 unsigned int GetNumberOfLinkedProperties();
70 const char* GetLinkedPropertyName(
int index);
78 int GetLinkedPropertyDirection(
int index);
104 friend class vtkSMPropertyLinkInternals;
105 friend class vtkSMPropertyLinkObserver;
127 vtkSMPropertyLinkInternals* Internals;
128 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