Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

# This file was automatically generated by SWIG (http://www.swig.org). 

# Version 2.0.4 

# 

# Do not make changes to this file unless you know what you are doing--modify 

# the SWIG interface file instead. 

 

 

 

from sys import version_info 

if version_info >= (2,6,0): 

    def swig_import_helper(): 

        from os.path import dirname 

        import imp 

        fp = None 

        try: 

            fp, pathname, description = imp.find_module('_tableindex', [dirname(__file__)]) 

        except ImportError: 

            import _tableindex 

            return _tableindex 

        if fp is not None: 

            try: 

                _mod = imp.load_module('_tableindex', fp, pathname, description) 

            finally: 

                fp.close() 

            return _mod 

    _tableindex = swig_import_helper() 

    del swig_import_helper 

else: 

    import _tableindex 

del version_info 

try: 

    _swig_property = property 

except NameError: 

    pass # Python < 2.2 doesn't have 'property'. 

def _swig_setattr_nondynamic(self,class_type,name,value,static=1): 

    if (name == "thisown"): return self.this.own(value) 

    if (name == "this"): 

        if type(value).__name__ == 'SwigPyObject': 

            self.__dict__[name] = value 

            return 

    method = class_type.__swig_setmethods__.get(name,None) 

    if method: return method(self,value) 

    if (not static): 

        self.__dict__[name] = value 

    else: 

        raise AttributeError("You cannot add attributes to %s" % self) 

 

def _swig_setattr(self,class_type,name,value): 

    return _swig_setattr_nondynamic(self,class_type,name,value,0) 

 

def _swig_getattr(self,class_type,name): 

    if (name == "thisown"): return self.this.own() 

    method = class_type.__swig_getmethods__.get(name,None) 

    if method: return method(self) 

    raise AttributeError(name) 

 

def _swig_repr(self): 

    try: strthis = "proxy of " + self.this.__repr__() 

    except: strthis = "" 

    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,) 

 

try: 

    _object = object 

    _newclass = 1 

except AttributeError: 

    class _object : pass 

    _newclass = 0 

 

 

class tableindex(_object): 

    """Proxy of C++ casac::tableindex class""" 

    __swig_setmethods__ = {} 

    __setattr__ = lambda self, name, value: _swig_setattr(self, tableindex, name, value) 

    __swig_getmethods__ = {} 

    __getattr__ = lambda self, name: _swig_getattr(self, tableindex, name) 

    __repr__ = _swig_repr 

    def __init__(self): 

        """__init__(self) -> tableindex""" 

        this = _tableindex.new_tableindex() 

        try: self.this.append(this) 

        except: self.this = this 

    __swig_destroy__ = _tableindex.delete_tableindex 

    __del__ = lambda self : None; 

    def set(self, *args, **kwargs): 

        """ 

        set(self, tab, columns, sort = True) -> bool 

 

        Summary 

                Set table and columns to be indexed 

 

        Description 

                 

        Reset the       exttt{tableindex} tool to index the given table and 

        columns. It works similar to the tableindex constructor. 

 

 

        Input Parameters: 

                tab              table to be indexed, wants a table tool  

                columns          column names  

                sort             is a sort of the key values needed? true  

                 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_set(self, *args, **kwargs) 

 

    def isunique(self): 

        """ 

        isunique(self) -> bool 

 

        Summary 

                Are all key values in the index unique? 

 

        Description 

                 

        T is returned if all key values in the index are unique. In that case 

        the function rownr can also be used. 

 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_isunique(self) 

 

    def setchanged(self, *args, **kwargs): 

        """ 

        setchanged(self, columns = std::vector< string >(1, "")) -> bool 

 

        Summary 

                Tell the index that columns have changed 

 

        Description 

                 

        When data are changed in an indexed column, the index should be 

        updated. The tableindex tool recognizes addition and deletion of rows 

        and updates the index accordingly. However, it does not recognize if data in a 

        column are changed. This function can be used to tell the tableindex 

        that data in one or more columns are changed and force it to update 

        the index. If no column names are given it assumes all columns have changed. 

 

 

        Input Parameters: 

                columns          names of changed columns all  

                 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_setchanged(self, *args, **kwargs) 

 

    def rownr(self, *args, **kwargs): 

        """ 

        rownr(self, key) -> int 

 

        Summary 

                Find the row number matching the search value 

 

        Description 

                 

        Find the row number (1-relative) of the row containing the given 

        search value. If no row is found, 0 is returned. 

        This function can only be used if the index contains unique 

        key values (thus if isunique 

        returns T), otherwise   exttt{rownrs} should be used.  

        \Normally the search value should be given as a record in which the 

        field names match the column names in the index. However, if the index 

        is formed from a single column the search value can be given directly 

        as shown in the examples in the introduction. The data type should be 

        correct though. 

 

 

        Input Parameters: 

                key              search value  

                 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_rownr(self, *args, **kwargs) 

 

    def rownrs(self, *args, **kwargs): 

        """ 

        rownrs(self, key, upperkey = initialize_record("0"), lowerincl = True,  

            upperincl = True) -> std::vector<(int)> 

 

        Summary 

                Find the row numbers matching search values 

 

        Description 

                 

        Find the row numbers of the rows matching the given search value or 

        interval. An interval 

        is given if the         exttt{upperkey} argument is also given. In that case 

        the 3rd and 4th argument determine if the boundaries of the interval 

        are inclusive (i.e. part of the interval). 

        \As in function         exttt{rownr} the search values must be given as a 

        record if the index consists of multiple columns. 

 

 

        Input Parameters: 

                key              search value  

                upperkey         end of search interval 0  

                lowerincl        include lower boundary true  

                upperincl        include upper boundary? true  

                 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_rownrs(self, *args, **kwargs) 

 

    def close(self): 

        """ 

        close(self) -> bool 

 

        Summary 

                Close the tableindex 

 

        Description 

                 

        Close the tableindex. It can thereafter be reused using the set function. 

 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_close(self) 

 

    def done(self): 

        """ 

        done(self) -> bool 

 

        Summary 

                End the tableindex tool 

 

        Description 

                 

        End the tableindex and free up all memory. It cannot be reused anymore. 

 

        -------------------------------------------------------------------------------- 

                       

        """ 

        return _tableindex.tableindex_done(self) 

 

tableindex_swigregister = _tableindex.tableindex_swigregister 

tableindex_swigregister(tableindex) 

 

# This file is compatible with both classic and new-style classes.