Public Member Functions | Protected Member Functions | Protected Attributes

vtkKWEObjectTreePropertyBase Class Reference

Base class for ObjectTree Properties. More...

#include <vtkKWEObjectTreePropertyBase.h>

Inheritance diagram for vtkKWEObjectTreePropertyBase:
Inheritance graph
[legend]
Collaboration diagram for vtkKWEObjectTreePropertyBase:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 vtkTypeRevisionMacro (vtkKWEObjectTreePropertyBase, vtkKWESerializableObject)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void Serialize (vtkKWESerializer *ser)
virtual void Modified ()
virtual
vtkInformationObjectBaseKey
GetKey ()=0
int GetNumberOfAttributes ()
void UnsetIsInheritable ()

virtual bool IsEqualTo (vtkKWEObjectTreePropertyBase *testProperty, bool canBeSuperset=false)

Protected Member Functions

 vtkKWEObjectTreePropertyBase ()
virtual ~vtkKWEObjectTreePropertyBase ()

Protected Attributes

vtkInformationAttributes



vtkKWEObjectTreePropertyBaseReferencingNodes * ReferencingNodes
class vtkKWEObjectTreeNodeBase
void AddReferencingNode (vtkKWEObjectTreeNodeBase *node)
void RemoveReferencingNode (vtkKWEObjectTreeNodeBase *node)



void IsInheritableOn ()
void IsInheritableOff ()
bool IsInheritable ()
bool GetIsInheritable ()
void SetIsInheritable (bool isInheritable)
static vtkInformationIntegerKeyIS_INHERITABLE ()

Detailed Description

Base class for ObjectTree Properties.

vtkKWEObjectTreePropertyBase is the base class for Properties to be added to ObjectTree nodes, providing a container for the Properties "Attributes", a container for nodes that reference this object (so the nodes can be nodified when the property changes) and a general GetKey() method to retrieve a concrete subclass's KEY(). The Modified() method updates the TreeMTime of all referencing nodes and thus should be called by subclasses whenever changes are made to values.

As a subclass of vtkKWESerializableObject, the Attributes are easily serialized. Furthermore, the subclass does not need to worry about serialization.

Properties of a node can be inherited by decendants unless the Property is set to NOT be inheritable (IsInheritableOff()).

Definition at line 54 of file vtkKWEObjectTreePropertyBase.h.


Constructor & Destructor Documentation

vtkKWEObjectTreePropertyBase::vtkKWEObjectTreePropertyBase (  )  [protected]
virtual vtkKWEObjectTreePropertyBase::~vtkKWEObjectTreePropertyBase (  )  [protected, virtual]

Member Function Documentation

vtkKWEObjectTreePropertyBase::vtkTypeRevisionMacro ( vtkKWEObjectTreePropertyBase  ,
vtkKWESerializableObject   
)
void vtkKWEObjectTreePropertyBase::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Reimplemented from vtkObject.

Reimplemented in vtkKWEObjectTreeColorProperty, and vtkKWEObjectTreeUserProperty.

virtual void vtkKWEObjectTreePropertyBase::Serialize ( vtkKWESerializer ser  )  [virtual]

Reads the state of an instance from an archive OR writes the state of an instance to an archive.

Reimplemented from vtkKWESerializableObject.

virtual void vtkKWEObjectTreePropertyBase::Modified (  )  [virtual]

When we get modified, update the TreeModifiedTime of nodes that reference us. Note, subclasses needed to call this after making changes to the Attributes object.

Reimplemented from vtkObject.

virtual vtkInformationObjectBaseKey* vtkKWEObjectTreePropertyBase::GetKey (  )  [pure virtual]

Retrieve the KEY from a concrete subclass

Implemented in vtkKWEObjectTreeColorProperty, and vtkKWEObjectTreeUserProperty.

virtual bool vtkKWEObjectTreePropertyBase::IsEqualTo ( vtkKWEObjectTreePropertyBase testProperty,
bool  canBeSuperset = false 
) [virtual]

Is "this" the same as testProperty (same Attributes)? If canBeSuperset == true, then can be considered equal if the only difference is that "this" has additional attributes.

int vtkKWEObjectTreePropertyBase::GetNumberOfAttributes (  ) 

Return the number of attributes that have been set for this Property.

static vtkInformationIntegerKey* vtkKWEObjectTreePropertyBase::IS_INHERITABLE (  )  [static]

Set/Get whether this Property is inherited by it's descendants. By default it is set to be "true". Also, if unset, it will return true. However, if two properties are otherwise equal, they will NOT be considered to be equal if one Property (A) has the value set to true while the other Property (B) doesn't have the value set... unless, A->IsEqualTo(B, true)... A can be a superset of B. This is actually why unsetting of the value is allowed, so that the value can be unset in a PatternNode given to the iterator: the iteration result will then not depend on this value.

void vtkKWEObjectTreePropertyBase::IsInheritableOn (  )  [inline]

Set/Get whether this Property is inherited by it's descendants. By default it is set to be "true". Also, if unset, it will return true. However, if two properties are otherwise equal, they will NOT be considered to be equal if one Property (A) has the value set to true while the other Property (B) doesn't have the value set... unless, A->IsEqualTo(B, true)... A can be a superset of B. This is actually why unsetting of the value is allowed, so that the value can be unset in a PatternNode given to the iterator: the iteration result will then not depend on this value.

Definition at line 94 of file vtkKWEObjectTreePropertyBase.h.

void vtkKWEObjectTreePropertyBase::IsInheritableOff (  )  [inline]

Set/Get whether this Property is inherited by it's descendants. By default it is set to be "true". Also, if unset, it will return true. However, if two properties are otherwise equal, they will NOT be considered to be equal if one Property (A) has the value set to true while the other Property (B) doesn't have the value set... unless, A->IsEqualTo(B, true)... A can be a superset of B. This is actually why unsetting of the value is allowed, so that the value can be unset in a PatternNode given to the iterator: the iteration result will then not depend on this value.

Definition at line 96 of file vtkKWEObjectTreePropertyBase.h.

bool vtkKWEObjectTreePropertyBase::IsInheritable (  )  [inline]

Set/Get whether this Property is inherited by it's descendants. By default it is set to be "true". Also, if unset, it will return true. However, if two properties are otherwise equal, they will NOT be considered to be equal if one Property (A) has the value set to true while the other Property (B) doesn't have the value set... unless, A->IsEqualTo(B, true)... A can be a superset of B. This is actually why unsetting of the value is allowed, so that the value can be unset in a PatternNode given to the iterator: the iteration result will then not depend on this value.

Definition at line 98 of file vtkKWEObjectTreePropertyBase.h.

bool vtkKWEObjectTreePropertyBase::GetIsInheritable (  ) 

Set/Get whether this Property is inherited by it's descendants. By default it is set to be "true". Also, if unset, it will return true. However, if two properties are otherwise equal, they will NOT be considered to be equal if one Property (A) has the value set to true while the other Property (B) doesn't have the value set... unless, A->IsEqualTo(B, true)... A can be a superset of B. This is actually why unsetting of the value is allowed, so that the value can be unset in a PatternNode given to the iterator: the iteration result will then not depend on this value.

void vtkKWEObjectTreePropertyBase::SetIsInheritable ( bool  isInheritable  ) 

Set/Get whether this Property is inherited by it's descendants. By default it is set to be "true". Also, if unset, it will return true. However, if two properties are otherwise equal, they will NOT be considered to be equal if one Property (A) has the value set to true while the other Property (B) doesn't have the value set... unless, A->IsEqualTo(B, true)... A can be a superset of B. This is actually why unsetting of the value is allowed, so that the value can be unset in a PatternNode given to the iterator: the iteration result will then not depend on this value.

void vtkKWEObjectTreePropertyBase::UnsetIsInheritable (  ) 

Unset the IS_INHERITABLE() key. Note, GetIsInheritable() will return true if it is Unset. If the key is Unset, a PatternNode of an iterator can be used to iterate over nodes comparing/filtering based on a property without the result depending on whether the Property IsHeritable or not.

void vtkKWEObjectTreePropertyBase::AddReferencingNode ( vtkKWEObjectTreeNodeBase node  )  [protected]

Add/Remove from our set of nodes that use the Property object.

void vtkKWEObjectTreePropertyBase::RemoveReferencingNode ( vtkKWEObjectTreeNodeBase node  )  [protected]

Add/Remove from our set of nodes that use the Property object.


Friends And Related Function Documentation

friend class vtkKWEObjectTreeNodeBase [friend]

Add/Remove from our set of nodes that use the Property object.

Definition at line 120 of file vtkKWEObjectTreePropertyBase.h.


Member Data Documentation

The main object that object attributes("properties") are stored in

Definition at line 116 of file vtkKWEObjectTreePropertyBase.h.

vtkKWEObjectTreePropertyBaseReferencingNodes* vtkKWEObjectTreePropertyBase::ReferencingNodes [protected]

Add/Remove from our set of nodes that use the Property object.

Definition at line 123 of file vtkKWEObjectTreePropertyBase.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines