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

list of arrays obtained from input More...

#include <vtkSMArrayListDomain.h>

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

List of all members.

Public Types

enum  InformationKeyStrategy { NEED_KEY, REJECT_KEY }

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void Update (vtkSMProperty *prop)
int IsArrayPartial (unsigned int idx)
int GetFieldAssociation (unsigned int idx)
int GetDomainAssociation (unsigned int idx)
virtual int SetDefaultValues (vtkSMProperty *)
unsigned int AddString (const char *string)
virtual int RemoveString (const char *string)
virtual void RemoveAllStrings ()
unsigned int RemoveInformationKey (const char *location, const char *name)
unsigned int GetNumberOfInformationKeys ()
void RemoveAllInformationKeys ()
int CheckInformationKeys (vtkPVArrayInformation *arrayInfo)
virtual unsigned int GetDefaultElement ()
virtual int GetAttributeType ()
virtual unsigned int AddInformationKey (const char *location, const char *name, int strategy)
virtual unsigned int AddInformationKey (const char *location, const char *name)
const char * GetInformationKeyLocation (unsigned int)
const char * GetInformationKeyName (unsigned int)
int GetInformationKeyStrategy (unsigned int)

Static Public Member Functions

static vtkSMArrayListDomainNew ()
static int IsTypeOf (const char *type)
static vtkSMArrayListDomainSafeDownCast (vtkObject *o)
static vtkStdString CreateMangledName (vtkPVArrayInformation *arrayInfo, int component)
static vtkStdString ArrayNameFromMangledName (const char *name)
static int ComponentIndexFromMangledName (vtkPVArrayInformation *info, const char *name)

Protected Member Functions

 vtkSMArrayListDomain ()
 ~vtkSMArrayListDomain ()
virtual int ReadXMLAttributes (vtkSMProperty *prop, vtkPVXMLElement *element)
void Update (vtkSMSourceProxy *sp, vtkSMInputArrayDomain *iad, int outputport)
void Update (vtkSMProxyProperty *pp, vtkSMSourceProxy *sp, int outputport)
void Update (vtkSMProxyProperty *pp)
virtual void SetDefaultElement (unsigned int)
virtual void SetNoneString (const char *)
virtual char * GetNoneString ()
void AddArrays (vtkSMSourceProxy *sp, int outputport, vtkPVDataSetAttributesInformation *info, vtkSMInputArrayDomain *iad, int association, int domainAssociation=-1)
unsigned int AddArray (vtkPVArrayInformation *arrayinfo, int association, int domainAssociation, vtkSMInputArrayDomain *iad)
virtual void SetAttributeType (int)
virtual char * GetInputDomainName ()
virtual void SetInputDomainName (const char *)

Protected Attributes

int AttributeType
int Attribute
int Association
unsigned int DefaultElement
char * InputDomainName
char * NoneString

Detailed Description

list of arrays obtained from input

vtkSMArrayListDomain represents a domain consisting of array names obtained from an input. vtkSMArrayListDomain requires a property of class vtkSMProxyProperty which points to a vtkSMSourceProxy and contains a vtkSMInputArrayDomain. Only the first proxy and domain are used. Valid XML attributes are:

 * attribute_type - one of:
    - scalars
    - vectors
    - normals
    - tcoords
    - tensors
 * data_type - one or more of:
    - VTK_BIT, VTK_CHAR, VTK_INT, VTK_FLOAT, VTK_DOUBLE,... etc etc or the equivalent integers
      from vtkType.h
    - VTK_VOID, and 0 are equivalent to not specifying, meaning any data type
      is allowed
 * none_string - when specified, this string appears as the first entry in
      the list and can be used to show "None", or "Not available" etc.
 * key_location / key_name / key_strategy:
      those tree attributes are related to InformationKey of the array.
      key_location/key_name are the location and name of the given InformationKey
      key_strategy specifies if this specific key is needed to be in the domain
      or if this key is rejected. One of need_key or reject_key.
      if nothing is specified, the default is to add a vtkAbstractArray::GUI_HIDE
      key, with the reject_key strategy, so that arrays that have this InformationKey
      are not visible in the user interface.
 

Additionally, vtkSMArrayListDomain support 'default_values' attribute which specifies a string (only 1 string value is supported). When SetDefaultValues() is called, if the array name specified as 'default_values' is present in the domain, then that will be used, otherwise, it simply uses the first available array (which is default).

Additionally, vtkSMArrayListDomain takes an option required property with function "FieldDataSelection" which can be a vtkSMIntVectorProperty with a single value. If preset, this property's value is used to determine what type of field-data i.e. point-data, cell-data etc. is currently available.

See also:
vtkSMDomain vtkSMProxyProperty vtkSMInputArrayDomain

Definition at line 77 of file vtkSMArrayListDomain.h.


Member Enumeration Documentation

Enumerator:
NEED_KEY 
REJECT_KEY 

Definition at line 139 of file vtkSMArrayListDomain.h.


Constructor & Destructor Documentation

vtkSMArrayListDomain::vtkSMArrayListDomain ( ) [protected]
vtkSMArrayListDomain::~vtkSMArrayListDomain ( ) [protected]

Member Function Documentation

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

Reimplemented from vtkSMStringListDomain.

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

Reimplemented from vtkSMStringListDomain.

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

Reimplemented from vtkSMStringListDomain.

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

Reimplemented from vtkSMStringListDomain.

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

Reimplemented from vtkSMStringListDomain.

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

Reimplemented from vtkSMStringListDomain.

virtual void vtkSMArrayListDomain::Update ( vtkSMProperty prop) [virtual]

Updates the string list based on the available arrays. Requires a property of class vtkSMProxyProperty which points to a vtkSMSourceProxy and contains a vtkSMInputArrayDomain. Only the first proxy and domain are used.

Reimplemented from vtkSMStringListDomain.

virtual unsigned int vtkSMArrayListDomain::GetDefaultElement ( ) [virtual]

The DefaultElement is set during Update() using the "active attribute" of the assigned AttributeType. For example, if the AttributeType is set to SCALARS, DefaultElement is set to the index of the array that is the active scalars in the dataset.

int vtkSMArrayListDomain::IsArrayPartial ( unsigned int  idx)

Returns true if the array with the given idx is partial false otherwise. See vtkPVArrayInformation for more information.

int vtkSMArrayListDomain::GetFieldAssociation ( unsigned int  idx)

Get field association for the array.

int vtkSMArrayListDomain::GetDomainAssociation ( unsigned int  idx)

Get desired association of the current domain

virtual int vtkSMArrayListDomain::GetAttributeType ( ) [virtual]

Return the attribute type. The values are listed in vtkDataSetAttributes.h.

virtual int vtkSMArrayListDomain::SetDefaultValues ( vtkSMProperty ) [virtual]

A vtkSMProperty is often defined with a default value in the XML itself. However, many times, the default value must be determined at run time. To facilitate this, domains can override this method to compute and set the default value for the property. Note that unlike the compile-time default values, the application must explicitly call this method to initialize the property. Returns 1 if the domain updated the property.

Reimplemented from vtkSMStringListDomain.

unsigned int vtkSMArrayListDomain::AddString ( const char *  string)

Adds a new string to the domain.

Reimplemented from vtkSMStringListDomain.

virtual int vtkSMArrayListDomain::RemoveString ( const char *  string) [virtual]

Removes a string from the domain.

Reimplemented from vtkSMStringListDomain.

virtual void vtkSMArrayListDomain::RemoveAllStrings ( ) [virtual]

Removes all strings from the domain.

Reimplemented from vtkSMStringListDomain.

virtual unsigned int vtkSMArrayListDomain::AddInformationKey ( const char *  location,
const char *  name,
int  strategy 
) [virtual]

Adds a new InformationKey to the domain. The default strategy is NEED_KEY if none is specified. If no InformationKey is specified in the xml, the default behavior is to create a rejected key vtkAbstractArray::GUI_HIDE

virtual unsigned int vtkSMArrayListDomain::AddInformationKey ( const char *  location,
const char *  name 
) [inline, virtual]

Adds a new InformationKey to the domain. The default strategy is NEED_KEY if none is specified. If no InformationKey is specified in the xml, the default behavior is to create a rejected key vtkAbstractArray::GUI_HIDE

Definition at line 152 of file vtkSMArrayListDomain.h.

unsigned int vtkSMArrayListDomain::RemoveInformationKey ( const char *  location,
const char *  name 
)

Removes an InformationKey from this domain.

unsigned int vtkSMArrayListDomain::GetNumberOfInformationKeys ( )

Returns the number of InformationKeys in this domain.

void vtkSMArrayListDomain::RemoveAllInformationKeys ( )

Removes all InformationKeys from this domain.

const char* vtkSMArrayListDomain::GetInformationKeyLocation ( unsigned  int)

Returns the location/name/strategy of a given InformationKey

const char* vtkSMArrayListDomain::GetInformationKeyName ( unsigned  int)

Returns the location/name/strategy of a given InformationKey

int vtkSMArrayListDomain::GetInformationKeyStrategy ( unsigned  int)

Returns the location/name/strategy of a given InformationKey

int vtkSMArrayListDomain::CheckInformationKeys ( vtkPVArrayInformation arrayInfo)

return 1 if the InformationKeys of this vtkPVArrayInformation fullfill the requirements of the InformationKey in this Domain. returns 0 on failure.

static vtkStdString vtkSMArrayListDomain::CreateMangledName ( vtkPVArrayInformation arrayInfo,
int  component 
) [static]

returns the mangled name for the component index that is passed in.

static vtkStdString vtkSMArrayListDomain::ArrayNameFromMangledName ( const char *  name) [static]

returns the mangled name for the component index that is passed in.

static int vtkSMArrayListDomain::ComponentIndexFromMangledName ( vtkPVArrayInformation info,
const char *  name 
) [static]

returns the mangled name for the component index that is passed in.

virtual int vtkSMArrayListDomain::ReadXMLAttributes ( vtkSMProperty prop,
vtkPVXMLElement element 
) [protected, virtual]

Set the appropriate ivars from the xml element. Should be overwritten by subclass if adding ivars.

Reimplemented from vtkSMStringListDomain.

void vtkSMArrayListDomain::AddArrays ( vtkSMSourceProxy sp,
int  outputport,
vtkPVDataSetAttributesInformation info,
vtkSMInputArrayDomain iad,
int  association,
int  domainAssociation = -1 
) [protected]

Utility functions called by Update()

unsigned int vtkSMArrayListDomain::AddArray ( vtkPVArrayInformation arrayinfo,
int  association,
int  domainAssociation,
vtkSMInputArrayDomain iad 
) [protected]

Adds a new array to the domain. This internally calls add string. If the iad tells us that the number of components required==1 and the array has more than 1 component and vtkSMInputArrayDomain::GetAutomaticPropertyConversion() is true, then the array is spilt into individual component and added (with name mangled using the component names). Returns the index for the array. If the array was split into components, then returns the index of the string for the array magnitude.

void vtkSMArrayListDomain::Update ( vtkSMSourceProxy sp,
vtkSMInputArrayDomain iad,
int  outputport 
) [protected]
void vtkSMArrayListDomain::Update ( vtkSMProxyProperty pp,
vtkSMSourceProxy sp,
int  outputport 
) [protected]
void vtkSMArrayListDomain::Update ( vtkSMProxyProperty pp) [protected]
virtual void vtkSMArrayListDomain::SetAttributeType ( int  ) [protected, virtual]

Set to an attribute type defined in vtkDataSetAttributes.

virtual void vtkSMArrayListDomain::SetDefaultElement ( unsigned  int) [protected, virtual]
virtual char* vtkSMArrayListDomain::GetInputDomainName ( ) [protected, virtual]

InputDomainName refers to a input property domain that describes the type of array is needed by this property.

virtual void vtkSMArrayListDomain::SetInputDomainName ( const char *  ) [protected, virtual]

InputDomainName refers to a input property domain that describes the type of array is needed by this property.

virtual void vtkSMArrayListDomain::SetNoneString ( const char *  ) [protected, virtual]
virtual char* vtkSMArrayListDomain::GetNoneString ( ) [protected, virtual]

Member Data Documentation

Definition at line 230 of file vtkSMArrayListDomain.h.

Definition at line 233 of file vtkSMArrayListDomain.h.

Definition at line 234 of file vtkSMArrayListDomain.h.

Definition at line 235 of file vtkSMArrayListDomain.h.

Definition at line 245 of file vtkSMArrayListDomain.h.

Definition at line 248 of file vtkSMArrayListDomain.h.


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