Go to the documentation of this file.
122 #include "vtkRemotingServerManagerModule.h"
129 class vtkSMLoadStateContext;
138 class vtkSMProxyObserver;
150 void SetAnnotation(
const char* key,
const char* value);
156 const char* GetAnnotation(
const char* key);
161 void RemoveAnnotation(
const char* key);
166 void RemoveAllAnnotations();
171 bool HasAnnotation(
const char* key);
176 int GetNumberOfAnnotations();
181 const char* GetAnnotationKeyAt(
int index);
195 return this->GetProperty(
name, 0);
203 virtual vtkSMProperty* GetProperty(
const char* name,
int selfOnly);
219 virtual void UpdateVTKObjects();
226 virtual void RecreateVTKObjects();
236 bool UpdateProperty(
const char* name,
int force);
248 vtkGetStringMacro(VTKClassName);
257 vtkSetStringMacro(VTKClassName);
270 unsigned int GetNumberOfConsumers();
277 vtkSMProxy* GetConsumerProxy(
unsigned int idx);
290 unsigned int GetNumberOfProducers();
295 vtkSMProxy* GetProducerProxy(
unsigned int idx);
310 vtkGetStringMacro(XMLName);
319 vtkGetStringMacro(XMLGroup);
329 vtkGetStringMacro(XMLLabel);
336 virtual void UpdatePropertyInformation();
351 virtual void MarkAllPropertiesAsModified();
359 virtual void ResetPropertiesToXMLDefaults();
367 virtual void ResetPropertiesToDomainDefaults();
385 virtual void ResetPropertiesToDefault(ResetPropertiesMode mode = DEFAULT);
392 COPY_PROXY_PROPERTY_VALUES_BY_REFERENCE = 0,
394 COPY_PROXY_PROPERTY_VALUES_BY_CLONING
412 void Copy(
vtkSMProxy* src,
const char* exceptionClass);
413 virtual void Copy(
vtkSMProxy* src,
const char* exceptionClass,
int proxyPropertyCopyFlag);
419 virtual void MarkModified(
vtkSMProxy* modifiedProxy);
444 vtkGetMacro(ObjectsCreated,
int);
455 void InitializeAndCopyFromProxy(
vtkSMProxy* source);
461 virtual void MarkDirty(
vtkSMProxy* modifiedProxy);
476 bool GatherInformation(
vtkPVInformation* information, vtkTypeUInt32 location);
518 void UpdateSelfAndAllInputs();
524 bool GetIsSubProxy();
577 size_t GetNumberOfPropertyGroups()
const;
595 void SetLogName(
const char* name);
596 vtkGetStringMacro(LogName);
602 const char* GetLogNameOrDefault();
619 virtual void UpdateAndPushAnnotationState();
635 virtual void AddProperty(
const char* name,
vtkSMProperty* prop);
640 virtual void MarkConsumersAsDirty(
vtkSMProxy* modifiedProxy);
650 virtual void MarkDirtyFromProducer(
663 void MarkInputsAsDirty();
673 friend class vtkSMCompoundProxy;
683 friend class vtkSMProxyObserver;
685 friend class vtkSMProxyRegisterUndoElement;
686 friend class vtkSMProxyUnRegisterUndoElement;
691 friend class vtkSMUndoRedoStateLoader;
915 const char* exposed_name,
int overrideOK = 0);
946 const char* name,
bool propagate_to_subproxies,
bool propagate_to_proxylistdomains);
1010 friend class vtkSMProxyInfo;
1013 std::string DefaultLogName;
void CreateVTKObjects() override
Called at the end of CreateVTKObjects().
bool ArePropertiesModified()
Indicates if any properties are modified.
virtual void PrototypeOn()
Allow user to set the remote object to be discard for Undo/Redo action.
void InvokeCommand(const char *name)
Convenience method equivalent to UpdateProperty(name, 1).
void AddSubProxy(const char *name, vtkSMProxy *proxy, int overrideOK=0)
Add a sub-proxy.
virtual void PrototypeOff()
Allow user to set the remote object to be discard for Undo/Redo action.
virtual void EnableLocalPushOnly()
Allow to switch off any push of state change to the server for that particular object.
virtual void LoadState(const vtkSMMessage *msg, vtkSMProxyLocator *locator)
This method is used to initialise the object to the given state If the definitionOnly Flag is set to ...
virtual vtkSMProperty * GetProperty(const char *name)
Return the property with the given name.
iterates over the properties of a proxy
bool WarnIfDeprecated()
If a proxy is deprecated, prints a warning.
int DoNotUpdateImmediately
vtkPVXMLElement * XMLElement
virtual void RemoveAllConsumers()
Remove all consumers.
vtkSMProxyInternals * Internals
vtkSMDocumentation * Documentation
bool PropertiesModified
Flag used to help speed up UpdateVTKObjects and ArePropertiesModified calls.
void RebuildStateForProperties()
vtkSMProxy tracks state of properties on this proxy in an internal State object.
void AddProducer(vtkSMProperty *property, vtkSMProxy *proxy)
Called by an proxy/input property to add property, proxy pair to the list of producers.
SIPROXY(vtkSMProxy *proxy)
Store messages for the interpreter.
vtkSMPropertyGroup * NewPropertyGroup(vtkPVXMLElement *propElement)
Parses the XML to create a new property group.
singleton/facade to vtkSMSessionProxyManager
virtual void PostUpdateData(bool using_cache)
This method is called after the algorithm(s) (if any) associated with this proxy execute.
void SetupExposedProperties(const char *subproxy_name, vtkPVXMLElement *element)
Read attributes from an XML element.
int InUpdateVTKObjects
Avoids calls to UpdateVTKObjects in UpdateVTKObjects.
superclass for all SM properties
bool UpdateProperty(const char *name)
Update the value of one property (pushed to the server) if it is modified.
proxy for a VTK object(s) on a server
vtkSMProperty * NewProperty(const char *name)
Creates a new property and initializes it by calling ReadXMLAttributes() with the right XML element.
virtual void ExecuteSubProxyEvent(vtkSMProxy *o, unsigned long event, void *data)
Handle events fired by subproxies.
virtual void SetLocation(vtkTypeUInt32)
Get/Set the location where the underlying VTK-objects are created.
This defines a stream manipulator for the vtkClientServerStream that can be used to indicate to the i...
void SetupSharedProperties(vtkSMProxy *subproxy, vtkPVXMLElement *element)
Read attributes from an XML element.
vtkSMProxyObserver * SubProxyObserver
void AppendPropertyGroup(vtkSMPropertyGroup *group)
Adds a property groups.
proxy for a VTK source on a server
class providing access to the documentation for a vtkSMProxy.
int ReadXMLAttributes(vtkSMSessionProxyManager *pm, vtkPVXMLElement *element) override
Read attributes from an XML element.
baseclass for all proxy-objects that have counter parts on server as well as client processes.
virtual void DisableLocalPushOnly()
Enable the given remote object to communicate its state normally to the server location.
bool GetPropertiesModified()
void SetHints(vtkPVXMLElement *hints)
void RemoveSubProxy(const char *name)
Remove a sub-proxy.
void SetXMLElement(vtkPVXMLElement *element)
void RemoveProducer(vtkSMProperty *property, vtkSMProxy *proxy)
Remove the property,proxy pair from the list of producers.
iterates over a subset of a proxy's properties
unsigned int GetNumberOfSubProxies()
Returns the number of sub-proxies.
friend class vtkSMProxyObserver
These classes have been declared as friends to minimize the public interface exposed by vtkSMProxy.
static vtkSMSessionObject * New()
Utility class to load state from XML.
a proxy excapsulation a pipeline of proxies.
virtual void RemoveConsumer(vtkSMProperty *property, vtkSMProxy *proxy)
Remove the property,proxy pair from the list of consumers.
virtual void SetPropertyModifiedFlag(const char *name, int flag)
Note on property modified flags: The modified flag of each property associated with a proxy is stored...
virtual int CreateSubProxiesAndProperties(vtkSMSessionProxyManager *pm, vtkPVXMLElement *element)
vtkPVXMLElement * Deprecated
Superclass for all view proxies.
char * SIClassName
SIClassName identifies the classname for the helper on the server side.
void PostUpdateDataSelfOnly(bool using_cache)
This is called by PostUpdateData to only update state for this proxy without iterative over producers...
VTKOBJECT(vtkSMProxy *proxy)
virtual void UpdatePipelineInformation()
This method simply iterates over subproxies and calls UpdatePipelineInformation() on them.
virtual void SetLogNameInternal(const char *name, bool propagate_to_subproxies, bool propagate_to_proxylistdomains)
Internal method used by SetLogName
is used to locate proxies referred to in state xmls while loading state files.
property representing pointer(s) to vtkObject(s)
Class used to retrieve a given message state based on its GlobalID.
void ExposeSubProxyProperty(const char *subproxy_name, const char *property_name, const char *exposed_name, int overrideOK=0)
Expose a subproxy property from the base proxy.
vtkSMProxy * GetSubProxy(const char *name)
Returns a sub-proxy.
virtual const vtkSMMessage * GetFullState()
This method return the full object state that can be used to create that object from scratch.
virtual void AddConsumer(vtkSMProperty *property, vtkSMProxy *proxy)
Called by a proxy property, this adds the property,proxy pair to the list of consumers.
void RemoveAllObservers()
deserializes proxies from their Protobuf states.
creates a link between two cameras.
void PrintSelf(ostream &os, vtkIndent indent) override
VTKREMOTINGSERVERMANAGER_EXPORT vtkClientServerStream & operator<<(vtkClientServerStream &stream, const VTKOBJECT &manipulator)
iterates over the properties of a proxy
const char * GetSubProxyName(unsigned int index)
Returns the name used to store sub-proxy.
virtual void SetPrototype(bool)
Allow user to set the remote object to be discard for Undo/Redo action.
void LinkProperty(vtkSMProperty *inputProperty, vtkSMProperty *outputProperty)
Links properties such that when inputProperty's checked or unchecked values are changed,...
void SetDeprecated(vtkPVXMLElement *deprecated)
virtual void UpdatePropertyInformationInternal(vtkSMProperty *prop=nullptr)
Called to update the property information on the property.
This defines a manipulator for the vtkClientServerStream that can be used to indicate to the interpre...
vtkWeakPointer< vtkSMProxy > ParentProxy
This defines a stream manipulator for the vtkClientServerStream that can be used to indicate to the i...