Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 60f1dc962abad0f3b492991a4fbef9be > files > 4987

vtk-doc-5.4.2-5mdv2010.0.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>VTK: dox/IO/vtkSQLDatabaseSchema.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="classes.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
<h1>dox/IO/vtkSQLDatabaseSchema.h</h1><a href="a03195.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*=========================================================================</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment">Program:   Visualization Toolkit</span>
<a name="l00004"></a>00004 <span class="comment">Module:    $RCSfile: vtkSQLDatabaseSchema.h,v $</span>
<a name="l00005"></a>00005 <span class="comment"></span>
<a name="l00006"></a>00006 <span class="comment">Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen</span>
<a name="l00007"></a>00007 <span class="comment">All rights reserved.</span>
<a name="l00008"></a>00008 <span class="comment">See Copyright.txt or http://www.kitware.com/Copyright.htm for details.</span>
<a name="l00009"></a>00009 <span class="comment"></span>
<a name="l00010"></a>00010 <span class="comment">This software is distributed WITHOUT ANY WARRANTY; without even</span>
<a name="l00011"></a>00011 <span class="comment">the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR</span>
<a name="l00012"></a>00012 <span class="comment">PURPOSE.  See the above copyright notice for more information.</span>
<a name="l00013"></a>00013 <span class="comment"></span>
<a name="l00014"></a>00014 <span class="comment">=========================================================================*/</span>
<a name="l00015"></a>00015 <span class="comment">/*-------------------------------------------------------------------------</span>
<a name="l00016"></a>00016 <span class="comment">  Copyright 2008 Sandia Corporation.</span>
<a name="l00017"></a>00017 <span class="comment">  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,</span>
<a name="l00018"></a>00018 <span class="comment">  the U.S. Government retains certain rights in this software.</span>
<a name="l00019"></a>00019 <span class="comment">-------------------------------------------------------------------------*/</span>
<a name="l00037"></a>00037 <span class="preprocessor">#ifndef __vtkSQLDatabaseSchema_h</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#define __vtkSQLDatabaseSchema_h</span>
<a name="l00039"></a>00039 <span class="preprocessor"></span>
<a name="l00040"></a>00040 <span class="preprocessor">#include "<a class="code" href="a02079.html">vtkObject.h</a>"</span>
<a name="l00041"></a>00041 
<a name="l00042"></a>00042 <span class="preprocessor">#include &lt;cstdarg&gt;</span> <span class="comment">// Because one method has a variable list of arguments </span>
<a name="l00043"></a>00043 
<a name="l00044"></a>00044 <span class="comment">// This is a list of known supported VTK SQL backend classes. </span>
<a name="l00045"></a>00045 <span class="comment">// A particular SQL backend does not have to be listed here to be supported, but</span>
<a name="l00046"></a>00046 <span class="comment">// these macros allow for the specification of SQL backend-specific database schema items.</span>
<a name="l00047"></a><a class="code" href="a03195.html#2e7c703866a6f21ed711953a8fa736c3">00047</a> <span class="preprocessor">#define VTK_SQL_ALLBACKENDS      "*" // works for all backends</span>
<a name="l00048"></a><a class="code" href="a03195.html#a26a78a31b55ff7ecb285f3e61aa9449">00048</a> <span class="preprocessor"></span><span class="preprocessor">#define VTK_SQL_MYSQL            "vtkMySQLDatabase"</span>
<a name="l00049"></a><a class="code" href="a03195.html#f00595fc405bbcfa0bb9e4e32b7beecb">00049</a> <span class="preprocessor"></span><span class="preprocessor">#define VTK_SQL_POSTGRESQL       "vtkPostgreSQLDatabase"</span>
<a name="l00050"></a><a class="code" href="a03195.html#520c3f13b23432a40708efd73177cde3">00050</a> <span class="preprocessor"></span><span class="preprocessor">#define VTK_SQL_SQLITE           "vtkSQLiteDatabase"</span>
<a name="l00051"></a>00051 <span class="preprocessor"></span>
<a name="l00052"></a>00052 <span class="keyword">class </span>vtkSQLDatabaseSchemaInternals;
<a name="l00053"></a>00053 
<a name="l00054"></a><a class="code" href="a01595.html">00054</a> <span class="keyword">class </span><a class="code" href="a02170.html#aab695c81fb47ab75c91e111e17cbe2c">VTK_IO_EXPORT</a> <a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a> : <span class="keyword">public</span> <a class="code" href="a01084.html" title="abstract base class for most VTK objects">vtkObject</a>
<a name="l00055"></a>00055 {
<a name="l00056"></a>00056  <span class="keyword">public</span>:
<a name="l00057"></a><a class="code" href="a01595.html#252b671542549ca8ae8df7ec6f0ef588">00057</a>   vtkTypeRevisionMacro(<a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a>, <a class="code" href="a01084.html" title="abstract base class for most VTK objects">vtkObject</a>);
<a name="l00058"></a>00058   <span class="keywordtype">void</span> <a class="code" href="a01084.html#bf3dbb4154289b56a12483eee3866263">PrintSelf</a>(ostream&amp; os, <a class="code" href="a00869.html" title="a simple class to control print indentation">vtkIndent</a> indent);
<a name="l00059"></a>00059   <span class="keyword">static</span> <a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a> *<a class="code" href="a01084.html#4d5b227267c076d6f9e38483370b6612">New</a>();
<a name="l00060"></a>00060 
<a name="l00061"></a>00061   <span class="comment">//BTX</span>
<a name="l00063"></a>00063 <span class="comment"></span>
<a name="l00064"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4">00064</a>   <span class="keyword">enum</span> <a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4">DatabaseColumnType</a>
<a name="l00065"></a>00065     {
<a name="l00066"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a41e6e3fff159856d240d8f6ca23f15908">00066</a>       SERIAL    = 0, <span class="comment">// specifying the indices explicitly to prevent bad compiler mishaps</span>
<a name="l00067"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a425df9ef60e6338c1ba73d5dab7945f02">00067</a>       SMALLINT  = 1,
<a name="l00068"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4a12f2be77e31d136b6cbb6067307f990">00068</a>       INTEGER   = 2,
<a name="l00069"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a42415955434b81e14fa3ba58b433d1d40">00069</a>       BIGINT    = 3,
<a name="l00070"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a41fbcd08f887d7cda74eade0291088984">00070</a>       VARCHAR   = 4,
<a name="l00071"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4262d7be274f4d60dfc533e41a92bea2c">00071</a>       TEXT      = 5,
<a name="l00072"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4137c659c186000bb2154415b10bf3715">00072</a>       REAL      = 6,
<a name="l00073"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4d08297a7c72a67ee66889adc7d253509">00073</a>       DOUBLE    = 7,
<a name="l00074"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4b25b73a9ae7b76f47a2c992db90743f1">00074</a>       BLOB      = 8,
<a name="l00075"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4076e4998bd8c46e3a8d52268a4de9c67">00075</a>       TIME      = 9,
<a name="l00076"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a49a786401af764632e54e495e5d839e26">00076</a>       DATE      = 10,
<a name="l00077"></a><a class="code" href="a01595.html#3f2977f44ac8ff1d98a3a868735ed6a4a4bfd1b0a607ea79d2ed48ce5eb5bf65">00077</a>       TIMESTAMP = 11
<a name="l00078"></a>00078     };
<a name="l00080"></a>00080 
<a name="l00082"></a>00082 
<a name="l00083"></a><a class="code" href="a01595.html#dc4546884c25550da09ab17f02246033">00083</a>   <span class="keyword">enum</span> <a class="code" href="a01595.html#dc4546884c25550da09ab17f02246033">DatabaseIndexType</a>
<a name="l00084"></a>00084     {
<a name="l00085"></a><a class="code" href="a01595.html#dc4546884c25550da09ab17f0224603330cf0fecca1909158a4a83d2e28bafc1">00085</a>       INDEX       = 0, <span class="comment">// Non-unique index of values in named columns</span>
<a name="l00086"></a><a class="code" href="a01595.html#dc4546884c25550da09ab17f022460338973ff0e38aab19fb1cae87f313ceda6">00086</a>       UNIQUE      = 1, <span class="comment">// Index of values in named columns required to have at most one entry per pair of valid values.</span>
<a name="l00087"></a><a class="code" href="a01595.html#dc4546884c25550da09ab17f02246033923d89643977442392fa331249feb12e">00087</a>       PRIMARY_KEY = 2 <span class="comment">// Like UNIQUE but additionally this serves as the primary key for the table to speed up insertions.</span>
<a name="l00088"></a>00088     };
<a name="l00090"></a>00090 
<a name="l00092"></a>00092 
<a name="l00093"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd1344">00093</a>   <span class="keyword">enum</span> <a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd1344">DatabaseTriggerType</a>
<a name="l00094"></a>00094     {
<a name="l00095"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd1344cd26e7f2a69debfa766947c87414a963">00095</a>       BEFORE_INSERT = 0, <span class="comment">// Just before a row is inserted</span>
<a name="l00096"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd1344893f70e4a6087d688e89feb01829292c">00096</a>       AFTER_INSERT  = 1,  <span class="comment">// Just after a row is inserted</span>
<a name="l00097"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd134424c155daede3fa2e6902860a3dcc5c57">00097</a>       BEFORE_UPDATE = 2, <span class="comment">// Just before a row's values are changed</span>
<a name="l00098"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd134435cb4c26062b01838919c0e04aded6b1">00098</a>       AFTER_UPDATE  = 3,  <span class="comment">// Just after a row's values are changed</span>
<a name="l00099"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd1344aa44fd9b05e7c7173126cccd39f609ae">00099</a>       BEFORE_DELETE = 4, <span class="comment">// Just before a row is deleted</span>
<a name="l00100"></a><a class="code" href="a01595.html#fe1e52a59359e010c4306dbd8ebd1344558f6aa090a7156d3e16a6d1e6f57ec6">00100</a>       AFTER_DELETE  = 5  <span class="comment">// Just after a row is deleted</span>
<a name="l00101"></a>00101     };
<a name="l00102"></a>00102   <span class="comment">//ETX</span>
<a name="l00104"></a>00104 <span class="comment"></span>
<a name="l00117"></a>00117   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddPreamble( <span class="keyword">const</span> <span class="keywordtype">char</span>* preName, 
<a name="l00118"></a>00118                            <span class="keyword">const</span> <span class="keywordtype">char</span>* preAction,
<a name="l00119"></a>00119                            <span class="keyword">const</span> <span class="keywordtype">char</span>* preBackend = <a class="code" href="a03195.html#2e7c703866a6f21ed711953a8fa736c3">VTK_SQL_ALLBACKENDS</a> );
<a name="l00120"></a>00120 
<a name="l00122"></a>00122   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddTable( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName );
<a name="l00123"></a>00123 
<a name="l00124"></a>00124   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddColumnToTable( <span class="keywordtype">int</span> tblHandle, 
<a name="l00125"></a>00125                                 <span class="keywordtype">int</span> colType, 
<a name="l00126"></a>00126                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* colName,
<a name="l00127"></a>00127                                 <span class="keywordtype">int</span> colSize, 
<a name="l00128"></a>00128                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* colAttribs );
<a name="l00129"></a>00129 
<a name="l00130"></a><a class="code" href="a01595.html#1042693d7ae50f615b2e3304b7a3183c">00130</a>   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddColumnToTable( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, 
<a name="l00131"></a>00131                                 <span class="keywordtype">int</span> colType, 
<a name="l00132"></a>00132                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* colName,
<a name="l00133"></a>00133                                 <span class="keywordtype">int</span> colSize, 
<a name="l00134"></a>00134                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* colAttribs )
<a name="l00135"></a>00135   {
<a name="l00136"></a>00136     <span class="keywordflow">return</span> this-&gt;AddColumnToTable( this-&gt;GetTableHandleFromName( tblName ),
<a name="l00137"></a>00137                                    colType, 
<a name="l00138"></a>00138                                    colName, 
<a name="l00139"></a>00139                                    colSize, 
<a name="l00140"></a>00140                                    colAttribs );
<a name="l00141"></a>00141   }
<a name="l00142"></a>00142 
<a name="l00143"></a>00143   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddIndexToTable( <span class="keywordtype">int</span> tblHandle, 
<a name="l00144"></a>00144                                <span class="keywordtype">int</span> idxType, 
<a name="l00145"></a>00145                                <span class="keyword">const</span> <span class="keywordtype">char</span>* idxName );
<a name="l00146"></a>00146 
<a name="l00147"></a><a class="code" href="a01595.html#2da716dee57be3dbef9c7d564e867535">00147</a>   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddIndexToTable( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, 
<a name="l00148"></a>00148                                <span class="keywordtype">int</span> idxType, 
<a name="l00149"></a>00149                                <span class="keyword">const</span> <span class="keywordtype">char</span>* idxName )
<a name="l00150"></a>00150   {
<a name="l00151"></a>00151     <span class="keywordflow">return</span> this-&gt;AddIndexToTable( this-&gt;GetTableHandleFromName( tblName ), 
<a name="l00152"></a>00152                                   idxType, 
<a name="l00153"></a>00153                                   idxName );
<a name="l00154"></a>00154   }
<a name="l00155"></a>00155 
<a name="l00156"></a>00156   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddColumnToIndex( <span class="keywordtype">int</span> tblHandle, 
<a name="l00157"></a>00157                                 <span class="keywordtype">int</span> idxHandle, 
<a name="l00158"></a>00158                                 <span class="keywordtype">int</span> colHandle );
<a name="l00159"></a>00159 
<a name="l00160"></a><a class="code" href="a01595.html#26362766dba0f823918ccdaf44aa3470">00160</a>   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddColumnToIndex( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, 
<a name="l00161"></a>00161                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* idxName, 
<a name="l00162"></a>00162                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* colName )
<a name="l00163"></a>00163   {
<a name="l00164"></a>00164     <span class="keywordtype">int</span> tblHandle = this-&gt;GetTableHandleFromName( tblName );
<a name="l00165"></a>00165     <span class="keywordflow">return</span> this-&gt;AddColumnToIndex( tblHandle,
<a name="l00166"></a>00166                                    this-&gt;GetIndexHandleFromName( tblName, idxName ),
<a name="l00167"></a>00167                                    this-&gt;GetColumnHandleFromName( tblName, colName ) );
<a name="l00168"></a>00168   }
<a name="l00169"></a>00169 
<a name="l00170"></a>00170   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddTriggerToTable( <span class="keywordtype">int</span> tblHandle,
<a name="l00171"></a>00171                                  <span class="keywordtype">int</span> trgType, 
<a name="l00172"></a>00172                                  <span class="keyword">const</span> <span class="keywordtype">char</span>* trgName, 
<a name="l00173"></a>00173                                  <span class="keyword">const</span> <span class="keywordtype">char</span>* trgAction,
<a name="l00174"></a>00174                                  <span class="keyword">const</span> <span class="keywordtype">char</span>* trgBackend = <a class="code" href="a03195.html#2e7c703866a6f21ed711953a8fa736c3">VTK_SQL_ALLBACKENDS</a> );
<a name="l00175"></a>00175 
<a name="l00176"></a><a class="code" href="a01595.html#c1dc9051c7aeb28a16b621de87f462f1">00176</a>   <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddTriggerToTable( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName,
<a name="l00177"></a>00177                                  <span class="keywordtype">int</span> trgType, 
<a name="l00178"></a>00178                                  <span class="keyword">const</span> <span class="keywordtype">char</span>* trgName, 
<a name="l00179"></a>00179                                  <span class="keyword">const</span> <span class="keywordtype">char</span>* trgAction,
<a name="l00180"></a>00180                                  <span class="keyword">const</span> <span class="keywordtype">char</span>* trgBackend = <a class="code" href="a03195.html#2e7c703866a6f21ed711953a8fa736c3">VTK_SQL_ALLBACKENDS</a> )
<a name="l00181"></a>00181   {
<a name="l00182"></a>00182     <span class="keywordflow">return</span> this-&gt;AddTriggerToTable( this-&gt;GetTableHandleFromName( tblName ),
<a name="l00183"></a>00183                                     trgType, 
<a name="l00184"></a>00184                                     trgName, 
<a name="l00185"></a>00185                                     trgAction,
<a name="l00186"></a>00186                                     trgBackend );
<a name="l00187"></a>00187   }
<a name="l00188"></a>00188 
<a name="l00190"></a>00190   <span class="keywordtype">int</span> GetPreambleHandleFromName( <span class="keyword">const</span> <span class="keywordtype">char</span>* preName );
<a name="l00191"></a>00191 
<a name="l00193"></a>00193   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetPreambleNameFromHandle( <span class="keywordtype">int</span> preHandle );
<a name="l00194"></a>00194 
<a name="l00196"></a>00196   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetPreambleActionFromHandle( <span class="keywordtype">int</span> preHandle );
<a name="l00197"></a>00197 
<a name="l00199"></a>00199   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetPreambleBackendFromHandle( <span class="keywordtype">int</span> preHandle );
<a name="l00200"></a>00200 
<a name="l00202"></a>00202   <span class="keywordtype">int</span> GetTableHandleFromName( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName );
<a name="l00203"></a>00203 
<a name="l00205"></a>00205   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetTableNameFromHandle( <span class="keywordtype">int</span> tblHandle );
<a name="l00206"></a>00206 
<a name="l00208"></a>00208 
<a name="l00210"></a>00210   <span class="keywordtype">int</span> GetIndexHandleFromName( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, 
<a name="l00211"></a>00211                               <span class="keyword">const</span> <span class="keywordtype">char</span>* idxName );
<a name="l00213"></a>00213 
<a name="l00215"></a>00215 
<a name="l00216"></a>00216   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetIndexNameFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00217"></a>00217                                       <span class="keywordtype">int</span> idxHandle );
<a name="l00219"></a>00219 
<a name="l00221"></a>00221 
<a name="l00222"></a>00222   <span class="keywordtype">int</span> GetIndexTypeFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00223"></a>00223                               <span class="keywordtype">int</span> idxHandle );
<a name="l00225"></a>00225 
<a name="l00227"></a>00227 
<a name="l00229"></a>00229   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetIndexColumnNameFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00230"></a>00230                                             <span class="keywordtype">int</span> idxHandle,
<a name="l00231"></a>00231                                             <span class="keywordtype">int</span> cnmHandle );
<a name="l00233"></a>00233 
<a name="l00235"></a>00235 
<a name="l00237"></a>00237   <span class="keywordtype">int</span> GetColumnHandleFromName( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, 
<a name="l00238"></a>00238                                <span class="keyword">const</span> <span class="keywordtype">char</span>* colName );
<a name="l00240"></a>00240 
<a name="l00242"></a>00242 
<a name="l00244"></a>00244   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetColumnNameFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00245"></a>00245                                        <span class="keywordtype">int</span> colHandle );
<a name="l00247"></a>00247 
<a name="l00249"></a>00249 
<a name="l00251"></a>00251   <span class="keywordtype">int</span> GetColumnTypeFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00252"></a>00252                                <span class="keywordtype">int</span> colHandle );
<a name="l00254"></a>00254 
<a name="l00256"></a>00256 
<a name="l00258"></a>00258   <span class="keywordtype">int</span> GetColumnSizeFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00259"></a>00259                                <span class="keywordtype">int</span> colHandle );
<a name="l00261"></a>00261 
<a name="l00263"></a>00263 
<a name="l00265"></a>00265   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetColumnAttributesFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00266"></a>00266                                              <span class="keywordtype">int</span> colHandle );
<a name="l00268"></a>00268 
<a name="l00270"></a>00270 
<a name="l00272"></a>00272   <span class="keywordtype">int</span> GetTriggerHandleFromName( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, 
<a name="l00273"></a>00273                                 <span class="keyword">const</span> <span class="keywordtype">char</span>* trgName );
<a name="l00275"></a>00275 
<a name="l00277"></a>00277 
<a name="l00279"></a>00279   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetTriggerNameFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00280"></a>00280                                         <span class="keywordtype">int</span> trgHandle );
<a name="l00282"></a>00282 
<a name="l00284"></a>00284 
<a name="l00286"></a>00286   <span class="keywordtype">int</span> GetTriggerTypeFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00287"></a>00287                                 <span class="keywordtype">int</span> trgHandle );
<a name="l00289"></a>00289 
<a name="l00291"></a>00291 
<a name="l00293"></a>00293   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetTriggerActionFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00294"></a>00294                                           <span class="keywordtype">int</span> trgHandle );
<a name="l00296"></a>00296 
<a name="l00298"></a>00298 
<a name="l00300"></a>00300   <span class="keyword">const</span> <span class="keywordtype">char</span>* GetTriggerBackendFromHandle( <span class="keywordtype">int</span> tblHandle, 
<a name="l00301"></a>00301                                            <span class="keywordtype">int</span> trgHandle );
<a name="l00303"></a>00303 
<a name="l00305"></a>00305   <span class="keywordtype">void</span> Reset();
<a name="l00306"></a>00306 
<a name="l00308"></a>00308   <span class="keywordtype">int</span> GetNumberOfPreambles();
<a name="l00309"></a>00309 
<a name="l00311"></a>00311   <span class="keywordtype">int</span> GetNumberOfTables();
<a name="l00312"></a>00312 
<a name="l00314"></a>00314   <span class="keywordtype">int</span> GetNumberOfColumnsInTable( <span class="keywordtype">int</span> tblHandle );
<a name="l00315"></a>00315 
<a name="l00317"></a>00317   <span class="keywordtype">int</span> GetNumberOfIndicesInTable( <span class="keywordtype">int</span> tblHandle );
<a name="l00318"></a>00318 
<a name="l00320"></a>00320 
<a name="l00322"></a>00322   <span class="keywordtype">int</span> GetNumberOfColumnNamesInIndex( <span class="keywordtype">int</span> tblHandle, 
<a name="l00323"></a>00323                                      <span class="keywordtype">int</span> idxHandle );
<a name="l00325"></a>00325 
<a name="l00327"></a>00327   <span class="keywordtype">int</span> GetNumberOfTriggersInTable( <span class="keywordtype">int</span> tblHandle );
<a name="l00328"></a>00328 
<a name="l00330"></a>00330 
<a name="l00331"></a>00331   vtkSetStringMacro(Name);
<a name="l00332"></a>00332   vtkGetStringMacro(Name);
<a name="l00334"></a>00334 
<a name="l00335"></a>00335   <span class="comment">//BTX</span>
<a name="l00336"></a>00336   <span class="comment">// Tokens passed to AddTable to indicate the type of data that follows. Random integers chosen to prevent mishaps.</span>
<a name="l00337"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c">00337</a>   <span class="keyword">enum</span> <a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c">VarargTokens</a>
<a name="l00338"></a>00338     {
<a name="l00339"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c8154741dfdf72645d685899dad8499e9">00339</a>       COLUMN_TOKEN       = 58,
<a name="l00340"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288cea11c9743712e469a7c05a36118ca0a3">00340</a>       INDEX_TOKEN        = 63,
<a name="l00341"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c25be362836c38181ba8ae011c5233b62">00341</a>       INDEX_COLUMN_TOKEN = 65,
<a name="l00342"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c0169ea381fbeb08f96432a9c47083c97">00342</a>       END_INDEX_TOKEN    = 75,
<a name="l00343"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c947a3fcdadaaf6ad6492b9ce1697cd9d">00343</a>       TRIGGER_TOKEN      = 81,
<a name="l00344"></a><a class="code" href="a01595.html#d79bbabb492b86c252c57f11f255288c7f7c9dbb5d0e2e501ab740b7ee150d92">00344</a>       END_TABLE_TOKEN    = 99
<a name="l00345"></a>00345     };
<a name="l00346"></a>00346 
<a name="l00348"></a>00348 
<a name="l00373"></a>00373   <span class="keywordtype">int</span> AddTableMultipleArguments( <span class="keyword">const</span> <span class="keywordtype">char</span>* tblName, ... );
<a name="l00374"></a>00374   <span class="comment">//ETX</span>
<a name="l00376"></a>00376 <span class="comment"></span>
<a name="l00377"></a>00377  <span class="keyword">protected</span>:
<a name="l00378"></a>00378   <a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a>();
<a name="l00379"></a>00379   ~<a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a>();
<a name="l00380"></a>00380 
<a name="l00381"></a><a class="code" href="a01595.html#4643ba40182bf6664ff2bd4df070e0ba">00381</a>   <span class="keywordtype">char</span>* Name;
<a name="l00382"></a>00382 <span class="comment">//BTX</span>
<a name="l00383"></a><a class="code" href="a01595.html#210f757d3eec8064ad53d347852da9a7">00383</a>   <span class="keyword">class </span>vtkSQLDatabaseSchemaInternals* Internals;
<a name="l00384"></a>00384 <span class="comment">//ETX</span>
<a name="l00385"></a>00385 
<a name="l00386"></a>00386  <span class="keyword">private</span>:
<a name="l00387"></a>00387   <a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a>(<span class="keyword">const</span> <a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a> &amp;); <span class="comment">// Not implemented.</span>
<a name="l00388"></a>00388   <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="a01595.html" title="create a SQL database schema">vtkSQLDatabaseSchema</a> &amp;); <span class="comment">// Not implemented.</span>
<a name="l00389"></a>00389 };
<a name="l00390"></a>00390 
<a name="l00391"></a>00391 <span class="preprocessor">#endif // __vtkSQLDatabaseSchema_h</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 3 18:35:41 2009 for VTK by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>