VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
vtkDataRepresentation Class Reference

The superclass for all representations. More...

#include <vtkDataRepresentation.h>

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

List of all members.

Public Types

typedef vtkPassInputTypeAlgorithm Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkDataRepresentationNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
virtual void ApplyViewTheme (vtkViewTheme *vtkNotUsed(theme))
virtual vtkSelectionConvertSelection (vtkView *view, vtkSelection *selection)
vtkAlgorithmOutputGetInputConnection (int port=0, int index=0)
vtkAnnotationLinkGetAnnotationLink ()
void SetAnnotationLink (vtkAnnotationLink *link)
void Select (vtkView *view, vtkSelection *selection)
void Select (vtkView *view, vtkSelection *selection, bool extend)
void Annotate (vtkView *view, vtkAnnotationLayers *annotations)
void Annotate (vtkView *view, vtkAnnotationLayers *annotations, bool extend)
virtual void SetSelectable (bool)
virtual bool GetSelectable ()
virtual void SelectableOn ()
virtual void SelectableOff ()
void UpdateSelection (vtkSelection *selection)
void UpdateSelection (vtkSelection *selection, bool extend)
void UpdateAnnotations (vtkAnnotationLayers *annotations)
void UpdateAnnotations (vtkAnnotationLayers *annotations, bool extend)
virtual vtkAlgorithmOutputGetInternalAnnotationOutputPort ()
virtual vtkAlgorithmOutputGetInternalAnnotationOutputPort (int port)
virtual vtkAlgorithmOutputGetInternalAnnotationOutputPort (int port, int conn)
virtual vtkAlgorithmOutputGetInternalSelectionOutputPort ()
virtual vtkAlgorithmOutputGetInternalSelectionOutputPort (int port)
virtual vtkAlgorithmOutputGetInternalSelectionOutputPort (int port, int conn)
virtual vtkAlgorithmOutputGetInternalOutputPort ()
virtual vtkAlgorithmOutputGetInternalOutputPort (int port)
virtual vtkAlgorithmOutputGetInternalOutputPort (int port, int conn)
virtual void SetSelectionType (int)
virtual int GetSelectionType ()
virtual void SetSelectionArrayNames (vtkStringArray *names)
virtual vtkStringArrayGetSelectionArrayNames ()
virtual void SetSelectionArrayName (const char *name)
virtual const char * GetSelectionArrayName ()

Static Public Member Functions

static vtkDataRepresentationNew ()
static int IsTypeOf (const char *type)
static vtkDataRepresentationSafeDownCast (vtkObjectBase *o)

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkDataRepresentation ()
 ~vtkDataRepresentation ()
virtual void ProcessEvents (vtkObject *caller, unsigned long eventId, void *callData)
virtual bool AddToView (vtkView *vtkNotUsed(view))
virtual bool RemoveFromView (vtkView *vtkNotUsed(view))
virtual vtkAnnotationLayersConvertAnnotations (vtkView *view, vtkAnnotationLayers *annotations)
vtkTrivialProducerGetInternalInput (int port, int conn)
void SetInternalInput (int port, int conn, vtkTrivialProducer *producer)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)

Protected Attributes

bool Selectable
int SelectionType
vtkStringArraySelectionArrayNames
CommandObserver

Friends

class vtkView
class vtkRenderView
class Command
vtkAnnotationLinkAnnotationLinkInternal
virtual void SetAnnotationLinkInternal (vtkAnnotationLink *link)

Detailed Description

The superclass for all representations.

vtkDataRepresentation the superclass for representations of data objects. This class itself may be instantiated and used as a representation that simply holds a connection to a pipeline.

If there are multiple representations present in a view, you should use a subclass of vtkDataRepresentation. The representation is responsible for taking the input pipeline connection and converting it to an object usable by a view. In the most common case, the representation will contain the pipeline necessary to convert a data object into an actor or set of actors.

The representation has a concept of a selection. If the user performs a selection operation on the view, the view forwards this on to its representations. The representation is responsible for displaying that selection in an appropriate way.

Representation selections may also be linked. The representation shares the selection by converting it into a view-independent format, then setting the selection on its vtkAnnotationLink. Other representations sharing the same selection link instance will get the same selection from the selection link when the view is updated. The application is responsible for linking representations as appropriate by setting the same vtkAnnotationLink on each linked representation.

Events:
vtkCommand::AnnotationChangedEvent vtkCommand::SelectionChangedEvent
Examples:
vtkDataRepresentation (Examples)

Definition at line 71 of file vtkDataRepresentation.h.


Member Typedef Documentation


Constructor & Destructor Documentation


Member Function Documentation

static int vtkDataRepresentation::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPassInputTypeAlgorithm.

Reimplemented in vtkParallelCoordinatesRepresentation, vtkRenderedGraphRepresentation, vtkParallelCoordinatesHistogramRepresentation, vtkQtTableRepresentation, vtkRenderedTreeAreaRepresentation, vtkRenderedSurfaceRepresentation, vtkGeoAlignedImageRepresentation, vtkRenderedRepresentation, vtkEmptyRepresentation, and vtkRenderedHierarchyRepresentation.

virtual int vtkDataRepresentation::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPassInputTypeAlgorithm.

Reimplemented in vtkParallelCoordinatesRepresentation, vtkRenderedGraphRepresentation, vtkParallelCoordinatesHistogramRepresentation, vtkQtTableRepresentation, vtkRenderedTreeAreaRepresentation, vtkRenderedSurfaceRepresentation, vtkGeoAlignedImageRepresentation, vtkRenderedRepresentation, vtkEmptyRepresentation, and vtkRenderedHierarchyRepresentation.

virtual vtkObjectBase* vtkDataRepresentation::NewInstanceInternal ( ) const [protected, virtual]
void vtkDataRepresentation::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkPassInputTypeAlgorithm.

Reimplemented in vtkParallelCoordinatesRepresentation, vtkRenderedGraphRepresentation, vtkParallelCoordinatesHistogramRepresentation, vtkQtTableRepresentation, vtkRenderedTreeAreaRepresentation, vtkRenderedSurfaceRepresentation, vtkGeoAlignedImageRepresentation, vtkRenderedRepresentation, vtkEmptyRepresentation, and vtkRenderedHierarchyRepresentation.

vtkAlgorithmOutput* vtkDataRepresentation::GetInputConnection ( int  port = 0,
int  index = 0 
) [inline]

Convenience override method for obtaining the input connection without specifying the port or index.

Reimplemented from vtkAlgorithm.

Definition at line 81 of file vtkDataRepresentation.h.

The annotation link for this representation. To link annotations, set the same vtkAnnotationLink object in multiple representations.

Definition at line 88 of file vtkDataRepresentation.h.

The annotation link for this representation. To link annotations, set the same vtkAnnotationLink object in multiple representations.

virtual void vtkDataRepresentation::ApplyViewTheme ( vtkViewTheme vtkNotUsedtheme) [inline, virtual]

Apply a theme to this representation. Subclasses should override this method.

Definition at line 95 of file vtkDataRepresentation.h.

void vtkDataRepresentation::Select ( vtkView view,
vtkSelection selection 
) [inline]

The view calls this method when a selection occurs. The representation takes this selection and converts it into a selection on its data by calling ConvertSelection, then calls UpdateSelection with the converted selection. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional third argument specifies whether the selection should be added to the previous selection on this representation.

Definition at line 105 of file vtkDataRepresentation.h.

void vtkDataRepresentation::Select ( vtkView view,
vtkSelection selection,
bool  extend 
)

The view calls this method when a selection occurs. The representation takes this selection and converts it into a selection on its data by calling ConvertSelection, then calls UpdateSelection with the converted selection. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional third argument specifies whether the selection should be added to the previous selection on this representation.

void vtkDataRepresentation::Annotate ( vtkView view,
vtkAnnotationLayers annotations 
) [inline]

Analogous to Select(). The view calls this method when it needs to change the underlying annotations (some views might perform the creation of annotations). The representation takes the annotations and converts them into a selection on its data by calling ConvertAnnotations, then calls UpdateAnnotations with the converted selection. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional third argument specifies whether the selection should be added to the previous selection on this representation.

Definition at line 120 of file vtkDataRepresentation.h.

void vtkDataRepresentation::Annotate ( vtkView view,
vtkAnnotationLayers annotations,
bool  extend 
)

Analogous to Select(). The view calls this method when it needs to change the underlying annotations (some views might perform the creation of annotations). The representation takes the annotations and converts them into a selection on its data by calling ConvertAnnotations, then calls UpdateAnnotations with the converted selection. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional third argument specifies whether the selection should be added to the previous selection on this representation.

virtual void vtkDataRepresentation::SetSelectable ( bool  ) [virtual]

Whether this representation is able to handle a selection. Default is true.

virtual bool vtkDataRepresentation::GetSelectable ( ) [virtual]

Whether this representation is able to handle a selection. Default is true.

virtual void vtkDataRepresentation::SelectableOn ( ) [virtual]

Whether this representation is able to handle a selection. Default is true.

virtual void vtkDataRepresentation::SelectableOff ( ) [virtual]

Whether this representation is able to handle a selection. Default is true.

void vtkDataRepresentation::UpdateSelection ( vtkSelection selection) [inline]

Updates the selection in the selection link and fires a selection change event. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional second argument specifies whether the selection should be added to the previous selection on this representation.

Definition at line 139 of file vtkDataRepresentation.h.

void vtkDataRepresentation::UpdateSelection ( vtkSelection selection,
bool  extend 
)

Updates the selection in the selection link and fires a selection change event. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional second argument specifies whether the selection should be added to the previous selection on this representation.

Updates the selection in the selection link and fires a selection change event. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional second argument specifies whether the selection should be added to the previous selection on this representation.

Definition at line 150 of file vtkDataRepresentation.h.

void vtkDataRepresentation::UpdateAnnotations ( vtkAnnotationLayers annotations,
bool  extend 
)

Updates the selection in the selection link and fires a selection change event. Subclasses should not overrride this method, but should instead override ConvertSelection. The optional second argument specifies whether the selection should be added to the previous selection on this representation.

The output port that contains the annotations whose selections are localized for a particular input data object. This should be used when connecting the internal pipelines.

Reimplemented in vtkEmptyRepresentation.

Definition at line 159 of file vtkDataRepresentation.h.

The output port that contains the annotations whose selections are localized for a particular input data object. This should be used when connecting the internal pipelines.

Reimplemented in vtkEmptyRepresentation.

Definition at line 161 of file vtkDataRepresentation.h.

The output port that contains the annotations whose selections are localized for a particular input data object. This should be used when connecting the internal pipelines.

Reimplemented in vtkEmptyRepresentation.

The output port that contains the selection associated with the current annotation (normally the interactive selection). This should be used when connecting the internal pipelines.

Definition at line 170 of file vtkDataRepresentation.h.

The output port that contains the selection associated with the current annotation (normally the interactive selection). This should be used when connecting the internal pipelines.

Definition at line 172 of file vtkDataRepresentation.h.

The output port that contains the selection associated with the current annotation (normally the interactive selection). This should be used when connecting the internal pipelines.

Retrieves an output port for the input data object at the specified port and connection index. This may be connected to the representation's internal pipeline.

Definition at line 181 of file vtkDataRepresentation.h.

Retrieves an output port for the input data object at the specified port and connection index. This may be connected to the representation's internal pipeline.

Definition at line 183 of file vtkDataRepresentation.h.

Retrieves an output port for the input data object at the specified port and connection index. This may be connected to the representation's internal pipeline.

virtual void vtkDataRepresentation::SetSelectionType ( int  ) [virtual]

Set the selection type produced by this view. This should be one of the content type constants defined in vtkSelectionNode.h. Common values are vtkSelectionNode::INDICES vtkSelectionNode::PEDIGREEIDS vtkSelectionNode::VALUES

Set the selection type produced by this view. This should be one of the content type constants defined in vtkSelectionNode.h. Common values are vtkSelectionNode::INDICES vtkSelectionNode::PEDIGREEIDS vtkSelectionNode::VALUES

If a VALUES selection, the arrays used to produce a selection.

If a VALUES selection, the arrays used to produce a selection.

virtual void vtkDataRepresentation::SetSelectionArrayName ( const char *  name) [virtual]

If a VALUES selection, the array used to produce a selection.

virtual const char* vtkDataRepresentation::GetSelectionArrayName ( ) [virtual]

If a VALUES selection, the array used to produce a selection.

virtual vtkSelection* vtkDataRepresentation::ConvertSelection ( vtkView view,
vtkSelection selection 
) [virtual]

Convert the selection to a type appropriate for sharing with other representations through vtkAnnotationLink, possibly using the view. For the superclass, we just return the same selection. Subclasses may do something more fancy, like convert the selection from a frustrum to a list of pedigree ids. If the selection cannot be applied to this representation, return NULL.

Reimplemented in vtkRenderedGraphRepresentation, vtkParallelCoordinatesRepresentation, vtkRenderedTreeAreaRepresentation, vtkRenderedHierarchyRepresentation, and vtkRenderedSurfaceRepresentation.

virtual int vtkDataRepresentation::RequestData ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [inline, protected, virtual]

Subclasses should override this to connect inputs to the internal pipeline as necessary. Since most representations are "meta-filters" (i.e. filters containing other filters), you should create shallow copies of your input before connecting to the internal pipeline. The convenience method GetInternalOutputPort will create a cached shallow copy of a specified input for you. The related helper functions GetInternalAnnotationOutputPort, GetInternalSelectionOutputPort should be used to obtain a selection or annotation port whose selections are localized for a particular input data object.

Reimplemented from vtkPassInputTypeAlgorithm.

Reimplemented in vtkRenderedGraphRepresentation, vtkRenderedTreeAreaRepresentation, vtkParallelCoordinatesRepresentation, vtkRenderedHierarchyRepresentation, vtkParallelCoordinatesHistogramRepresentation, vtkQtTableRepresentation, and vtkRenderedSurfaceRepresentation.

Definition at line 231 of file vtkDataRepresentation.h.

virtual void vtkDataRepresentation::ProcessEvents ( vtkObject caller,
unsigned long  eventId,
void *  callData 
) [protected, virtual]

Clear the input shallow copy caches if the algorithm is in "release data" mode.

virtual void vtkDataRepresentation::SetAnnotationLinkInternal ( vtkAnnotationLink link) [protected, virtual]

The annotation link for this representation.

virtual bool vtkDataRepresentation::AddToView ( vtkView vtkNotUsedview) [inline, protected, virtual]

Adds the representation to the view. This is called from vtkView::AddRepresentation(). Subclasses should override this method. Returns true if the addition succeeds.

Definition at line 272 of file vtkDataRepresentation.h.

virtual bool vtkDataRepresentation::RemoveFromView ( vtkView vtkNotUsedview) [inline, protected, virtual]

Removes the representation to the view. This is called from vtkView::RemoveRepresentation(). Subclasses should override this method. Returns true if the removal succeeds.

Definition at line 277 of file vtkDataRepresentation.h.

virtual vtkAnnotationLayers* vtkDataRepresentation::ConvertAnnotations ( vtkView view,
vtkAnnotationLayers annotations 
) [protected, virtual]

Analogous to ConvertSelection(), allows subclasses to manipulate annotations before passing them off to vtkAnnotationLink. If the annotations cannot be applied to this representation, return NULL.

void vtkDataRepresentation::SetInternalInput ( int  port,
int  conn,
vtkTrivialProducer producer 
) [protected]

Friends And Related Function Documentation

friend class vtkView [friend]

Definition at line 258 of file vtkDataRepresentation.h.

friend class vtkRenderView [friend]

Reimplemented in vtkRenderedRepresentation.

Definition at line 259 of file vtkDataRepresentation.h.

friend class Command [friend]

Definition at line 260 of file vtkDataRepresentation.h.


Member Data Documentation

The annotation link for this representation.

Definition at line 245 of file vtkDataRepresentation.h.

Definition at line 249 of file vtkDataRepresentation.h.

The selection type created by the view.

Definition at line 252 of file vtkDataRepresentation.h.

If a VALUES selection, the array names used in the selection.

Definition at line 255 of file vtkDataRepresentation.h.

Definition at line 262 of file vtkDataRepresentation.h.


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