VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkRowQuery Class Reference

abstract interface for queries that return row-oriented results. More...

#include <vtkRowQuery.h>

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

List of all members.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkRowQueryNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
virtual bool Execute ()=0
virtual int GetNumberOfFields ()=0
virtual const char * GetFieldName (int i)=0
virtual int GetFieldType (int i)=0
int GetFieldIndex (char *name)
virtual bool NextRow ()=0
virtual bool IsActive ()=0
bool NextRow (vtkVariantArray *rowArray)
virtual vtkVariant DataValue (vtkIdType c)=0
virtual bool HasError ()=0
virtual const char * GetLastErrorText ()=0
virtual void SetCaseSensitiveFieldNames (bool)
virtual bool GetCaseSensitiveFieldNames ()
virtual void CaseSensitiveFieldNamesOn ()
virtual void CaseSensitiveFieldNamesOff ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkRowQuerySafeDownCast (vtkObjectBase *o)

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkRowQuery ()
 ~vtkRowQuery ()

Protected Attributes

bool CaseSensitiveFieldNames

Detailed Description

abstract interface for queries that return row-oriented results.

The abstract superclass of query classes that return row-oriented (table) results. A subclass will provide database-specific query parameters and implement the vtkRowQuery API to return query results:

Execute() - Execute the query. No results need to be retrieved at this point, unless you are performing caching.

GetNumberOfFields() - After Execute() is performed, returns the number of fields in the query results.

GetFieldName() - The name of the field at an index.

GetFieldType() - The data type of the field at an index.

NextRow() - Advances the query results by one row, and returns whether there are more rows left in the query.

DataValue() - Extract a single data value from the current row.

Thanks:
Thanks to Andrew Wilson from Sandia National Laboratories for his work on the database classes.
See also:
vtkRowQueryToTable

Definition at line 61 of file vtkRowQuery.h.


Member Typedef Documentation

Reimplemented from vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkPostgreSQLQuery, and vtkMySQLQuery.

Definition at line 64 of file vtkRowQuery.h.


Constructor & Destructor Documentation

vtkRowQuery::vtkRowQuery ( ) [protected]
vtkRowQuery::~vtkRowQuery ( ) [protected]

Member Function Documentation

static int vtkRowQuery::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 vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkPostgreSQLQuery, and vtkMySQLQuery.

virtual int vtkRowQuery::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 vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkPostgreSQLQuery, and vtkMySQLQuery.

Reimplemented from vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkPostgreSQLQuery, and vtkMySQLQuery.

virtual vtkObjectBase* vtkRowQuery::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkPostgreSQLQuery, and vtkMySQLQuery.

Reimplemented from vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkPostgreSQLQuery, and vtkMySQLQuery.

void vtkRowQuery::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 vtkObject.

Reimplemented in vtkSQLQuery, vtkSQLiteQuery, vtkODBCQuery, vtkMySQLQuery, and vtkPostgreSQLQuery.

virtual bool vtkRowQuery::Execute ( ) [pure virtual]

Execute the query. This must be performed before any field name or data access functions are used.

Implemented in vtkSQLQuery, vtkSQLiteQuery, vtkMySQLQuery, vtkODBCQuery, and vtkPostgreSQLQuery.

virtual int vtkRowQuery::GetNumberOfFields ( ) [pure virtual]

The number of fields in the query result.

Implemented in vtkMySQLQuery, vtkSQLiteQuery, vtkODBCQuery, and vtkPostgreSQLQuery.

virtual const char* vtkRowQuery::GetFieldName ( int  i) [pure virtual]

Return the name of the specified query field.

Implemented in vtkMySQLQuery, vtkSQLiteQuery, vtkODBCQuery, and vtkPostgreSQLQuery.

virtual int vtkRowQuery::GetFieldType ( int  i) [pure virtual]

Return the type of the field, using the constants defined in vtkType.h.

Implemented in vtkMySQLQuery, vtkSQLiteQuery, vtkODBCQuery, and vtkPostgreSQLQuery.

int vtkRowQuery::GetFieldIndex ( char *  name)

Return the index of the specified query field. Uses GetNumberOfFields() and GetFieldName() to match field name.

virtual bool vtkRowQuery::NextRow ( ) [pure virtual]

Advance row, return false if past end.

Implemented in vtkMySQLQuery, vtkSQLiteQuery, vtkODBCQuery, and vtkPostgreSQLQuery.

virtual bool vtkRowQuery::IsActive ( ) [pure virtual]

Return true if the query is active (i.e. execution was successful and results are ready to be fetched). Returns false on error or inactive query.

Implemented in vtkSQLQuery.

bool vtkRowQuery::NextRow ( vtkVariantArray rowArray)

Advance row, return false if past end. Also, fill array with row values.

virtual vtkVariant vtkRowQuery::DataValue ( vtkIdType  c) [pure virtual]

Return data in current row, field c

Implemented in vtkSQLiteQuery, vtkMySQLQuery, vtkPostgreSQLQuery, and vtkODBCQuery.

virtual bool vtkRowQuery::HasError ( ) [pure virtual]

Returns true if an error is set, otherwise false.

Implemented in vtkMySQLQuery, vtkSQLiteQuery, vtkODBCQuery, and vtkPostgreSQLQuery.

virtual const char* vtkRowQuery::GetLastErrorText ( ) [pure virtual]

Get the last error text from the query

Implemented in vtkSQLiteQuery, vtkMySQLQuery, vtkPostgreSQLQuery, and vtkODBCQuery.

virtual void vtkRowQuery::SetCaseSensitiveFieldNames ( bool  ) [virtual]

Many databases do not preserve case in field names. This can cause GetFieldIndex to fail if you search for a field named someFieldName when the database actually stores it as SOMEFIELDNAME. This ivar controls whether GetFieldIndex() expects field names to be case-sensitive. The default is OFF, i.e. case is not preserved.

virtual bool vtkRowQuery::GetCaseSensitiveFieldNames ( ) [virtual]

Many databases do not preserve case in field names. This can cause GetFieldIndex to fail if you search for a field named someFieldName when the database actually stores it as SOMEFIELDNAME. This ivar controls whether GetFieldIndex() expects field names to be case-sensitive. The default is OFF, i.e. case is not preserved.

virtual void vtkRowQuery::CaseSensitiveFieldNamesOn ( ) [virtual]

Many databases do not preserve case in field names. This can cause GetFieldIndex to fail if you search for a field named someFieldName when the database actually stores it as SOMEFIELDNAME. This ivar controls whether GetFieldIndex() expects field names to be case-sensitive. The default is OFF, i.e. case is not preserved.

virtual void vtkRowQuery::CaseSensitiveFieldNamesOff ( ) [virtual]

Many databases do not preserve case in field names. This can cause GetFieldIndex to fail if you search for a field named someFieldName when the database actually stores it as SOMEFIELDNAME. This ivar controls whether GetFieldIndex() expects field names to be case-sensitive. The default is OFF, i.e. case is not preserved.


Member Data Documentation

Definition at line 120 of file vtkRowQuery.h.


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