VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
vtkAnnotationLink Class Reference

An algorithm for linking annotations among objects. More...

#include <vtkAnnotationLink.h>

Inherits vtkAnnotationLayersAlgorithm.

Public Types

typedef
vtkAnnotationLayersAlgorithm 
Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkAnnotationLinkNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual unsigned long GetMTime ()
 
virtual vtkAnnotationLayers * GetAnnotationLayers ()
 
virtual void SetAnnotationLayers (vtkAnnotationLayers *layers)
 
virtual void SetCurrentSelection (vtkSelection *sel)
 
virtual vtkSelection * GetCurrentSelection ()
 
void AddDomainMap (vtkTable *map)
 
void RemoveDomainMap (vtkTable *map)
 
void RemoveAllDomainMaps ()
 
int GetNumberOfDomainMaps ()
 
vtkTable * GetDomainMap (int i)
 

Static Public Member Functions

static vtkAnnotationLinkNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAnnotationLinkSafeDownCast (vtkObjectBase *o)
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkAnnotationLink ()
 
 ~vtkAnnotationLink ()
 
virtual int FillInputPortInformation (int, vtkInformation *)
 
virtual int FillOutputPortInformation (int, vtkInformation *)
 
virtual void ProcessEvents (vtkObject *caller, unsigned long eventId, void *callData)
 
void ShallowCopyToOutput (vtkAnnotationLayers *input, vtkAnnotationLayers *output, vtkSelection *sel)
 
virtual int RequestData (vtkInformation *info, vtkInformationVector **inVector, vtkInformationVector *outVector)
 

Protected Attributes

vtkAnnotationLayers * AnnotationLayers
 
vtkDataObjectCollection * DomainMaps
 

Friends

class Command
 

Detailed Description

An algorithm for linking annotations among objects.

vtkAnnotationLink is a simple source filter which outputs the vtkAnnotationLayers object stored internally. Multiple objects may share the same annotation link filter and connect it to an internal pipeline so that if one object changes the annotation set, it will be pulled into all the other objects when their pipelines update.

The shared vtkAnnotationLayers object (a collection of annotations) is shallow copied to output port 0.

vtkAnnotationLink can also store a set of domain maps. A domain map is simply a table associating values between domains. The domain of each column is defined by the array name of the column. The domain maps are sent to a multi-block dataset in output port 1.

Output ports 0 and 1 can be set as input ports 0 and 1 to vtkConvertSelectionDomain, which can use the domain maps to convert the domains of selections in the vtkAnnotationLayers to match a particular data object (set as port 2 on vtkConvertSelectionDomain).

The shared vtkAnnotationLayers object also stores a "current selection" normally interpreted as the interactive selection of an application. As a convenience, this selection is sent to output port 2 so that it can be connected to pipelines requiring a vtkSelection.

Events:
vtkCommand::AnnotationChangedEvent
Examples:
vtkAnnotationLink (Examples)
Tests:
vtkAnnotationLink (Tests)

Definition at line 65 of file vtkAnnotationLink.h.

Member Typedef Documentation

typedef vtkAnnotationLayersAlgorithm vtkAnnotationLink::Superclass

Definition at line 69 of file vtkAnnotationLink.h.

Constructor & Destructor Documentation

vtkAnnotationLink::vtkAnnotationLink ( )
protected
vtkAnnotationLink::~vtkAnnotationLink ( )
protected

Member Function Documentation

static vtkAnnotationLink* vtkAnnotationLink::New ( )
static
static int vtkAnnotationLink::IsTypeOf ( const char *  type)
static
virtual int vtkAnnotationLink::IsA ( const char *  type)
virtual
static vtkAnnotationLink* vtkAnnotationLink::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkAnnotationLink::NewInstanceInternal ( ) const
protectedvirtual
vtkAnnotationLink* vtkAnnotationLink::NewInstance ( ) const
void vtkAnnotationLink::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual vtkAnnotationLayers* vtkAnnotationLink::GetAnnotationLayers ( )
virtual

The annotations to be shared.

virtual void vtkAnnotationLink::SetAnnotationLayers ( vtkAnnotationLayers *  layers)
virtual

The annotations to be shared.

virtual void vtkAnnotationLink::SetCurrentSelection ( vtkSelection *  sel)
virtual

Set or get the current selection in the annotation layers.

virtual vtkSelection* vtkAnnotationLink::GetCurrentSelection ( )
virtual

Set or get the current selection in the annotation layers.

void vtkAnnotationLink::AddDomainMap ( vtkTable *  map)

The domain mappings.

void vtkAnnotationLink::RemoveDomainMap ( vtkTable *  map)

The domain mappings.

void vtkAnnotationLink::RemoveAllDomainMaps ( )

The domain mappings.

int vtkAnnotationLink::GetNumberOfDomainMaps ( )

The domain mappings.

vtkTable* vtkAnnotationLink::GetDomainMap ( int  i)

The domain mappings.

virtual unsigned long vtkAnnotationLink::GetMTime ( )
virtual

Get the mtime of this object.

virtual void vtkAnnotationLink::ProcessEvents ( vtkObject *  caller,
unsigned long  eventId,
void *  callData 
)
protectedvirtual

Called to process modified events from its vtkAnnotationLayers.

virtual int vtkAnnotationLink::FillInputPortInformation ( int  ,
vtkInformation *   
)
protectedvirtual

Set up input ports.

virtual int vtkAnnotationLink::FillOutputPortInformation ( int  ,
vtkInformation *   
)
protectedvirtual

Set up output ports.

void vtkAnnotationLink::ShallowCopyToOutput ( vtkAnnotationLayers *  input,
vtkAnnotationLayers *  output,
vtkSelection *  sel 
)
protected

Copy the data to the output objects.

virtual int vtkAnnotationLink::RequestData ( vtkInformation *  info,
vtkInformationVector **  inVector,
vtkInformationVector *  outVector 
)
protectedvirtual

Shallow copy the internal selection to the output.

Friends And Related Function Documentation

friend class Command
friend

Definition at line 140 of file vtkAnnotationLink.h.

Member Data Documentation

vtkAnnotationLayers* vtkAnnotationLink::AnnotationLayers
protected

The shared selection.

Definition at line 129 of file vtkAnnotationLink.h.

vtkDataObjectCollection* vtkAnnotationLink::DomainMaps
protected

The mappings between domains.

Definition at line 132 of file vtkAnnotationLink.h.


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