📄 class_8h-source.html
字号:
00725 }00726 }00727 <span class="keywordflow">return</span> field;00728 }00729 <a name="l00733"></a><a class="code" href="classdbTableDescriptor.html#dbTableDescriptora5">00733</a> <span class="keywordtype">char</span>* getName() { 00734 <span class="keywordflow">return</span> name;00735 }00736 00741 <span class="keywordtype">void</span> setFlags();00742 00749 <span class="keywordtype">bool</span> equal(<a class="code" href="classdbTable.html">dbTable</a>* table);00750 00759 <span class="keywordtype">bool</span> match(<a class="code" href="classdbTable.html">dbTable</a>* table, <span class="keywordtype">bool</span> confirmDeleteColumns);00760 00766 <span class="keywordtype">void</span> checkRelationship();00767 <a name="l00772"></a><a class="code" href="classdbTableDescriptor.html#dbTableDescriptora10">00772</a> <a class="code" href="classdbDatabase.html">dbDatabase</a>* getDatabase() { 00773 assert(db != DETACHED_TABLE);00774 <span class="keywordflow">return</span> db; 00775 }00776 00781 <span class="keywordtype">void</span> storeInDatabase(<a class="code" href="classdbTable.html">dbTable</a>* table);00782 00786 <span class="keyword">static</span> <span class="keywordtype">void</span> cleanup();00787 00792 dbTableDescriptor(<a class="code" href="classdbTable.html">dbTable</a>* table);00793 00802 dbTableDescriptor(<span class="keywordtype">char</span>* tableName, <a class="code" href="classdbDatabase.html">dbDatabase</a>* db, size_t objSize, 00803 describeFunc func, dbTableDescriptor* original = NULL);00804 00808 ~dbTableDescriptor();00809 };00810 <a name="l00814"></a><a class="code" href="structdbVarying.html">00814</a> <span class="keyword">struct </span><a class="code" href="structdbVarying.html">dbVarying</a> { 00815 nat4 size; <span class="comment">// number of elements in the array</span>00816 int4 offs; <span class="comment">// offset from the beginning of the record</span>00817 };00818 <a name="l00822"></a><a class="code" href="structdbField.html">00822</a> <span class="keyword">struct </span><a class="code" href="structdbField.html">dbField</a> { 00823 <span class="keyword">enum</span> FieldTypes { 00824 tpBool,00825 tpInt1,00826 tpInt2,00827 tpInt4,00828 tpInt8,00829 tpReal4, 00830 tpReal8, 00831 tpString,00832 tpReference,00833 tpArray,00834 tpMethodBool,00835 tpMethodInt1,00836 tpMethodInt2,00837 tpMethodInt4,00838 tpMethodInt8,00839 tpMethodReal4,00840 tpMethodReal8,00841 tpMethodString,00842 tpMethodReference,00843 tpStructure,00844 tpRawBinary, 00845 tpStdString,00846 tpUnknown00847 };00848 <a name="l00852"></a><a class="code" href="structdbField.html#dbFieldo0">00852</a> <a class="code" href="structdbVarying.html">dbVarying</a> <a class="code" href="structdbField.html#dbFieldo0">name</a>; 00853 <a name="l00857"></a><a class="code" href="structdbField.html#dbFieldo1">00857</a> <a class="code" href="structdbVarying.html">dbVarying</a> <a class="code" href="structdbField.html#dbFieldo1">tableName</a>; 00858 <a name="l00862"></a><a class="code" href="structdbField.html#dbFieldo2">00862</a> <a class="code" href="structdbVarying.html">dbVarying</a> <a class="code" href="structdbField.html#dbFieldo2">inverse</a>; 00863 <a name="l00867"></a><a class="code" href="structdbField.html#dbFieldo3">00867</a> int4 <a class="code" href="structdbField.html#dbFieldo3">type</a>;00868 <a name="l00872"></a><a class="code" href="structdbField.html#dbFieldo4">00872</a> int4 <a class="code" href="structdbField.html#dbFieldo4">offset</a>; 00873 <a name="l00877"></a><a class="code" href="structdbField.html#dbFieldo5">00877</a> nat4 <a class="code" href="structdbField.html#dbFieldo5">size</a>;00878 <a name="l00882"></a><a class="code" href="structdbField.html#dbFieldo6">00882</a> oid_t <a class="code" href="structdbField.html#dbFieldo6">hashTable</a>;00883 <a name="l00887"></a><a class="code" href="structdbField.html#dbFieldo7">00887</a> oid_t <a class="code" href="structdbField.html#dbFieldo7">tTree</a>;00888 }; 00889 00890 <a name="l00894"></a><a class="code" href="classdbRecord.html">00894</a> <span class="keyword">class </span><a class="code" href="classdbRecord.html">dbRecord</a> { 00895 <span class="keyword">public</span>:<a name="l00899"></a><a class="code" href="classdbRecord.html#dbTableo8">00899</a> nat4 <a class="code" href="classdbRecord.html#dbTableo8">size</a>;00900 <a name="l00904"></a><a class="code" href="classdbRecord.html#dbTableo9">00904</a> oid_t <a class="code" href="classdbRecord.html#dbTableo9">next</a>;00905 <a name="l00909"></a><a class="code" href="classdbRecord.html#dbTableo10">00909</a> oid_t <a class="code" href="classdbRecord.html#dbTableo10">prev</a>;00910 };00911 00912 <a name="l00916"></a><a class="code" href="classdbTable.html">00916</a> <span class="keyword">class </span><a class="code" href="classdbTable.html">dbTable</a> : <span class="keyword">public</span> <a class="code" href="classdbRecord.html">dbRecord</a> { 00917 <span class="keyword">public</span>:<a name="l00921"></a><a class="code" href="classdbTable.html#dbTableo0">00921</a> <a class="code" href="structdbVarying.html">dbVarying</a> <a class="code" href="classdbTable.html#dbTableo0">name</a>;00922 <a name="l00926"></a><a class="code" href="classdbTable.html#dbTableo1">00926</a> <a class="code" href="structdbVarying.html">dbVarying</a> <a class="code" href="classdbTable.html#dbTableo1">fields</a>;00927 <a name="l00931"></a><a class="code" href="classdbTable.html#dbTableo2">00931</a> nat4 <a class="code" href="classdbTable.html#dbTableo2">fixedSize</a>;00932 <a name="l00936"></a><a class="code" href="classdbTable.html#dbTableo3">00936</a> nat4 <a class="code" href="classdbTable.html#dbTableo3">nRows</a>;00937 <a name="l00941"></a><a class="code" href="classdbTable.html#dbTableo4">00941</a> nat4 <a class="code" href="classdbTable.html#dbTableo4">nColumns</a>;00942 <a name="l00946"></a><a class="code" href="classdbTable.html#dbTableo5">00946</a> oid_t <a class="code" href="classdbTable.html#dbTableo5">firstRow</a>;00947 <a name="l00951"></a><a class="code" href="classdbTable.html#dbTableo6">00951</a> oid_t <a class="code" href="classdbTable.html#dbTableo6">lastRow</a>;00952 <span class="preprocessor">#ifdef AUTOINCREMENT_SUPPORT</span>00953 <span class="preprocessor"></span><a name="l00956"></a><a class="code" href="classdbTable.html#dbTableo7">00956</a> nat4 <a class="code" href="classdbTable.html#dbTableo7">count</a>;00957 <span class="preprocessor">#endif</span>00958 <span class="preprocessor"></span>};00959 00960 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeRawField(dbFieldDescriptor* fd, dbUDTComparator comparator)00961 {00962 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpRawBinary;00963 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro24">alignment</a> = 1;00964 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro25">comparator</a> = comparator;00965 <span class="keywordflow">return</span> fd;00966 }00967 00968 00969 <span class="keyword">template</span><<span class="keyword">class</span> T>00970 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, T& x) 00971 { 00972 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpStructure;00973 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro19">components</a> = x.dbDescribeComponents(fd);00974 <span class="keywordflow">return</span> fd;00975 }00976 00977 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, int1&) 00978 { 00979 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt1; 00980 <span class="keywordflow">return</span> fd;00981 }00982 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, int2&) 00983 { 00984 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt2; 00985 <span class="keywordflow">return</span> fd;00986 }00987 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, int4&) 00988 { 00989 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt4; 00990 <span class="keywordflow">return</span> fd;00991 }00992 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, db_int8&) 00993 { 00994 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt8; 00995 <span class="keywordflow">return</span> fd;00996 }00997 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, nat1&) 00998 { 00999 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt1; 01000 <span class="keywordflow">return</span> fd;01001 }01002 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, nat2&) 01003 { 01004 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt2; 01005 <span class="keywordflow">return</span> fd;01006 }01007 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, nat4&) 01008 { 01009 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt4; 01010 <span class="keywordflow">return</span> fd;01011 }01012 <span class="keyword">inline</span> dbFieldDescriptor* dbDescribeField(dbFieldDescriptor* fd, nat8&) 01013 { 01014 fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro14">type</a> = fd-><a class="code" href="classdbFieldDescriptor.html#dbFieldDescriptoro15">appType</a> = dbField::tpInt8; 01015 <span class="keywordflow">return</span> fd;01016 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -