ParaView
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkSMSILModel Class Reference

is a helper for to work with SILs. More...

#include <vtkSMSILModel.h>

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

List of all members.

Public Types

enum  CheckState { UNCHECKED = 0, PARTIAL = 1, CHECKED = 2 }

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
int GetNumberOfChildren (vtkIdType vertexid)
vtkIdType GetChildVertex (vtkIdType parentid, int child_index)
vtkIdType GetParentVertex (vtkIdType parent)
const char * GetName (vtkIdType vertex)
int GetCheckStatus (vtkIdType vertex)
void UpdatePropertyValue (vtkSMStringVectorProperty *)
void UpdateStateFromProperty (vtkSMStringVectorProperty *)
vtkIdType FindVertex (const char *name)
void GetLeaves (std::set< vtkIdType > &leaves, vtkIdType root, bool traverse_cross_edges)
void Initialize (vtkGraph *sil)
virtual vtkGraphGetSIL ()
void Initialize (vtkSMProxy *, vtkSMStringVectorProperty *)
virtual vtkSMProxyGetProxy ()
virtual vtkSMStringVectorPropertyGetProperty ()
bool SetCheckState (vtkIdType vertex, int status)
bool SetCheckState (const char *name, int status)
void CheckAll ()
void UncheckAll ()

Static Public Member Functions

static vtkSMSILModelNew ()
static int IsTypeOf (const char *type)
static vtkSMSILModelSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkSMSILModel ()
virtual ~vtkSMSILModel ()
void UpdateProperty ()
void OnPropertyModified ()
void OnDomainModified ()
void Check (vtkIdType vertexid, bool checked, vtkIdType inedgeid=-1)
 Called to check/uncheck an item.
void UpdateCheck (vtkIdType vertexid)
 Determine vertexid's check state using its immediate children.
void SetSIL (vtkGraph *)

Protected Attributes

bool BlockUpdate
vtkSMProxyProxy
vtkSMStringVectorPropertyProperty
vtkGraphSIL
vtkCommandPropertyObserver
vtkCommandDomainObserver

Detailed Description

is a helper for to work with SILs.

vtkSMSILModel makes it easier to make checks/unchecks for the SIL while respecting the links/dependencies defined by the SIL.

There are two ways of initializing the model:

Events:
  • vtkCommand::UpdateDataEvent -- fired when the check state of any element changes. calldata = vertexid for the element whose check state changed.

Definition at line 45 of file vtkSMSILModel.h.


Member Enumeration Documentation

Enumerator:
UNCHECKED 
PARTIAL 
CHECKED 

Definition at line 53 of file vtkSMSILModel.h.


Constructor & Destructor Documentation

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

Member Function Documentation

static vtkSMSILModel* vtkSMSILModel::New ( ) [static]

Reimplemented from vtkSMObject.

virtual const char* vtkSMSILModel::GetClassName ( ) [virtual]

Reimplemented from vtkSMObject.

static int vtkSMSILModel::IsTypeOf ( const char *  type) [static]

Reimplemented from vtkSMObject.

virtual int vtkSMSILModel::IsA ( const char *  type) [virtual]

Reimplemented from vtkSMObject.

static vtkSMSILModel* vtkSMSILModel::SafeDownCast ( vtkObject o) [static]

Reimplemented from vtkSMObject.

void vtkSMSILModel::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Reimplemented from vtkSMObject.

void vtkSMSILModel::Initialize ( vtkGraph sil)

Initialize the model using a SIL. There are two ways of initializing the model:

  • One way is to initialize it with a SIL (using Initialize(vtkGraph*). Then the model can be used as a simple API to check/uncheck elements.
  • Second way is to initialize with a proxy and property (using Initialize(vtkSMProxy, vtkSMProperty*). In that case, the SIL is obtained from the property's vtkSMSILDomain. Also as the user changes the check states, the property is updated/pushed.
virtual vtkGraph* vtkSMSILModel::GetSIL ( ) [virtual]

Initialize the model using a SIL. There are two ways of initializing the model:

  • One way is to initialize it with a SIL (using Initialize(vtkGraph*). Then the model can be used as a simple API to check/uncheck elements.
  • Second way is to initialize with a proxy and property (using Initialize(vtkSMProxy, vtkSMProperty*). In that case, the SIL is obtained from the property's vtkSMSILDomain. Also as the user changes the check states, the property is updated/pushed.
void vtkSMSILModel::Initialize ( vtkSMProxy ,
vtkSMStringVectorProperty  
)

Initialize the model using a proxy and its property. If a property is set, then the model keeps the property updated when the check states are changed or when the property changes, the model's internal check states are updated. If the property has a SILDomain, then the model attaches itself to the domain so that whenever the domains is updated (i.e. a new SIL is obtained from the server) the model updates the sil as well. There are two ways of initializing the model:

  • One way is to initialize it with a SIL (using Initialize(vtkGraph*). Then the model can be used as a simple API to check/uncheck elements.
  • Second way is to initialize with a proxy and property (using Initialize(vtkSMProxy, vtkSMProperty*). In that case, the SIL is obtained from the property's vtkSMSILDomain. Also as the user changes the check states, the property is updated/pushed.
virtual vtkSMProxy* vtkSMSILModel::GetProxy ( ) [virtual]

Initialize the model using a proxy and its property. If a property is set, then the model keeps the property updated when the check states are changed or when the property changes, the model's internal check states are updated. If the property has a SILDomain, then the model attaches itself to the domain so that whenever the domains is updated (i.e. a new SIL is obtained from the server) the model updates the sil as well. There are two ways of initializing the model:

  • One way is to initialize it with a SIL (using Initialize(vtkGraph*). Then the model can be used as a simple API to check/uncheck elements.
  • Second way is to initialize with a proxy and property (using Initialize(vtkSMProxy, vtkSMProperty*). In that case, the SIL is obtained from the property's vtkSMSILDomain. Also as the user changes the check states, the property is updated/pushed.
virtual vtkSMStringVectorProperty* vtkSMSILModel::GetProperty ( ) [virtual]

Initialize the model using a proxy and its property. If a property is set, then the model keeps the property updated when the check states are changed or when the property changes, the model's internal check states are updated. If the property has a SILDomain, then the model attaches itself to the domain so that whenever the domains is updated (i.e. a new SIL is obtained from the server) the model updates the sil as well. There are two ways of initializing the model:

  • One way is to initialize it with a SIL (using Initialize(vtkGraph*). Then the model can be used as a simple API to check/uncheck elements.
  • Second way is to initialize with a proxy and property (using Initialize(vtkSMProxy, vtkSMProperty*). In that case, the SIL is obtained from the property's vtkSMSILDomain. Also as the user changes the check states, the property is updated/pushed.
int vtkSMSILModel::GetNumberOfChildren ( vtkIdType  vertexid)

Returns the number of children for the given vertex. A node is a child node if it has no out-going edges or all out-going edges have "CrossEdges" set to 1. If vertex id is invalid, returns -1.

vtkIdType vtkSMSILModel::GetChildVertex ( vtkIdType  parentid,
int  child_index 
)

Returns the vertex id for the n-th child where n=child_index. Returns 0 if request is invalid.

vtkIdType vtkSMSILModel::GetParentVertex ( vtkIdType  parent)

Returns the parent vertex i.e. the vertex at the end of an in-edge which is not a cross-edge. It's an error to call this method for the root vertex id i.e. 0.

const char* vtkSMSILModel::GetName ( vtkIdType  vertex)

Get the name for the vertex.

int vtkSMSILModel::GetCheckStatus ( vtkIdType  vertex)

Get the check state for a vertex.

bool vtkSMSILModel::SetCheckState ( vtkIdType  vertex,
int  status 
)

Set the check state for a vertex. Returns true if the status was changed, false if unaffected.

bool vtkSMSILModel::SetCheckState ( const char *  name,
int  status 
) [inline]

Set the check state for a vertex. Returns true if the status was changed, false if unaffected.

Definition at line 116 of file vtkSMSILModel.h.

void vtkSMSILModel::CheckAll ( )

Convenience methods to check/uncheck all items.

void vtkSMSILModel::UncheckAll ( )

Convenience methods to check/uncheck all items.

void vtkSMSILModel::UpdatePropertyValue ( vtkSMStringVectorProperty )

Updates the property using the check states maintained by the model.

void vtkSMSILModel::UpdateStateFromProperty ( vtkSMStringVectorProperty )

Updates the check states maintained internally by the model using the status from the property.

vtkIdType vtkSMSILModel::FindVertex ( const char *  name)

Locate a vertex with the given name. Returns -1 if the vertex is not found.

void vtkSMSILModel::GetLeaves ( std::set< vtkIdType > &  leaves,
vtkIdType  root,
bool  traverse_cross_edges 
)
void vtkSMSILModel::UpdateProperty ( ) [protected]
void vtkSMSILModel::OnPropertyModified ( ) [protected]
void vtkSMSILModel::OnDomainModified ( ) [protected]
void vtkSMSILModel::Check ( vtkIdType  vertexid,
bool  checked,
vtkIdType  inedgeid = -1 
) [protected]

Called to check/uncheck an item.

void vtkSMSILModel::UpdateCheck ( vtkIdType  vertexid) [protected]

Determine vertexid's check state using its immediate children.

If the check-state for the vertex has changed, then it propagates the call to the parent node.

void vtkSMSILModel::SetSIL ( vtkGraph ) [protected]

Member Data Documentation

bool vtkSMSILModel::BlockUpdate [protected]

Definition at line 164 of file vtkSMSILModel.h.

Definition at line 168 of file vtkSMSILModel.h.

Definition at line 169 of file vtkSMSILModel.h.

Definition at line 170 of file vtkSMSILModel.h.

Definition at line 171 of file vtkSMSILModel.h.

Definition at line 172 of file vtkSMSILModel.h.


The documentation for this class was generated from the following file: