rasdaman complete source
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
raslib
mddtypes.hh
Go to the documentation of this file.
1
/*
2
* This file is part of rasdaman community.
3
*
4
* Rasdaman community is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, either version 3 of the License, or
7
* (at your option) any later version.
8
*
9
* Rasdaman community is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with rasdaman community. If not, see <http://www.gnu.org/licenses/>.
16
*
17
* Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann /
18
rasdaman GmbH.
19
*
20
* For more information please see <http://www.rasdaman.org>
21
* or contact Peter Baumann via <baumann@rasdaman.com>.
22
/
36
#ifndef _D_MDDTYPES_
37
#define _D_MDDTYPES_
38
39
40
#ifdef __VISUALC__
41
#include <strstrea.h>
42
#else
43
#include <sstream>
44
#endif
45
46
#include <stdint.h>
47
48
//typedef unsigned int uint32;
49
//typedef int int32;
50
51
//@Man: r_Bytes
52
//@Type: typedef
53
//@Args: as unsigned int
54
//@Memo: Module: {\bf raslib}.
55
56
typedef unsigned int r_Bytes;
57
64
//@Man: r_Ptr
65
//@Type: typedef
66
//@Args: as unsigned long
67
//@Memo: Module: {\bf raslib}.
68
69
typedef unsigned long r_Ptr;
70
80
//@Man: r_Area
81
//@Type: typedef
82
//@Args: as unsigned int
83
//@Memo: Module: {\bf raslib}.
84
85
typedef uint64_t r_Area;
86
95
//@Man: r_Range
96
//@Type: typedef
97
//@Args: as int
98
//@Memo: Module: {\bf raslib}.
99
100
typedef int r_Range;
101
113
//@Man: r_Dimension
114
//@Type: typedef
115
//@Args: as unsigned int
116
//@Memo: Module: {\bf raslib}.
117
118
typedef unsigned int r_Dimension;
119
128
//@Man: r_Data_Format
129
//@Type: enum
130
//@Args:
131
//@Memo: Module: {\bf raslib}.
132
133
enum r_Data_Format
134
{
135
r_Array,
136
r_TIFF,
137
r_JPEG,
138
r_HDF,
139
r_NETCDF,
140
r_CSV,
141
r_PNG,
142
r_ZLib,
143
r_Auto_Compression,
144
r_BMP,
145
r_RLE,
146
r_Wavelet_Haar,
147
r_Wavelet_Daubechies, // = Daubechies 4 tap
148
r_Sep_ZLib,
149
r_Sep_RLE,
150
r_Wavelet_Daub6,
151
r_Wavelet_Daub8,
152
r_Wavelet_Daub10,
153
r_Wavelet_Daub12,
154
r_Wavelet_Daub14,
155
r_Wavelet_Daub16,
156
r_Wavelet_Daub18,
157
r_Wavelet_Daub20,
158
r_Wavelet_Least8,
159
r_Wavelet_Least10,
160
r_Wavelet_Least12,
161
r_Wavelet_Least14,
162
r_Wavelet_Least16,
163
r_Wavelet_Least18,
164
r_Wavelet_Least20,
165
r_Wavelet_Coiflet6,
166
r_Wavelet_Coiflet12,
167
r_Wavelet_Coiflet18,
168
r_Wavelet_Coiflet24,
169
r_Wavelet_Coiflet30,
170
r_VFF,
171
r_Wavelet_QHaar,
172
r_PPM,
173
r_TOR,
174
r_DEM,
175
r_Pack_Bits,
176
r_ECW,
177
r_TMC,
178
r_NTF,
179
r_Data_Format_NUMBER
180
};
181
217
//@ManMemo: Module: {\bf raslib}
227
extern const char *format_name_array;
228
extern const char *format_name_tiff;
229
extern const char *format_name_jpeg;
230
extern const char *format_name_hdf;
231
extern const char *format_name_netcdf;
232
extern const char *format_name_png;
233
extern const char *format_name_zlib;
234
extern const char *format_name_auto_compression;
235
extern const char *format_name_bmp;
236
extern const char *format_name_ppm;
237
extern const char *format_name_rle;
238
extern const char *format_name_wavelet_haar;
239
extern const char *format_name_wavelet_daubechies;
240
extern const char *format_name_sep_zlib;
241
extern const char *format_name_sep_rle;
242
extern const char *format_name_wavelet_daub6;
243
extern const char *format_name_wavelet_daub8;
244
extern const char *format_name_wavelet_daub10;
245
extern const char *format_name_wavelet_daub12;
246
extern const char *format_name_wavelet_daub14;
247
extern const char *format_name_wavelet_daub16;
248
extern const char *format_name_wavelet_daub18;
249
extern const char *format_name_wavelet_daub20;
250
extern const char *format_name_wavelet_least8;
251
extern const char *format_name_wavelet_least10;
252
extern const char *format_name_wavelet_least12;
253
extern const char *format_name_wavelet_least14;
254
extern const char *format_name_wavelet_least16;
255
extern const char *format_name_wavelet_least18;
256
extern const char *format_name_wavelet_least20;
257
extern const char *format_name_wavelet_coiflet6;
258
extern const char *format_name_wavelet_coiflet12;
259
extern const char *format_name_wavelet_coiflet18;
260
extern const char *format_name_wavelet_coiflet24;
261
extern const char *format_name_wavelet_coiflet30;
262
extern const char *format_name_vff;
263
extern const char *format_name_tor;
264
extern const char *format_name_dem;
265
extern const char *format_name_pack_bits;
266
extern const char *format_name_wavelet_qhaar;
267
extern const char *format_name_tmc;
268
extern const char *format_name_ntf;
269
270
extern const char *all_data_format_names[r_Data_Format_NUMBER];
271
272
//@ManMemo: Module: {\bf raslib}
276
const char *get_name_from_data_format( r_Data_Format fmt );
277
278
//@ManMemo: Module: {\bf raslib}
282
r_Data_Format get_data_format_from_name ( const char *name );
283
284
285
//@ManMemo: Module: {\bf raslib}
289
extern std::ostream& operator<<( std::ostream& s, const r_Data_Format& d );
290
291
292
293
//@ManMemo: Module: {\bf raslib}
297
extern std::ostream& operator<<( std::ostream& s, r_Data_Format& d );
298
299
//@Man: r_Scale_Function
300
//@Type: enum
301
//@Args:
302
//@Memo: Module: {\bf raslib}.
303
304
enum r_Scale_Function
305
{
306
r_SubSampling,
307
r_BitAggregation,
308
r_Scale_Function_NUMBER
309
};
310
311
extern const char *scale_function_name_subsampling;
312
extern const char *scale_function_name_bitaggregation;
313
314
extern const char *all_scale_function_names[r_Scale_Function_NUMBER];
315
316
//@ManMemo: Module: {\bf raslib}
320
const char *get_name_from_scale_function(r_Scale_Function func);
321
322
//@ManMemo: Module: {\bf raslib}
326
r_Scale_Function get_scale_function_from_name(const char *name);
327
328
329
//@ManMemo: Module: {\bf raslib}
333
extern std::ostream& operator<<( std::ostream& s, const r_Scale_Function& d );
334
335
336
//@Man: r_Index_Type
337
//@Type: enum
338
//@Args:
339
//@Memo: Module: {\bf raslib}.
340
341
enum r_Index_Type
342
{
343
r_Invalid_Index = -1,
344
r_Auto_Index = 0,
345
r_Directory_Index = 1,
346
r_Reg_Directory_Index = 2,
347
r_RPlus_Tree_Index = 3,
348
r_Reg_RPlus_Tree_Index = 4,
349
r_Tile_Container_Index = 5,
350
r_Reg_Computed_Index = 6,
351
r_Index_Type_NUMBER = 7
352
};
353
354
extern std::ostream& operator<<(std::ostream& in, r_Index_Type type);
355
356
//@ManMemo: Module: {\bf raslib}
366
extern const char *index_name_auto;
367
extern const char *index_name_directory;
368
extern const char *index_name_regdirectory;
369
extern const char *index_name_rplustree;
370
extern const char *index_name_regrplustree;
371
extern const char *index_name_tilecontainer;
372
extern const char *index_name_regcomputed;
373
374
extern const char *all_index_type_names[r_Index_Type_NUMBER];
375
376
//@ManMemo: Module: {\bf raslib}
380
const char *get_name_from_index_type( r_Index_Type it );
381
382
//@ManMemo: Module: {\bf raslib}
386
r_Index_Type get_index_type_from_name ( const char *name );
387
388
//@Man: r_Tiling_Scheme
389
//@Type: enum
390
//@Args:
391
//@Memo: Module: {\bf raslib}.
392
393
enum r_Tiling_Scheme
394
{
395
r_NoTiling = 0,
396
r_RegularTiling = 1,
397
r_StatisticalTiling = 2,
398
r_InterestTiling = 3,
399
r_AlignedTiling = 4,
400
r_DirectionalTiling = 5,
401
r_SizeTiling = 6,
402
r_Tiling_Scheme_NUMBER = 7
403
};
425
//@ManMemo: Module: {\bf raslib}
435
extern const char *tiling_name_notiling;
436
extern const char *tiling_name_regulartiling;
437
extern const char *tiling_name_statisticaltiling;
438
extern const char *tiling_name_interesttiling;
439
extern const char *tiling_name_alignedtiling;
440
extern const char *tiling_name_directionaltiling;
441
extern const char *tiling_name_sizetiling;
442
443
extern const char *all_tiling_scheme_names[r_Tiling_Scheme_NUMBER];
444
445
//@ManMemo: Module: {\bf raslib}
449
const char *get_name_from_tiling_scheme( r_Tiling_Scheme ts );
450
451
//@ManMemo: Module: {\bf raslib}
455
r_Tiling_Scheme get_tiling_scheme_from_name ( const char *name );
456
457
//@ManMemo: Module: {\bf raslib}
461
extern std::ostream& operator<<(std::ostream& in, r_Tiling_Scheme type);
462
463
//@Man: r_Clustering_Scheme
464
//@Type: enum
465
//@Args:
466
//@Memo: Module: {\bf raslib}.
467
enum r_Clustering_Scheme
468
{
469
r_Insertion_Order_Clustering = 1,
470
r_Coords_Order_Clustering = 2,
471
r_Index_Cluster_Clustering = 3,
472
r_Based_Cluster_Stat_Clustering = 4
473
};
491
extern std::ostream& operator<<(std::ostream& in, r_Clustering_Scheme type);
492
493
#ifdef __VISUALC__
494
extern int strcasecmp( const char *str1, const char *str2 );
495
#endif
496
497
#endif
Generated on Sun Jun 8 2014 16:36:10 for rasdaman complete source by
1.8.6