TBConstants.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef CONSTANTS_H_
00028 #define CONSTANTS_H_
00029
00030 #include <sstream>
00031 #include <vector>
00032 #include <map>
00033
00034 #include <QFrame>
00035
00036 #include <casa/BasicSL/String.h>
00037 #include <casa/Utilities/DataType.h>
00038 #include <casa/Containers/Record.h>
00039
00040 #include <xercesc/util/PlatformUtils.hpp>
00041 #include <xercesc/util/XMLString.hpp>
00042
00043
00044
00045
00046
00047
00048
00049 #include <graphics/GenericPlotter/PlotFactory.h>
00050
00051 using namespace xercesc;
00052
00053 namespace casa {
00054
00055
00056 class TBTableTabs;
00057
00058 namespace tb {
00059
00060
00061 enum Comparator {
00062 EQUALS, CONTAINS, BETWEEN, CONTAINSBT, LESSTHAN, CONTAINSLT, GREATERTHAN,
00063 CONTAINSGT
00064 };
00065
00066
00067 enum BooleanFormat {
00068 DEFAULT, TRUEFALSE, TF, B10
00069 };
00070
00071
00072 enum Driver {
00073 DIRECT
00074 };
00075
00076
00077 enum Parser {
00078 HOME, XERCES_DOM, XERCES_SAX
00079 };
00080 }
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093 class Result {
00094 public:
00095
00096 Result(String r= "", bool v = true): result(r), valid(v) { }
00097
00098 ~Result() { }
00099
00100
00101 String result;
00102
00103
00104 bool valid;
00105 };
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117 class TBLocatedRows {
00118 public:
00119
00120 TBLocatedRows();
00121
00122 ~TBLocatedRows();
00123
00124
00125 std::vector<TBTableTabs*> tables();
00126
00127
00128 void put(TBTableTabs* tt, std::vector<int>* r);
00129
00130
00131
00132 std::map<TBTableTabs*, std::vector<int>*> results;
00133 };
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144
00145 class TBConstants {
00146 public:
00147
00148
00149
00150 static int debugThreshold;
00151
00152
00153
00154 static const int DEBUG_OFF;
00155 static const int DEBUG_LOW;
00156 static const int DEBUG_MED;
00157 static const int DEBUG_HIGH;
00158
00159
00160
00161
00162 static void dprint(int level, String message, int indentLevel = 0);
00163
00164
00165
00166
00167
00168 static const unsigned int DEFAULT_SELECT_NUM;
00169
00170
00171 static const unsigned int DEFAULT_EXPORT_NUM;
00172
00173
00174 static const unsigned int MAX_SELECT_NUM;
00175
00176
00177 static const unsigned int MAX_ACTION_BUFFER;
00178
00179
00180 static const unsigned int DEFAULT_ROW_INTERVAL;
00181
00182
00183
00184 static const String QUERY_QUERY;
00185 static const String QUERY_ARRAY;
00186 static const String QUERY_UPDATE;
00187 static const String QUERY_FULL;
00188
00189
00190
00191 static String compToString(tb::Comparator c);
00192
00193
00194 static tb::Comparator stringToComp(String str);
00195
00196
00197 static String bFormToString(tb::BooleanFormat bf);
00198
00199
00200 static tb::BooleanFormat stringToBForm(String str);
00201
00202
00203
00204 static const int SLICER_ROW_AXIS;
00205 static const int SLICER_COL_AXIS;
00206
00207
00208
00209 static const unsigned int DEFAULT_RECORD_VISIBLE_ROWS;
00210
00211
00212
00213
00214 static String aipspath();
00215
00216
00217
00218
00219 static String dotCasapyDir();
00220
00221
00222 static IPosition ipos(std::vector<int>& d);
00223
00224
00225 static std::vector<int> ipos(IPosition& d);
00226
00227
00228 static bool increment(IPosition& shape, IPosition& d);
00229
00230
00231 static bool increment(std::vector<int>& shape, std::vector<int>& d);
00232
00233
00234 static void insert(QFrame* frame, QWidget* widget);
00235
00236
00237 static void insert(QFrame* frame, QLayout* layout);
00238
00239
00240
00241
00242
00243
00244 static const String TYPE_STRING;
00245 static const String TYPE_DOUBLE;
00246 static const String TYPE_FLOAT;
00247 static const String TYPE_INT;
00248 static const String TYPE_UINT;
00249 static const String TYPE_BOOL;
00250 static const String TYPE_CHAR;
00251 static const String TYPE_UCHAR;
00252 static const String TYPE_SHORT;
00253 static const String TYPE_COMPLEX;
00254 static const String TYPE_DCOMPLEX;
00255 static const String TYPE_TABLE;
00256 static const String TYPE_RECORD;
00257 static const String TYPE_DATE;
00258
00259 static const String TYPE_ARRAY_STRING;
00260 static const String TYPE_ARRAY_DOUBLE;
00261 static const String TYPE_ARRAY_FLOAT;
00262 static const String TYPE_ARRAY_INT;
00263 static const String TYPE_ARRAY_UINT;
00264 static const String TYPE_ARRAY_BOOL;
00265 static const String TYPE_ARRAY_CHAR;
00266 static const String TYPE_ARRAY_UCHAR;
00267 static const String TYPE_ARRAY_SHORT;
00268 static const String TYPE_ARRAY_COMPLEX;
00269 static const String TYPE_ARRAY_DCOMPLEX;
00270
00271
00272
00273
00274
00275
00276
00277
00278 static std::vector<String>* allTypes();
00279
00280
00281 static std::vector<String>* arrayTypes();
00282
00283
00284 static std::vector<String>* nonArrayTypes();
00285
00286
00287
00288 static const String COMMENT_DATE;
00289 static const String COMMENT_TIMP;
00290 static const String COMMENT_TIMP2;
00291
00292
00293 static String typeName(DataType dt);
00294
00295
00296 static String typeName(String type);
00297
00298
00299
00300 static String VOType(String& type);
00301
00302
00303 static bool typeIsTable(String& type);
00304
00305
00306 static bool typeIsArray(String& type);
00307
00308
00309 static bool typeIsPlottable(String& type);
00310
00311
00312 static bool typeIsNumberable(String& type);
00313
00314
00315
00316 static bool typeIsIndexable(String& type);
00317
00318
00319
00320 static bool typeIsComplex(String& type);
00321
00322
00323
00324 static String arrayType(String& at);
00325
00326
00327
00328 static bool valueIsValid(String& value, String& type);
00329
00330
00331
00332 static String formatValue(String& value, String& type);
00333
00334
00335
00336 static double valueToDouble(String& value, String& type);
00337
00338
00339
00340
00341 static double date(String d);
00342
00343
00344
00345
00346 static String date(const double d, const int numDecimals = -1);
00347
00348
00349 static const int DEFAULT_DECIMALS;
00350
00351
00352 static const int DEFAULT_DATE_DECIMALS;
00353
00354
00355
00356
00357
00358 static bool dateFormatIsValid(String& d);
00359
00360
00361 static std::pair<double, double> toComplex(String str);
00362
00363
00364 static const String ARRAY_AXES_LENGTHS;
00365
00366
00367
00368
00369
00370
00371 static const String XML_VOTABLE;
00372 static const String XML_RESOURCE;
00373 static const String XML_TABLE;
00374 static const String XML_TOTAL;
00375 static const String XML_FIELD;
00376 static const String XML_KEYWORD;
00377 static const String XML_COLUMNKW;
00378 static const String XML_RWINFO;
00379 static const String XML_DATA;
00380 static const String XML_TABLEDATA;
00381 static const String XML_TR;
00382 static const String XML_TD;
00383 static const String XML_INSERTROW;
00384 static const String XML_REMOVEROW;
00385 static const String XML_TRUE;
00386 static const String XML_FALSE;
00387 static const String XML_ROW;
00388 static const String XML_NAME;
00389
00390 static const String XML_ID;
00391 static const String XML_KEYWORD_NAME;
00392 static const String XML_KEYWORD_TYPE;
00393 static const String XML_KEYWORD_VAL;
00394 static const String XML_COLKW_COL;
00395 static const String XML_FIELD_NAME;
00396 static const String XML_FIELD_TYPE;
00397 static const String XML_FIELD_UNIT;
00398 static const String XML_FIELD_UCD;
00399 static const String XML_FIELD_REF;
00400 static const String XML_FIELD_PRECISION;
00401 static const String XML_FIELD_WIDTH;
00402
00403
00404
00405 static const String ERROR_EMPTY;
00406
00407
00408 static const XMLCh* xstr(char* str);
00409
00410
00411 static const XMLCh* xstr(String str);
00412
00413
00414 static String xstr(XMLCh* str);
00415
00416
00417 static String xstr(const XMLCh* str);
00418
00419
00420
00421
00422
00423 static String itoa(int n);
00424
00425
00426
00427 static String uitoa(unsigned int n);
00428
00429
00430
00431 static String sitoa(short int n);
00432
00433
00434 static String ftoa(float f, int decimals = -1, bool scientific = false);
00435
00436
00437 static String dtoa(double d, int decimals = -1, bool scientific = false);
00438
00439
00440
00441 static int atoi(String& str, int* i);
00442
00443
00444
00445 static int atoui(String& str, unsigned int* i);
00446
00447
00448
00449 static int atosi(String& str, short int* i);
00450
00451
00452
00453 static int atof(String& str, float* f);
00454
00455
00456
00457 static int atod(String& str, double* d);
00458
00459
00460 static int round(double d);
00461
00462
00463 static bool isWS(char c);
00464
00465
00466
00467 static void strtrim(String& str);
00468
00469
00470
00471 static void toLower(String& str);
00472
00473
00474
00475 static unsigned int findWS(String& str, int index = 0);
00476
00477
00478
00479 static unsigned int findIgnoreCase(String& str, String& find,
00480 int index = 0);
00481
00482
00483
00484 static bool equalsIgnoreCase(String str1, String str2);
00485
00486
00487
00488 static String nameFromPath(String& path);
00489
00490
00491
00492 static String dirFromPath(String& path);
00493
00494
00495
00496
00497
00498
00499 static const String OPEN_TEXT_LOCAL;
00500 static const String OPEN_TEXT_REMOTE;
00501 static const String OPEN_TEXT_HOST;
00502 static const String OPEN_TEXT_PORT;
00503 static const String OPEN_TEXT_LOCATION;
00504 static const String OPEN_TEXT_DIRECT;
00505 static const String OPEN_TEXT_XML;
00506 static const String OPEN_TEXT_HOME;
00507 static const String OPEN_TEXT_DOM;
00508 static const String OPEN_TEXT_SAX;
00509 static const String OPEN_TEXT_START;
00510 static const String OPEN_TEXT_NUM;
00511
00512
00513
00514
00515
00516
00517
00518 static const String HELP_DIR;
00519 static const String HELP_INDEX;
00520 static const String HELP_XML;
00521 static const String HELP_XML_HELP;
00522 static const String HELP_XML_CATEGORY;
00523 static const String HELP_XML_NAME;
00524 static const String HELP_XML_GROUP;
00525 static const String HELP_XML_ITEM;
00526
00527
00528
00529
00530
00531
00532
00533
00534
00535 static const Plotter::Implementation defaultPlotterImplementation;
00536
00537
00538
00539 static PlotLinePtr defaultPlotLine(PlotFactoryPtr factory);
00540
00541
00542
00543
00544 static PlotSymbolPtr defaultPlotSymbol(PlotFactoryPtr factory);
00545
00546
00547
00548
00549
00550
00551 static const String VIEW_SAVE_LOC;
00552
00553 static const String VIEW_DOCUMENT;
00554 static const String VIEW_VIEW;
00555 static const String VIEW_LASTDIR;
00556 static const String VIEW_HISTLIMIT;
00557 static const String VIEW_TABLE;
00558 static const String VIEW_LOCATION;
00559 static const String VIEW_SELECTED;
00560 static const String VIEW_TAQL;
00561 static const String VIEW_HIDDEN;
00562 static const String VIEW_HIDDEN_LENGTH;
00563 static const String VIEW_VISIND;
00564 static const String VIEW_ROWS;
00565 static const String VIEW_ROWS_FROM;
00566 static const String VIEW_ROWS_NUM;
00567 static const String VIEW_FILTER;
00568 static const String VIEW_FILTER_RULE;
00569 static const String VIEW_FILTER_RULE_FIELD;
00570 static const String VIEW_FILTER_RULE_COMPARATOR;
00571 static const String VIEW_FILTER_RULE_VALUE;
00572 static const String VIEW_FILTER_RULE_VALUE2;
00573 static const String VIEW_FILTER_RULE_NOT;
00574 static const String VIEW_FILTER_RULE_ANY;
00575 static const String VIEW_FILTER_RULE_TYPE;
00576 static const String VIEW_FORMATS;
00577 static const String VIEW_FORMAT;
00578 static const String VIEW_FORMAT_COL;
00579 static const String VIEW_FORMAT_DECIMALS;
00580 static const String VIEW_FORMAT_SFORMAT;
00581 static const String VIEW_FORMAT_BFORMAT;
00582 static const String VIEW_FORMAT_DFORMAT;
00583 static const String VIEW_FORMAT_VTHRESHOLD;
00584 static const String VIEW_FORMAT_ALLFONT;
00585 static const String VIEW_FORMAT_FONT;
00586 static const String VIEW_FORMAT_COLOR;
00587 static const String VIEW_FORMAT_FAMILY;
00588 static const String VIEW_FORMAT_SIZE;
00589 static const String VIEW_FORMAT_BOLD;
00590 static const String VIEW_FORMAT_ITALICS;
00591 static const String VIEW_FORMAT_ULINE;
00592 static const String VIEW_FORMAT_STRIKE;
00593 static const String VIEW_SORT;
00594 static const String VIEW_NAME;
00595 static const String VIEW_SORT_ASCENDING;
00596
00597
00598 private:
00599
00600 static String AIPS_PATH;
00601
00602
00603 static const String OPEN_PAGE;
00604
00605
00606 static String DOT_CASAPY_DIR;
00607 };
00608
00609 }
00610
00611 #endif