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 | List of all members
vtkBoostSplitTableField Class Reference

"Splits" one-or-more table fields by duplicating rows containing delimited data. More...

#include <vtkBoostSplitTableField.h>

Inheritance diagram for vtkBoostSplitTableField:
[legend]
Collaboration diagram for vtkBoostSplitTableField:
[legend]

Public Types

typedef vtkTableAlgorithm Superclass
 
- Public Types inherited from vtkTableAlgorithm
typedef vtkAlgorithm Superclass
 
- Public Types inherited from vtkAlgorithm
typedef vtkObject Superclass
 
enum  DesiredOutputPrecision { SINGLE_PRECISION, DOUBLE_PRECISION, DEFAULT_PRECISION }
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkBoostSplitTableField * NewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void ClearFields ()
 
void AddField (const char *field, const char *delimiters)
 
- Public Member Functions inherited from vtkTableAlgorithm
vtkTableAlgorithm * NewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
vtkTable * GetOutput ()
 
vtkTable * GetOutput (int index)
 
void SetInputData (vtkDataObject *obj)
 
void SetInputData (int index, vtkDataObject *obj)
 
- Public Member Functions inherited from vtkAlgorithm
vtkAlgorithm * NewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
int HasExecutive ()
 
vtkExecutive * GetExecutive ()
 
virtual void SetExecutive (vtkExecutive *executive)
 
virtual int ModifyRequest (vtkInformation *request, int when)
 
vtkInformation * GetInputPortInformation (int port)
 
vtkInformation * GetOutputPortInformation (int port)
 
int GetNumberOfInputPorts ()
 
int GetNumberOfOutputPorts ()
 
void UpdateProgress (double amount)
 
vtkInformation * GetInputArrayInformation (int idx)
 
void RemoveAllInputs ()
 
vtkDataObject * GetOutputDataObject (int port)
 
virtual void RemoveInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void RemoveInputConnection (int port, int idx)
 
virtual void RemoveAllInputConnections (int port)
 
int GetNumberOfInputConnections (int port)
 
int GetTotalNumberOfInputConnections ()
 
vtkAlgorithmOutput * GetInputConnection (int port, int index)
 
vtkAlgorithm * GetInputAlgorithm (int port, int index, int &algPort)
 
vtkAlgorithm * GetInputAlgorithm (int port, int index)
 
vtkExecutive * GetInputExecutive (int port, int index)
 
vtkInformation * GetInputInformation (int port, int index)
 
vtkInformation * GetOutputInformation (int port)
 
virtual void UpdateInformation ()
 
virtual void PropagateUpdateExtent ()
 
virtual void UpdateWholeExtent ()
 
void ConvertTotalInputToPortConnection (int ind, int &port, int &conn)
 
virtual double ComputePriority ()
 
int SetUpdateExtentToWholeExtent (int port)
 
int SetUpdateExtentToWholeExtent ()
 
void SetUpdateExtent (int port, int extent[6])
 
int ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
 
virtual int ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
 
virtual vtkInformation * GetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
virtual void SetAbortExecute (int)
 
virtual int GetAbortExecute ()
 
virtual void AbortExecuteOn ()
 
virtual void AbortExecuteOff ()
 
virtual void SetProgress (double)
 
virtual double GetProgress ()
 
void SetProgressText (const char *ptext)
 
virtual char * GetProgressText ()
 
virtual unsigned long GetErrorCode ()
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 
vtkDataObject * GetInputDataObject (int port, int connection)
 
virtual void SetInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void SetInputConnection (vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (int port, vtkAlgorithmOutput *input)
 
virtual void AddInputConnection (vtkAlgorithmOutput *input)
 
virtual void SetInputDataObject (int port, vtkDataObject *data)
 
virtual void SetInputDataObject (vtkDataObject *data)
 
virtual void AddInputDataObject (int port, vtkDataObject *data)
 
virtual void AddInputDataObject (vtkDataObject *data)
 
vtkAlgorithmOutput * GetOutputPort (int index)
 
vtkAlgorithmOutput * GetOutputPort ()
 
vtkAlgorithm * GetInputAlgorithm ()
 
vtkExecutive * GetInputExecutive ()
 
vtkInformation * GetInputInformation ()
 
virtual void Update (int port)
 
virtual void Update ()
 
virtual void SetReleaseDataFlag (int)
 
virtual int GetReleaseDataFlag ()
 
void ReleaseDataFlagOn ()
 
void ReleaseDataFlagOff ()
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, vtkDataObject *output)
 
int UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType)
 
void SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int extent[6])
 
int * GetUpdateExtent ()
 
int * GetUpdateExtent (int port)
 
void GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
void GetUpdateExtent (int extent[6])
 
void GetUpdateExtent (int port, int extent[6])
 
int GetUpdatePiece ()
 
int GetUpdatePiece (int port)
 
int GetUpdateNumberOfPieces ()
 
int GetUpdateNumberOfPieces (int port)
 
int GetUpdateGhostLevel ()
 
int GetUpdateGhostLevel (int port)
 

Static Public Member Functions

static vtkBoostSplitTableField * New ()
 
static int IsTypeOf (const char *type)
 
static vtkBoostSplitTableField * SafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkTableAlgorithm
static vtkTableAlgorithm * New ()
 
static int IsTypeOf (const char *type)
 
static vtkTableAlgorithm * SafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkAlgorithm
static vtkAlgorithm * New ()
 
static int IsTypeOf (const char *type)
 
static vtkAlgorithm * SafeDownCast (vtkObjectBase *o)
 
static void SetDefaultExecutivePrototype (vtkExecutive *proto)
 
static vtkInformationIntegerKey * INPUT_IS_OPTIONAL ()
 
static vtkInformationIntegerKey * INPUT_IS_REPEATABLE ()
 
static
vtkInformationInformationVectorKey * 
INPUT_REQUIRED_FIELDS ()
 
static
vtkInformationStringVectorKey * 
INPUT_REQUIRED_DATA_TYPE ()
 
static
vtkInformationInformationVectorKey * 
INPUT_ARRAYS_TO_PROCESS ()
 
static vtkInformationIntegerKey * INPUT_PORT ()
 
static vtkInformationIntegerKey * INPUT_CONNECTION ()
 
static vtkInformationIntegerKey * PRESERVES_DATASET ()
 
static vtkInformationIntegerKey * PRESERVES_GEOMETRY ()
 
static vtkInformationIntegerKey * PRESERVES_BOUNDS ()
 
static vtkInformationIntegerKey * PRESERVES_TOPOLOGY ()
 
static vtkInformationIntegerKey * PRESERVES_ATTRIBUTES ()
 
static vtkInformationIntegerKey * PRESERVES_RANGES ()
 
static vtkInformationIntegerKey * MANAGES_METAINFORMATION ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkBoostSplitTableField ()
 
 ~vtkBoostSplitTableField ()
 
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
- Protected Member Functions inherited from vtkTableAlgorithm
 vtkTableAlgorithm ()
 
 ~vtkTableAlgorithm ()
 
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
virtual int FillOutputPortInformation (int port, vtkInformation *info)
 
virtual int FillInputPortInformation (int port, vtkInformation *info)
 
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
- Protected Member Functions inherited from vtkAlgorithm
 vtkAlgorithm ()
 
 ~vtkAlgorithm ()
 
virtual void SetNumberOfInputPorts (int n)
 
virtual void SetNumberOfOutputPorts (int n)
 
int InputPortIndexInRange (int index, const char *action)
 
int OutputPortIndexInRange (int index, const char *action)
 
int GetInputArrayAssociation (int idx, vtkInformationVector **inputVector)
 
virtual vtkExecutive * CreateDefaultExecutive ()
 
virtual void ReportReferences (vtkGarbageCollector *)
 
virtual void SetNumberOfInputConnections (int port, int n)
 
int GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector)
 
int GetInputArrayAssociation (int idx, vtkDataObject *input)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkDataArray * GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkDataArray * GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkDataObject *input)
 
vtkDataArray * GetInputArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkDataObject *input)
 
vtkAbstractArray * GetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association)
 
vtkInformation * GetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector)
 
virtual void SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input)
 
void SetInputDataInternal (int port, vtkDataObject *input)
 
void AddInputDataInternal (int port, vtkDataObject *input)
 
virtual void SetErrorCode (unsigned long)
 

Protected Attributes

vtkStringArray * Fields
 
vtkStringArray * Delimiters
 
- Protected Attributes inherited from vtkAlgorithm
vtkInformation * Information
 
double Progress
 
char * ProgressText
 
unsigned long ErrorCode
 

Additional Inherited Members

- Public Attributes inherited from vtkAlgorithm
int AbortExecute
 
- Static Protected Member Functions inherited from vtkAlgorithm
static vtkInformationIntegerKey * PORT_REQUIREMENTS_FILLED ()
 
- Static Protected Attributes inherited from vtkAlgorithm
static vtkExecutive * DefaultExecutivePrototype
 

Detailed Description

"Splits" one-or-more table fields by duplicating rows containing delimited data.

Assume the following table:

Author Year Title Brian; Jeff; Tim 2007 Foo Tim 2003 Bar

If we produce a graph relating authors to the year in which they publish, the string "Brian; Jeff; Tim" will be treated (incorrectly) as a single author associated with the year 2007. vtkBoostSplitTableField addresses this by splitting one-or-more fields into "subvalues" using a configurable delimiter and placing each subvalue on its own row (the other fields in the original row are copied). Using the above example, splitting the "Author" field with a ";" (semicolon) delimiter produces:

Author Year Title Brian 2007 Foo Jeff 2007 Foo Tim 2007 Foo Tim 2003 Bar

When this table is converted to a graph, each author (correctly) becomes a separate node.

Usage:

Use AddField() to specify the field(s) to be split. If no fields have been specified, vtkBoostSplitTableField will act as a passthrough. By default, no fields are specified.

The second argument to AddField() is a string containing zero-to-many single character delimiters (multi-character delimiters are not supported).

If the input table is missing a field specified by AddField(), it is an error. If no fields are specified, no splitting is performed. If the delimiter for a field is an empty string, no splitting is performed on that field.

Events:
vtkCommand::ProgressEvent
Tests:
vtkBoostSplitTableField (Tests)

Definition at line 67 of file vtkBoostSplitTableField.h.

Member Typedef Documentation

Definition at line 71 of file vtkBoostSplitTableField.h.

Constructor & Destructor Documentation

vtkBoostSplitTableField::vtkBoostSplitTableField ( )
protected
vtkBoostSplitTableField::~vtkBoostSplitTableField ( )
protected

Member Function Documentation

static vtkBoostSplitTableField* vtkBoostSplitTableField::New ( )
static
static int vtkBoostSplitTableField::IsTypeOf ( const char *  type)
static
virtual int vtkBoostSplitTableField::IsA ( const char *  type)
virtual

Reimplemented from vtkTableAlgorithm.

static vtkBoostSplitTableField* vtkBoostSplitTableField::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkBoostSplitTableField::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkTableAlgorithm.

vtkBoostSplitTableField* vtkBoostSplitTableField::NewInstance ( ) const
void vtkBoostSplitTableField::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
void vtkBoostSplitTableField::ClearFields ( )
void vtkBoostSplitTableField::AddField ( const char *  field,
const char *  delimiters 
)
int vtkBoostSplitTableField::RequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protectedvirtual

This is called by the superclass. This is the method you should override.

Reimplemented from vtkTableAlgorithm.

Member Data Documentation

vtkStringArray* vtkBoostSplitTableField::Fields
protected

Definition at line 86 of file vtkBoostSplitTableField.h.

vtkStringArray* vtkBoostSplitTableField::Delimiters
protected

Definition at line 87 of file vtkBoostSplitTableField.h.


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