VTK
|
maintain a connection to a PostgreSQL database More...
#include <vtkPostgreSQLDatabase.h>
Public Types | |
typedef vtkSQLDatabase | Superclass |
Public Types inherited from vtkSQLDatabase | |
typedef vtkObject | Superclass |
typedef vtkSQLDatabase *(* | CreateFunction) (const char *URL) |
Type for CreateFromURL callback. More... | |
Public Member Functions | |
virtual vtkTypeBool | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. More... | |
vtkPostgreSQLDatabase * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. More... | |
bool | Open (const char *password=0) override |
Open a new connection to the database. More... | |
void | Close () override |
Close the connection to the database. More... | |
bool | IsOpen () override |
Return whether the database has an open connection. More... | |
vtkSQLQuery * | GetQueryInstance () override |
Return an empty query on this database. More... | |
virtual bool | HasError () override |
Did the last operation generate an error. More... | |
const char * | GetLastErrorText () override |
Get the last error text from the database. More... | |
virtual void | SetPassword (const char *) |
The user's password for connecting to the database server. More... | |
vtkStdString | GetURL () override |
Get a URL referencing the current database connection. More... | |
vtkStringArray * | GetTables () override |
Get the list of tables from the database. More... | |
vtkStringArray * | GetRecord (const char *table) override |
Get the list of fields for a particular table. More... | |
bool | IsSupported (int feature) override |
Return whether a feature is supported by the database. More... | |
vtkStringArray * | GetDatabases () |
Return a list of databases on the server. More... | |
bool | CreateDatabase (const char *dbName, bool dropExisting=false) |
Create a new database, optionally dropping any existing database of the same name. More... | |
bool | DropDatabase (const char *dbName) |
Drop a database if it exists. More... | |
vtkStdString | GetColumnSpecification (vtkSQLDatabaseSchema *schema, int tblHandle, int colHandle) override |
Return the SQL string with the syntax to create a column inside a "CREATE TABLE" SQL statement. More... | |
bool | ParseURL (const char *url) override |
Overridden to determine connection parameters given the URL. More... | |
const char * | GetDatabaseType () override |
String representing database type (e.g. More... | |
virtual void | SetHostName (const char *) |
The database server host name. More... | |
virtual char * | GetHostName () |
The database server host name. More... | |
virtual void | SetUser (const char *) |
The user name for connecting to the database server. More... | |
virtual char * | GetUser () |
The user name for connecting to the database server. More... | |
virtual void | SetDatabaseName (const char *) |
The name of the database to connect to. More... | |
virtual char * | GetDatabaseName () |
The name of the database to connect to. More... | |
virtual void | SetConnectOptions (const char *) |
Additional options for the database. More... | |
virtual char * | GetConnectOptions () |
Additional options for the database. More... | |
virtual void | SetServerPort (int) |
The port used for connecting to the database. More... | |
virtual int | GetServerPortMinValue () |
The port used for connecting to the database. More... | |
virtual int | GetServerPortMaxValue () |
The port used for connecting to the database. More... | |
virtual int | GetServerPort () |
The port used for connecting to the database. More... | |
Public Member Functions inherited from vtkSQLDatabase | |
vtkSQLDatabase * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual bool | IsSupported (int vtkNotUsed(feature)) |
Return whether a feature is supported by the database. More... | |
virtual vtkStdString | GetTablePreamble (bool) |
Return the SQL string with the syntax of the preamble following a "CREATE TABLE" SQL statement. More... | |
virtual vtkStdString | GetIndexSpecification (vtkSQLDatabaseSchema *schema, int tblHandle, int idxHandle, bool &skipped) |
Return the SQL string with the syntax to create an index inside a "CREATE TABLE" SQL statement. More... | |
virtual vtkStdString | GetTriggerSpecification (vtkSQLDatabaseSchema *schema, int tblHandle, int trgHandle) |
Return the SQL string with the syntax to create a trigger using a "CREATE TRIGGER" SQL statement. More... | |
virtual bool | EffectSchema (vtkSQLDatabaseSchema *, bool dropIfExists=false) |
Effect a database schema. More... | |
Public Member Functions inherited from vtkObject | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. More... | |
virtual void | DebugOff () |
Turn debugging output off. More... | |
bool | GetDebug () |
Get the value of the debug flag. More... | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. More... | |
virtual void | Modified () |
Update the modification time for this object. More... | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. More... | |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
vtkTypeBool | HasObserver (unsigned long event) |
vtkTypeBool | HasObserver (const char *event) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. More... | |
int | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
int | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
Return the class name as a string. More... | |
virtual void | Delete () |
Delete a VTK object. More... | |
virtual void | FastDelete () |
Delete a reference to this object. More... | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. More... | |
virtual void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). More... | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). More... | |
int | GetReferenceCount () |
Return the current reference count of this object. More... | |
void | SetReferenceCount (int) |
Sets the reference count. More... | |
void | PrintRevisions (ostream &) |
Legacy. More... | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
Static Public Member Functions | |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkPostgreSQLDatabase * | SafeDownCast (vtkObjectBase *o) |
static vtkPostgreSQLDatabase * | New () |
Static Public Member Functions inherited from vtkSQLDatabase | |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkSQLDatabase * | SafeDownCast (vtkObjectBase *o) |
static vtkSQLDatabase * | CreateFromURL (const char *URL) |
Create a the proper subclass given a URL. More... | |
static vtkInformationObjectBaseKey * | DATABASE () |
Stores the database class pointer as an information key. More... | |
static void | RegisterCreateFromURLCallback (CreateFunction callback) |
Provides mechanism to register/unregister additional callbacks to create concrete subclasses of vtkSQLDatabase to handle different protocols. More... | |
static void | UnRegisterCreateFromURLCallback (CreateFunction callback) |
Provides mechanism to register/unregister additional callbacks to create concrete subclasses of vtkSQLDatabase to handle different protocols. More... | |
static void | UnRegisterAllCreateFromURLCallbacks () |
Provides mechanism to register/unregister additional callbacks to create concrete subclasses of vtkSQLDatabase to handle different protocols. More... | |
Static Public Member Functions inherited from vtkObject | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. More... | |
static void | SetGlobalWarningDisplay (int val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static int | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
Static Public Member Functions inherited from vtkObjectBase | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. More... | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkPostgreSQLDatabase () | |
~vtkPostgreSQLDatabase () | |
void | UpdateDataTypeMap () |
Create or refresh the map from Postgres column types to VTK array types. More... | |
virtual void | SetDatabaseType (const char *) |
virtual void | SetLastErrorText (const char *) |
void | NullTrailingWhitespace (char *msg) |
bool | OpenInternal (const char *connectionOptions) |
Protected Member Functions inherited from vtkSQLDatabase | |
vtkSQLDatabase () | |
~vtkSQLDatabase () override | |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. More... | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. More... | |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkTimeStamp | URLMTime |
vtkPostgreSQLDatabasePrivate * | Connection |
vtkTimeStamp | ConnectionMTime |
vtkStringArray * | Tables |
char * | DatabaseType |
char * | HostName |
char * | User |
char * | Password |
char * | DatabaseName |
int | ServerPort |
char * | ConnectOptions |
char * | LastErrorText |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Friends | |
class | vtkPostgreSQLQuery |
class | vtkPostgreSQLQueryPrivate |
maintain a connection to a PostgreSQL database
PostgreSQL (http://www.postgres.org) is a BSD-licensed SQL database. It's large, fast, and can not be easily embedded inside other applications. Its databases are stored in files that belong to another process.
This class provides a VTK interface to PostgreSQL. You do need to download external libraries: we need a copy of PostgreSQL 8 (currently 8.2 or 8.3) so that we can link against the libpq C interface.
Definition at line 60 of file vtkPostgreSQLDatabase.h.
Definition at line 67 of file vtkPostgreSQLDatabase.h.
|
protected |
|
protected |
|
static |
|
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 vtkSQLDatabase.
|
static |
|
protectedvirtual |
Reimplemented from vtkSQLDatabase.
vtkPostgreSQLDatabase* vtkPostgreSQLDatabase::NewInstance | ( | ) | const |
|
overridevirtual |
|
static |
|
overridevirtual |
Open a new connection to the database.
You need to set the filename before calling this function. Returns true if the database was opened successfully; false otherwise.
Implements vtkSQLDatabase.
|
overridevirtual |
Close the connection to the database.
Implements vtkSQLDatabase.
|
overridevirtual |
Return whether the database has an open connection.
Implements vtkSQLDatabase.
|
overridevirtual |
Return an empty query on this database.
Implements vtkSQLDatabase.
|
overridevirtual |
Did the last operation generate an error.
Implements vtkSQLDatabase.
|
overridevirtual |
Get the last error text from the database.
Implements vtkSQLDatabase.
|
inlineoverridevirtual |
String representing database type (e.g.
"psql").
Implements vtkSQLDatabase.
Definition at line 107 of file vtkPostgreSQLDatabase.h.
|
virtual |
The database server host name.
|
virtual |
The database server host name.
|
virtual |
The user name for connecting to the database server.
|
virtual |
The user name for connecting to the database server.
|
virtual |
The user's password for connecting to the database server.
|
virtual |
The name of the database to connect to.
|
virtual |
The name of the database to connect to.
|
virtual |
Additional options for the database.
|
virtual |
Additional options for the database.
|
inlinevirtual |
The port used for connecting to the database.
Definition at line 298 of file vtkPostgreSQLDatabase.h.
|
inlinevirtual |
The port used for connecting to the database.
Definition at line 155 of file vtkPostgreSQLDatabase.h.
|
inlinevirtual |
The port used for connecting to the database.
Definition at line 159 of file vtkPostgreSQLDatabase.h.
|
virtual |
The port used for connecting to the database.
|
overridevirtual |
Get a URL referencing the current database connection.
This is not well-defined if the HostName and DatabaseName have not been set. The URL will be of the form 'psql://'[username[':'password]'@']hostname[':'port]'/'database
.
Implements vtkSQLDatabase.
|
overridevirtual |
Get the list of tables from the database.
Implements vtkSQLDatabase.
|
overridevirtual |
Get the list of fields for a particular table.
Implements vtkSQLDatabase.
|
override |
Return whether a feature is supported by the database.
vtkStringArray* vtkPostgreSQLDatabase::GetDatabases | ( | ) |
Return a list of databases on the server.
bool vtkPostgreSQLDatabase::CreateDatabase | ( | const char * | dbName, |
bool | dropExisting = false |
||
) |
Create a new database, optionally dropping any existing database of the same name.
Returns true when the database is properly created and false on failure.
bool vtkPostgreSQLDatabase::DropDatabase | ( | const char * | dbName | ) |
Drop a database if it exists.
Returns true on success and false on failure.
|
overridevirtual |
Return the SQL string with the syntax to create a column inside a "CREATE TABLE" SQL statement.
NB: this method implements the PostgreSQL-specific syntax: <column name>=""> <column type>=""> <column attributes>="">
Reimplemented from vtkSQLDatabase.
|
overridevirtual |
Overridden to determine connection parameters given the URL.
This is called by CreateFromURL() to initialize the instance. Look at CreateFromURL() for details about the URL format.
Implements vtkSQLDatabase.
|
protected |
Create or refresh the map from Postgres column types to VTK array types.
Postgres defines a table for types so that users may define types. This adaptor does not support user-defined types or even all of the default types defined by Postgres (some are inherently difficult to translate into VTK since Postgres allows columns to have composite types, vector-valued types, and extended precision types that vtkVariant does not support.
This routine examines the pg_types table to get a map from Postgres column type IDs (stored as OIDs) to VTK array types. It is called whenever a new database connection is initiated.
|
protectedvirtual |
|
protectedvirtual |
|
protected |
|
protected |
|
friend |
Definition at line 63 of file vtkPostgreSQLDatabase.h.
|
friend |
Definition at line 64 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 247 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 248 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 249 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 250 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 251 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 252 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 253 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 254 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 255 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 256 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 257 of file vtkPostgreSQLDatabase.h.
|
protected |
Definition at line 258 of file vtkPostgreSQLDatabase.h.