vtkSMProperty Class Reference
superclass for all SM properties
More...
#include <vtkSMProperty.h>
Inheritance diagram for vtkSMProperty:
[legend]Collaboration diagram for vtkSMProperty:
[legend]List of all members.
|
Public Member Functions |
| vtkTypeRevisionMacro (vtkSMProperty, vtkSMObject) |
void | PrintSelf (ostream &os, vtkIndent indent) |
vtkSMProperty * | GetSubProperty (const char *name) |
int | IsInDomains () |
virtual void | UnRegister (vtkObjectBase *obj) |
vtkSMDomainIterator * | NewDomainIterator () |
vtkSMDomain * | GetDomain (const char *name) |
unsigned int | GetNumberOfDomains () |
void | UpdateDependentDomains () |
void | AddDomain (const char *name, vtkSMDomain *dom) |
virtual void | Copy (vtkSMProperty *src) |
|
virtual void | SetCommand (const char *) |
virtual char * | GetCommand () |
|
virtual void | SetImmediateUpdate (int) |
virtual int | GetImmediateUpdate () |
|
virtual void | SetUpdateSelf (int) |
virtual int | GetUpdateSelf () |
|
virtual char * | GetXMLName () |
|
virtual int | GetInformationOnly () |
|
virtual vtkSMProperty * | GetInformationProperty () |
|
void | SetControllerProxy (vtkSMProxy *proxy) |
void | SetControllerProperty (vtkSMProperty *property) |
|
virtual void | SetAnimateable (int) |
virtual int | GetAnimateable () |
|
virtual void | SetSaveable (int) |
virtual int | GetSaveable () |
Static Public Member Functions |
vtkSMProperty * | New () |
|
int | GetCheckDomains () |
void | SetCheckDomains (int check) |
Protected Member Functions |
| vtkSMProperty () |
| ~vtkSMProperty () |
virtual void | UpdateAllInputs () |
void | AddSubProperty (const char *name, vtkSMProperty *proxy) |
void | RemoveSubProperty (const char *name) |
vtkSMProperty * | NewProperty (const char *name) |
void | AddDependent (vtkSMDomain *dom) |
void | RemoveAllDependents () |
virtual void | SaveState (const char *name, ostream *file, vtkIndent indent) |
void | SetInformationHelper (vtkSMInformationHelper *helper) |
void | SetProxy (vtkSMProxy *proxy) |
virtual void | SetInformationOnly (int) |
void | SetInformationProperty (vtkSMProperty *ip) |
|
virtual void | AppendCommandToStream (vtkSMProxy *, vtkClientServerStream *stream, vtkClientServerID objectId) |
|
virtual void | UpdateInformation (int serverids, vtkClientServerID objectId) |
|
virtual int | ReadXMLAttributes (vtkSMProxy *parent, vtkPVXMLElement *element) |
|
virtual void | SetXMLName (const char *) |
Protected Attributes |
char * | Command |
vtkSMPropertyInternals * | PInternals |
int | ImmediateUpdate |
int | UpdateSelf |
int | Animateable |
int | Saveable |
char * | XMLName |
vtkSMDomainIterator * | DomainIterator |
vtkSMProxy * | ControllerProxy |
vtkSMProperty * | ControllerProperty |
vtkSMProxy * | Proxy |
int | InformationOnly |
vtkSMInformationHelper * | InformationHelper |
vtkSMProperty * | InformationProperty |
Static Protected Attributes |
int | CheckDomains |
Friends |
class | vtkSMProxyManager |
class | vtkSMProxy |
class | vtkSMSubPropertyIterator |
class | vtkSMDomainIterator |
class | vtkSMSourceProxy |
class | vtkSMDomain |
Detailed Description
superclass for all SM properties
Each instance of vtkSMProperty or a sub-class represents a method and associated arguments (if any) of a a vtk object stored on one or more client manager or server nodes. It may have a state and can push this state to the vtk object it refers to. vtkSMPropery only supports methods with no arguments. Sub-classes support methods with different arguments types and numbers. A property can also be marked as an "information" property in which case it's values are obtained from the server with the UpdateInformation() call. This call is forwarded to an information helper. The type of the information helper used is specified in the XML file. Each property can have one or more sub-properties. The sub-properties can be accessed using an iterator. It is possible to create composite properties of any depth this way. Each property can have one or more domains. A domain represents a set of acceptable values the property can have. An Attempt to set a value outside the domain will fail. If more than one domain is specified, the actual domain is the intersection of all domains.
A property can be marked "animateable". "animateable" attribute can have value {0, 1, 2}. 0 :-- property is not animateable at all. 1 :-- property is shown as animateable on the key frame animation interface in the non-advanced mode. 2 :-- property is animateable but only shown in the advanced mode. Properties that are not vector properties or that don't have domain or that are information_only properties can never be animated irrespective of the "animateable" attribute's value. All vector properties (vtkSMIntVectorProperty, vtkSMDoubleVectorPropery, vtkSMStringVectorProperty, vtkSMIdTypeVectorProperty) by default have have animateable="2".
A property can be marked "saveable". "saveable" attribute can have value {0, 1}. 0 :-- property is not saveable. Hence, when saving ServerManager state or saving batch script, the property's value is not saved. 1 :-- property is saveable. Hence, it gets saved when saving SM state or batch script. An instance of vtkSMProperty is never savable. All other concrete subclasses are by default savable (i.e. vtkSMProxyProperty and subclasses and vtkSMVectorProperty subclasses).
- See also:
- vtkSMProxyProperty vtkSMInputProperty vtkSMVectorProperty vtkSMDoubleVectorPropery vtkSMIntVectorPropery vtkSMStringVectorProperty vtkSMDomain vtkSMInformationHelper
Definition at line 81 of file vtkSMProperty.h.
Constructor & Destructor Documentation
vtkSMProperty::vtkSMProperty |
( |
|
) |
[protected] |
|
Member Function Documentation
void vtkSMProperty::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
|
|
virtual void vtkSMProperty::SetCommand |
( |
const char * |
|
) |
[virtual] |
|
|
The command name used to set the value on the server object. For example: SetThetaResolution |
virtual char* vtkSMProperty::GetCommand |
( |
|
) |
[virtual] |
|
|
The command name used to set the value on the server object. For example: SetThetaResolution |
virtual void vtkSMProperty::SetImmediateUpdate |
( |
int |
|
) |
[virtual] |
|
|
If ImmediateUpdate is true, the value of the property will be pushed to the server as soon as it is modified. Properties that do not have values can be pushed by calling Modified(). |
virtual int vtkSMProperty::GetImmediateUpdate |
( |
|
) |
[virtual] |
|
|
If ImmediateUpdate is true, the value of the property will be pushed to the server as soon as it is modified. Properties that do not have values can be pushed by calling Modified(). |
virtual void vtkSMProperty::SetUpdateSelf |
( |
int |
|
) |
[virtual] |
|
|
Advanced. If UpdateSelf is true, the property will be pushed by calling the method (Command) on the proxy instead of the VTK object. This is commonly used to implement more complicated functionality than can be obtained by calling a method on all server objects. |
virtual int vtkSMProperty::GetUpdateSelf |
( |
|
) |
[virtual] |
|
|
Advanced. If UpdateSelf is true, the property will be pushed by calling the method (Command) on the proxy instead of the VTK object. This is commonly used to implement more complicated functionality than can be obtained by calling a method on all server objects. |
vtkSMProperty* vtkSMProperty::GetSubProperty |
( |
const char * |
name |
) |
|
|
|
Returns a sub-property with the given name. If the sub-property does not exist, NULL is returned. |
int vtkSMProperty::IsInDomains |
( |
|
) |
|
|
|
Returns true if all values are in all domains, false otherwise. The domains will check the unchecked values (SetUncheckedXXX()) instead of the actual values. |
virtual void vtkSMProperty::UnRegister |
( |
vtkObjectBase * |
obj |
) |
[virtual] |
|
|
Overloaded to break the reference loop caused by the internal domain iterator. |
|
Creates, initializes and returns a new domain iterator. The user has to delete the iterator. |
vtkSMDomain* vtkSMProperty::GetDomain |
( |
const char * |
name |
) |
|
|
|
Returns a domain give a name. |
unsigned int vtkSMProperty::GetNumberOfDomains |
( |
|
) |
|
|
|
Returns the number of domains this property has. This can be used to specify a valid index for GetDomain(index). |
void vtkSMProperty::UpdateDependentDomains |
( |
|
) |
|
|
|
Calls Update() on all domains contained by the property as well as all dependant domains. This is usually called after SetUncheckedXXX() to tell all dependant domains to update themselves according to the new value. Note that when calling Update() on domains contained by this property, a NULL is passed as the argument. This is because the domain does not really "depend" on the property. When calling Update() on dependent domains, the property passes itself as the argument. |
int vtkSMProperty::GetCheckDomains |
( |
|
) |
[static] |
|
|
Static boolean used to determine whether domain checking should be performed when setting values. On by default. |
void vtkSMProperty::SetCheckDomains |
( |
int |
check |
) |
[static] |
|
|
Static boolean used to determine whether domain checking should be performed when setting values. On by default. |
virtual char* vtkSMProperty::GetXMLName |
( |
|
) |
[virtual] |
|
|
The name assigned by the xml parser. Used to get the property from a proxy. |
virtual int vtkSMProperty::GetInformationOnly |
( |
|
) |
[virtual] |
|
|
Is InformationOnly is set to true, this property is used to get information from server instead of setting values. |
virtual vtkSMProperty* vtkSMProperty::GetInformationProperty |
( |
|
) |
[virtual] |
|
|
Get the associated information property. This allows applications to have access to both the in and out properties. The information property has to be specified in the xml configuration file. |
void vtkSMProperty::SetControllerProxy |
( |
vtkSMProxy * |
proxy |
) |
|
|
|
ControllerProxy is pointer to the proxy whose property (ControllerProperty) is mapped to the current property. This is useful for 3DWidgets. The properties of the implicit function proxy controlled by the 3DWidget will have these set to the corresponing property of the 3DWidget. Thus, providing hints about which implicit function property is controlled by which 3DWidget and what property. This goes mostly unnoticed in ParaView, but useful for ARL. If these are set, then they are saved in the XML during SaveState as a element <ControllerProperty name="propertyname" />. ARL notices such elements and creates a property value dependency among the controlee and the controller property. |
void vtkSMProperty::SetControllerProperty |
( |
vtkSMProperty * |
property |
) |
|
|
|
ControllerProxy is pointer to the proxy whose property (ControllerProperty) is mapped to the current property. This is useful for 3DWidgets. The properties of the implicit function proxy controlled by the 3DWidget will have these set to the corresponing property of the 3DWidget. Thus, providing hints about which implicit function property is controlled by which 3DWidget and what property. This goes mostly unnoticed in ParaView, but useful for ARL. If these are set, then they are saved in the XML during SaveState as a element <ControllerProperty name="propertyname" />. ARL notices such elements and creates a property value dependency among the controlee and the controller property. |
void vtkSMProperty::AddDomain |
( |
const char * |
name, |
|
|
vtkSMDomain * |
dom |
|
) |
|
|
|
Properties can have one or more domains. These are assigned by the proxy manager and can be used to obtain information other than given by the type of the propery and its values. |
virtual void vtkSMProperty::SetAnimateable |
( |
int |
|
) |
[virtual] |
|
|
Get/Set if the property is animateable. Non-animateable properties are shown in the GUI only in advanced mode. |
virtual int vtkSMProperty::GetAnimateable |
( |
|
) |
[virtual] |
|
|
Get/Set if the property is animateable. Non-animateable properties are shown in the GUI only in advanced mode. |
virtual void vtkSMProperty::SetSaveable |
( |
int |
|
) |
[virtual] |
|
|
Get/Set if the property is saveable. A non-saveable property should not be saved in state or batch script. |
virtual int vtkSMProperty::GetSaveable |
( |
|
) |
[virtual] |
|
|
Get/Set if the property is saveable. A non-saveable property should not be saved in state or batch script. |
virtual void vtkSMProperty::Copy |
( |
vtkSMProperty * |
src |
) |
[virtual] |
|
virtual void vtkSMProperty::AppendCommandToStream |
( |
vtkSMProxy * |
, |
|
|
vtkClientServerStream * |
stream, |
|
|
vtkClientServerID |
objectId |
|
) |
[protected, virtual] |
|
virtual void vtkSMProperty::UpdateInformation |
( |
int |
serverids, |
|
|
vtkClientServerID |
objectId |
|
) |
[protected, virtual] |
|
|
If this is an information property (InformationOnly is true), this method fills the vector with the values obtained from the server. This work is forwarded to the information helper. |
virtual void vtkSMProperty::UpdateAllInputs |
( |
|
) |
[inline, protected, virtual] |
|
virtual void vtkSMProperty::SetXMLName |
( |
const char * |
|
) |
[protected, virtual] |
|
|
The name assigned by the xml parser. Used to get the property from a proxy. |
void vtkSMProperty::AddSubProperty |
( |
const char * |
name, |
|
|
vtkSMProperty * |
proxy |
|
) |
[protected] |
|
|
Add a sub-property with the given name. |
void vtkSMProperty::RemoveSubProperty |
( |
const char * |
name |
) |
[protected] |
|
|
Remove the named sub-property. |
vtkSMProperty* vtkSMProperty::NewProperty |
( |
const char * |
name |
) |
[protected] |
|
|
Internal. Used during XML parsing to get a property with given name. Used by the domains when setting required properties. |
void vtkSMProperty::AddDependent |
( |
vtkSMDomain * |
dom |
) |
[protected] |
|
|
Internal. Used by the domains that require this property. They add themselves as dependents. |
void vtkSMProperty::RemoveAllDependents |
( |
|
) |
[protected] |
|
virtual void vtkSMProperty::SaveState |
( |
const char * |
name, |
|
|
ostream * |
file, |
|
|
vtkIndent |
indent |
|
) |
[protected, virtual] |
|
|
Set from the XML file, information helpers fill in the property values with information obtained from server. |
void vtkSMProperty::SetProxy |
( |
vtkSMProxy * |
proxy |
) |
[protected] |
|
virtual void vtkSMProperty::SetInformationOnly |
( |
int |
|
) |
[protected, virtual] |
|
void vtkSMProperty::SetInformationProperty |
( |
vtkSMProperty * |
ip |
) |
[protected] |
|
Friends And Related Function Documentation
Member Data Documentation
The documentation for this class was generated from the following file:
Generated on Tue May 30 12:41:57 2006 for ParaView by
1.3.5