mySQL 5.0.11 sources for tomato
[tomato.git] / release / src / router / mysql / storage / ndb / include / kernel / signaldata / TuxBound.hpp
blobd2ed97a124f1d54027e00063eb35917a94474ddf
1 /* Copyright (c) 2003-2005 MySQL AB
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; version 2 of the License.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
16 #ifndef TUX_BOUND_HPP
17 #define TUX_BOUND_HPP
19 #include "SignalData.hpp"
21 class TuxBoundInfo {
22 friend class Dblqh;
23 friend class Dbtux;
24 public:
25 // must match API (0-4 and no changes expected)
26 enum BoundType {
27 BoundLE = 0, // bit 1 for less/greater
28 BoundLT = 1, // bit 0 for strict
29 BoundGE = 2,
30 BoundGT = 3,
31 BoundEQ = 4
33 enum ErrorCode {
34 InvalidAttrInfo = 4110,
35 InvalidBounds = 4259,
36 OutOfBuffers = 873,
37 InvalidCharFormat = 744,
38 TooMuchAttrInfo = 823
40 STATIC_CONST( SignalLength = 3 );
41 private:
43 * Error code set by TUX. Zero means no error.
45 Uint32 errorCode;
47 * Pointer (i-value) to scan operation in TUX.
49 Uint32 tuxScanPtrI;
51 * Number of words of bound info included after fixed signal data.
53 Uint32 boundAiLength;
55 Uint32 data[1];
58 #endif