UVES Pipeline Reference Manual  5.4.6
uves_propertylist.h
1 /* $Id: uves_propertylist.h,v 1.11 2010-09-24 09:32:07 amodigli Exp $
2  *
3  * This file is part of the ESO Common Pipeline Library
4  * Copyright (C) 2001-2005 European Southern Observatory
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19  */
20 
21 /*
22  * $Author: amodigli $
23  * $Date: 2010-09-24 09:32:07 $
24  * $Revision: 1.11 $
25  * $Name: not supported by cvs2svn $
26  */
27 
28 #ifndef UVES_PROPERTYLIST_H
29 #define UVES_PROPERTYLIST_H
30 
31 /* Define appropriately to switch on/off cpl_propertylists */
32 #undef USE_CPL
33 //#define USE_CPL
34 
35 #ifdef USE_CPL
36 /* Workaround code ahead. No, it is not nice. */
37 #include <cpl.h>
38 #include <fitsio.h>
39 #include <longnam.h>
40 
41 #define uves_propertylist cpl_propertylist
42 
43 #define uves_vector_save(a, b, c, d, e) \
44  cpl_vector_save(a, b, c, d, e)
45 #define uves_image_save(a, b, c, d, e) \
46  cpl_image_save(a, b, c, d, e)
47 #define uves_imagelist_save(a, b, c, d, e) \
48  cpl_imagelist_save(a, b, c, d, e)
49 #define uves_table_save(a, b, c, d, e) \
50  cpl_table_save(a, b, c, d, e)
51 #define uves_dfs_setup_product_header(a, b, c, d, e, f, g) \
52  cpl_dfs_setup_product_header(a, b, c, d, e, f, g)
53 //#define uves_table_sort(a, b)
54 // cpl_table_sort(a, b)
55 #define uves_propertylist_new() \
56  cpl_propertylist_new()
57 #define uves_propertylist_duplicate(a) \
58  cpl_propertylist_duplicate(a)
59 #define uves_propertylist_delete(a) \
60  cpl_propertylist_delete(a)
61 #define uves_propertylist_get_size(a) \
62  cpl_propertylist_get_size(a)
63 #define uves_propertylist_is_empty(a) \
64  cpl_propertylist_is_empty(a)
65 #define uves_propertylist_get_type(a, b) \
66  cpl_propertylist_get_type(a, b)
67 #define uves_propertylist_contains(a, b) \
68  cpl_propertylist_contains(a, b)
69 #define my_uves_propertylist_contains(a, b) \
70  cpl_propertylist_contains(a, b)
71 
72 #define uves_propertylist_set_comment(a, b, c) \
73  cpl_propertylist_set_comment(a, b, c)
74 #define uves_propertylist_set_char(a, b, c) \
75  cpl_propertylist_set_char(a, b, c)
76 #define uves_propertylist_set_bool(a, b, c) \
77  cpl_propertylist_set_bool(a, b, c)
78 #define uves_propertylist_set_int(a, b, c) \
79  cpl_propertylist_set_int(a, b, c)
80 #define uves_propertylist_set_long(a, b, c) \
81  cpl_propertylist_set_long(a, b, c)
82 #define uves_propertylist_set_float(a, b, c) \
83  cpl_propertylist_set_float(a, b, c)
84 #define uves_propertylist_set_double(a, b, c) \
85  cpl_propertylist_set_double(a, b, c)
86 #define uves_propertylist_set_string(a, b, c) \
87  cpl_propertylist_set_string(a, b, c)
88 #define uves_propertylist_get_const(a, b) \
89  cpl_propertylist_get(a, b)
90 #define uves_propertylist_get(a, b) \
91  cpl_propertylist_get(a, b)
92 #define uves_propertylist_get_comment(a, b) \
93  cpl_propertylist_get_comment(a, b)
94 #define uves_propertylist_get_char(a, b) \
95  cpl_propertylist_get_char(a, b)
96 #define uves_propertylist_get_bool(a, b) \
97  cpl_propertylist_get_bool(a, b)
98 #define uves_propertylist_get_int(a, b) \
99  cpl_propertylist_get_int(a, b)
100 #define uves_propertylist_get_long(a, b) \
101  cpl_propertylist_get_long(a, b)
102 #define uves_propertylist_get_float(a, b) \
103  cpl_propertylist_get_float(a, b)
104 #define uves_propertylist_get_double(a, b) \
105  cpl_propertylist_get_double(a, b)
106 #define uves_propertylist_get_string(a, b) \
107  cpl_propertylist_get_string(a, b)
108 #define uves_propertylist_insert_char(a, b, c, d) \
109  cpl_propertylist_insert_char(a, b, c, d)
110 #define uves_propertylist_insert_bool(a, b, c, d) \
111  cpl_propertylist_insert_bool(a, b, c, d)
112 #define uves_propertylist_insert_int(a, b, c, d) \
113  cpl_propertylist_insert_int(a, b, c, d)
114 #define uves_propertylist_insert_long(a, b, c, d) \
115  cpl_propertylist_insert_long(a, b, c, d)
116 #define uves_propertylist_insert_float(a, b, c, d) \
117  cpl_propertylist_insert_float(a, b, c, d)
118 #define uves_propertylist_insert_double(a, b, c, d) \
119  cpl_propertylist_insert_double(a, b, c, d)
120 #define uves_propertylist_insert_string(a, b, c, d) \
121  cpl_propertylist_insert_string(a, b, c, d)
122 #define uves_propertylist_insert_after_char(a, b, c, d) \
123  cpl_propertylist_insert_after_char(a, b, c, d)
124 #define uves_propertylist_insert_after_bool(a, b, c, d) \
125  cpl_propertylist_insert_after_bool(a, b, c, d)
126 #define uves_propertylist_insert_after_int(a, b, c, d) \
127  cpl_propertylist_insert_after_int(a, b, c, d)
128 #define uves_propertylist_insert_after_long(a, b, c, d) \
129  cpl_propertylist_insert_after_long(a, b, c, d)
130 #define uves_propertylist_insert_after_float(a, b, c, d) \
131  cpl_propertylist_insert_after_float(a, b, c, d)
132 #define uves_propertylist_insert_after_double(a, b, c, d) \
133  cpl_propertylist_insert_after_double(a, b, c, d)
134 #define uves_propertylist_insert_after_string(a, b, c, d) \
135  cpl_propertylist_insert_after_string(a, b, c, d)
136 #define uves_propertylist_prepend_char(a, b, c) \
137  cpl_propertylist_prepend_char(a, b, c)
138 #define uves_propertylist_prepend_bool(a, b, c) \
139  cpl_propertylist_prepend_bool(a, b, c)
140 #define uves_propertylist_prepend_int(a, b, c) \
141  cpl_propertylist_prepend_int(a, b, c)
142 #define uves_propertylist_prepend_long(a, b, c) \
143  cpl_propertylist_prepend_long(a, b, c)
144 #define uves_propertylist_prepend_float(a, b, c) \
145  cpl_propertylist_prepend_float(a, b, c)
146 #define uves_propertylist_prepend_double(a, b, c) \
147  cpl_propertylist_prepend_double(a, b, c)
148 #define uves_propertylist_prepend_string(a, b, c) \
149  cpl_propertylist_prepend_string(a, b, c)
150 #define uves_propertylist_append_char(a, b, c) \
151  cpl_propertylist_append_char(a, b, c)
152 #define uves_propertylist_append_bool(a, b, c) \
153  cpl_propertylist_append_bool(a, b, c)
154 #define uves_propertylist_append_int(a, b, c) \
155  cpl_propertylist_append_int(a, b, c)
156 #define uves_propertylist_append_long(a, b, c) \
157  cpl_propertylist_append_long(a, b, c)
158 #define uves_propertylist_append_float(a, b, c) \
159  cpl_propertylist_append_float(a, b, c)
160 #define uves_propertylist_append_double(a, b, c) \
161  cpl_propertylist_append_double(a, b, c)
162 #define uves_propertylist_append_string(a, b, c) \
163  cpl_propertylist_append_string(a, b, c)
164 #define uves_propertylist_append(a, b) \
165  cpl_propertylist_append(a, b)
166 #define uves_propertylist_erase(a, b) \
167  cpl_propertylist_erase(a, b)
168 #define uves_propertylist_erase_regexp(a, b, c) \
169  cpl_propertylist_erase_regexp(a, b, c)
170 #define uves_propertylist_empty(a) \
171  cpl_propertylist_empty(a)
172 #define uves_propertylist_update_char(a, b, c) \
173  cpl_propertylist_update_char(a, b, c)
174 #define uves_propertylist_update_bool(a, b, c) \
175  cpl_propertylist_update_bool(a, b, c)
176 #define uves_propertylist_update_int(a, b, c) \
177  cpl_propertylist_update_int(a, b, c)
178 #define uves_propertylist_update_long(a, b, c) \
179  cpl_propertylist_update_long(a, b, c)
180 #define uves_propertylist_update_float(a, b, c) \
181  cpl_propertylist_update_float(a, b, c)
182 #define uves_propertylist_update_double(a, b, c) \
183  cpl_propertylist_update_double(a, b, c)
184 #define uves_propertylist_update_string(a, b, c) \
185  cpl_propertylist_update_string(a, b, c)
186 #define uves_propertylist_copy_property(a, b, c) \
187  cpl_propertylist_copy_property(a, b, c)
188 #define uves_propertylist_copy_property_regexp(a, b, c, d) \
189  cpl_propertylist_copy_property_regexp(a, b, c, d)
190 #define uves_propertylist_load(a, b) \
191  cpl_propertylist_load(a, b)
192 #define uves_propertylist_load_regexp(a, b, c, d) \
193  cpl_propertylist_load_regexp(a, b, c, d)
194 #define uves_propertylist_to_fits(a) \
195  cpl_propertylist_to_fits(a)
196 #define uves_propertylist_from_fits(a) \
197  cpl_propertylist_from_fits(a)
198 
199 #else /* if USE_CPL */
200 
201 #include <cpl.h>
202 #include <qfits.h>
203 
212 
213 
214 /*
215  * Wrappers for functions which have cpl_propertylists in their interface
216  */
217 cpl_error_code uves_vector_save(const cpl_vector *v, const char *f, cpl_type_bpp bpp,
218  const uves_propertylist *header, unsigned mode);
219 cpl_error_code uves_image_save(const cpl_image *image, const char *f, cpl_type_bpp bpp,
220  const uves_propertylist *header, unsigned mode);
221 cpl_error_code uves_imagelist_save(const cpl_imagelist *imagelist, const char *f, cpl_type_bpp bpp,
222  const uves_propertylist *header, unsigned mode);
223 cpl_error_code uves_table_save(const cpl_table *table, const uves_propertylist *header,
224  const uves_propertylist *ext_header, const char *filename,
225  unsigned mode);
226 cpl_error_code uves_dfs_setup_product_header(uves_propertylist *header,
227  const cpl_frame *frame,
228  const cpl_frameset *set,
229  const cpl_parameterlist *par,
230  const char *c1,
231  const char *c2,
232  const char *c3);
233 cpl_error_code uves_table_sort(cpl_table *, const uves_propertylist *);
234 
235 /*
236  * Create, copy and destroy operations.
237  */
238 
241 
244 
245 void
247 
248 
249 /*
250  * Non modifying operations
251  */
252 
253 long
255 
256 int
258 
259 cpl_type
260 uves_propertylist_get_type(const uves_propertylist *self, const char *name);
261 
262 int
263 uves_propertylist_contains(const uves_propertylist *self, const char *name);
264 
265 int
266 my_uves_propertylist_contains(const cpl_propertylist *self, const char *name);
267 
268 
269 /*
270  * Assignment operations
271  */
272 
273 cpl_error_code
274 uves_propertylist_set_comment(uves_propertylist *self, const char *name,
275  const char *comment);
276 cpl_error_code
277 uves_propertylist_set_char(uves_propertylist *self, const char *name,
278  char value);
279 cpl_error_code
280 uves_propertylist_set_bool(uves_propertylist *self, const char *name ,
281  int value);
282 cpl_error_code
283 uves_propertylist_set_int(uves_propertylist *self, const char *name,
284  int value);
285 cpl_error_code
286 uves_propertylist_set_long(uves_propertylist *self, const char *name,
287  long value);
288 cpl_error_code
289 uves_propertylist_set_float(uves_propertylist *self, const char *name,
290  float value);
291 cpl_error_code
292 uves_propertylist_set_double(uves_propertylist *self, const char *name,
293  double value);
294 cpl_error_code
295 uves_propertylist_set_string(uves_propertylist *self, const char *name,
296  const char *value);
297 
298 /*
299  * Element access
300  */
301 
302 const cpl_property *
303 uves_propertylist_get_const(const uves_propertylist *self, long position);
304 
305 cpl_property *
306 uves_propertylist_get(uves_propertylist *self, long position);
307 
308 const char *
309 uves_propertylist_get_comment(const uves_propertylist *self, const char *name);
310 
311 char
312 uves_propertylist_get_char(const uves_propertylist *self, const char *name);
313 
314 int
315 uves_propertylist_get_bool(const uves_propertylist *self, const char *name);
316 
317 int
318 uves_propertylist_get_int(const uves_propertylist *self, const char *name);
319 
320 long
321 uves_propertylist_get_long(const uves_propertylist *self, const char *name);
322 
323 float
324 uves_propertylist_get_float(const uves_propertylist *self, const char *name);
325 
326 double
327 uves_propertylist_get_double(const uves_propertylist *self, const char *name);
328 
329 const char *
330 uves_propertylist_get_string(const uves_propertylist *self, const char *name);
331 
332 
333 /*
334  * Inserting and removing elements
335  */
336 
337 cpl_error_code
338 uves_propertylist_insert_char(uves_propertylist *self, const char *here,
339  const char *name, char value);
340 
341 cpl_error_code
342 uves_propertylist_insert_bool(uves_propertylist *self, const char *here,
343  const char *name, int value);
344 
345 cpl_error_code
346 uves_propertylist_insert_int(uves_propertylist *self, const char *here,
347  const char *name, int value);
348 
349 cpl_error_code
350 uves_propertylist_insert_long(uves_propertylist *self, const char *here,
351  const char *name, long value);
352 
353 cpl_error_code
354 uves_propertylist_insert_float(uves_propertylist *self, const char *here,
355  const char *name, float value);
356 
357 cpl_error_code
358 uves_propertylist_insert_double(uves_propertylist *self, const char *here,
359  const char *name, double value);
360 
361 cpl_error_code
362 uves_propertylist_insert_string(uves_propertylist *self, const char *here,
363  const char *name, const char *value);
364 
365 
366 cpl_error_code
368  const char *name, char value);
369 
370 cpl_error_code
372  const char *name, int value);
373 
374 cpl_error_code
376  const char *name, int value);
377 
378 cpl_error_code
380  const char *name, long value);
381 
382 cpl_error_code
384  const char *name, float value);
385 
386 cpl_error_code
388  const char *name, double value);
389 
390 cpl_error_code
392  const char *name, const char *value);
393 
394 
395 cpl_error_code
396 uves_propertylist_prepend_char(uves_propertylist *self, const char *name,
397  char value);
398 
399 cpl_error_code
400 uves_propertylist_prepend_bool(uves_propertylist *self, const char *name,
401  int value);
402 cpl_error_code
403 uves_propertylist_prepend_int(uves_propertylist *self, const char *name,
404  int value);
405 
406 cpl_error_code
407 uves_propertylist_prepend_long(uves_propertylist *self, const char *name,
408  long value);
409 
410 cpl_error_code
411 uves_propertylist_prepend_float(uves_propertylist *self, const char *name,
412  float value);
413 
414 cpl_error_code
416  double value);
417 
418 cpl_error_code
420  const char *value);
421 
422 
423 
424 cpl_error_code
425 uves_propertylist_append_c_char(uves_propertylist *self, const char *name,
426  char value, const char *comment);
427 
428 cpl_error_code
429 uves_propertylist_append_c_bool(uves_propertylist *self, const char *name,
430  int value, const char *comment);
431 
432 cpl_error_code
433 uves_propertylist_append_c_int(uves_propertylist *self, const char *name,
434  int value, const char *comment);
435 
436 cpl_error_code
437 uves_propertylist_append_c_long(uves_propertylist *self, const char *name,
438  long value, const char *comment);
439 
440 cpl_error_code
442  float value, const char *comment);
443 
444 cpl_error_code
446  double value, const char *comment);
447 
448 cpl_error_code
450  const char *value, const char *comment);
451 
452 
453 
454 
455 cpl_error_code
456 uves_propertylist_append_char(uves_propertylist *self, const char *name,
457  char value);
458 
459 cpl_error_code
460 uves_propertylist_append_bool(uves_propertylist *self, const char *name,
461  int value);
462 
463 cpl_error_code
464 uves_propertylist_append_int(uves_propertylist *self, const char *name,
465  int value);
466 
467 cpl_error_code
468 uves_propertylist_append_long(uves_propertylist *self, const char *name,
469  long value);
470 
471 cpl_error_code
472 uves_propertylist_append_float(uves_propertylist *self, const char *name,
473  float value);
474 
475 cpl_error_code
476 uves_propertylist_append_double(uves_propertylist *self, const char *name,
477  double value);
478 
479 cpl_error_code
480 uves_propertylist_append_string(uves_propertylist *self, const char *name,
481  const char *value);
482 
483 
484 cpl_error_code
486  const uves_propertylist *other);
487 
488 int
489 uves_propertylist_erase(uves_propertylist *self, const char *name);
490 
491 int
492 uves_propertylist_erase_regexp(uves_propertylist *self, const char *regexp,
493  int invert);
494 
495 void
497 
498 
499 /*
500  * Convenience functions
501  */
502 int
503 uves_propertylist_has(const uves_propertylist *self, const char *name);
504 
505 cpl_error_code
506 uves_propertylist_update_char(uves_propertylist *self, const char *name,
507  char value);
508 cpl_error_code
509 uves_propertylist_update_bool(uves_propertylist *self, const char *name,
510  int value);
511 cpl_error_code
512 uves_propertylist_update_int(uves_propertylist *self, const char *name,
513  int value);
514 cpl_error_code
515 uves_propertylist_update_long(uves_propertylist *self, const char *name,
516  long value);
517 cpl_error_code
518 uves_propertylist_update_float(uves_propertylist *self, const char *name,
519  float value);
520 cpl_error_code
521 uves_propertylist_update_double(uves_propertylist *self, const char *name,
522  double value);
523 cpl_error_code
524 uves_propertylist_update_string(uves_propertylist *self, const char *name,
525  const char *value);
526 
527 cpl_error_code
529  const uves_propertylist *other,
530  const char *name);
531 cpl_error_code
533  const uves_propertylist *other,
534  const char *regexp,
535  int invert);
536 
537 /*
538  * Loading, saving and conversion operations.
539  */
540 
542 uves_propertylist_load(const char *name, int position);
543 
545 uves_propertylist_load_regexp(const char *name, int position,
546  const char *regexp, int invert);
547 
548 
549 
550 /* Internal functions */
551 qfits_header *
552 uves_propertylist_to_fits(const uves_propertylist *self);
553 
555 uves_propertylist_from_fits(const qfits_header *header);
556 
557 cpl_propertylist *
558 my_uves_propertylist_from_fits(const cpl_propertylist *header);
559 
560 
561 /*
562 cxint
563 _my_uves_propertylist_from_fitsfile(cpl_propertylist *self, fitsfile *file,
564  cx_compare_func filter, cxptr data);
565 
566 
567 static cxint
568 _my_uves_propertylist_to_fitsfile(fitsfile *file, const cpl_propertylist *self,
569  cx_compare_func filter, cxptr data);
570 cpl_propertylist *
571 my_uves_propertylist_from_fitsfile(fitsfile *file);
572 */
573 
574 #endif /* USE_CPL */
575 
576 #endif /* UVES_PROPERTYLIST_H */
const cpl_property * uves_propertylist_get_const(const uves_propertylist *self, long position)
Access property list elements by index.
cpl_error_code uves_propertylist_prepend_long(uves_propertylist *self, const char *name, long value)
Prepend a long value to a property list.
cpl_error_code uves_propertylist_insert_after_double(uves_propertylist *self, const char *after, const char *name, double value)
Insert a double value into a property list after the given position.
int uves_propertylist_get_bool(const uves_propertylist *self, const char *name)
Get the boolean value of the given property list entry.
const char * uves_propertylist_get_comment(const uves_propertylist *self, const char *name)
Get the comment of the given property list entry.
cpl_error_code uves_propertylist_prepend_string(uves_propertylist *self, const char *name, const char *value)
Prepend a string value to a property list.
cpl_error_code uves_propertylist_insert_int(uves_propertylist *self, const char *here, const char *name, int value)
Insert a integer value into a property list at the given position.
void uves_propertylist_empty(uves_propertylist *self)
Remove all properties from a property list.
int uves_propertylist_erase(uves_propertylist *self, const char *name)
Erase the given property from a property list.
cpl_error_code uves_propertylist_insert_after_char(uves_propertylist *self, const char *after, const char *name, char value)
Insert a character value into a property list after the given position.
int uves_propertylist_is_empty(const uves_propertylist *self)
Check whether a property list is empty.
double uves_propertylist_get_double(const uves_propertylist *self, const char *name)
Get the double value of the given property list entry.
cpl_error_code uves_propertylist_insert_float(uves_propertylist *self, const char *here, const char *name, float value)
Insert a float value into a property list at the given position.
cpl_error_code uves_propertylist_append_c_long(uves_propertylist *self, const char *name, long value, const char *comment)
Append a long value to a property list.
cpl_error_code uves_propertylist_update_bool(uves_propertylist *self, const char *name, int value)
Update a property list with a boolean value.
cpl_error_code uves_propertylist_update_float(uves_propertylist *self, const char *name, float value)
Update a property list with a float value.
cpl_error_code uves_propertylist_set_double(uves_propertylist *self, const char *name, double value)
Set the value of the given double property list entry.
cpl_error_code uves_propertylist_insert_bool(uves_propertylist *self, const char *here, const char *name, int value)
Insert a boolean value into a property list at the given position.
cpl_error_code uves_propertylist_insert_after_long(uves_propertylist *self, const char *after, const char *name, long value)
Insert a long value into a property list after the given position.
cpl_error_code uves_propertylist_append_c_int(uves_propertylist *self, const char *name, int value, const char *comment)
Append an integer value to a property list.
cpl_error_code uves_propertylist_insert_long(uves_propertylist *self, const char *here, const char *name, long value)
Insert a long value into a property list at the given position.
cpl_error_code uves_propertylist_prepend_char(uves_propertylist *self, const char *name, char value)
Prepend a character value to a property list.
cpl_error_code uves_propertylist_update_string(uves_propertylist *self, const char *name, const char *value)
Update a property list with a string value.
long uves_propertylist_get_long(const uves_propertylist *self, const char *name)
Get the long value of the given property list entry.
cpl_error_code uves_propertylist_prepend_float(uves_propertylist *self, const char *name, float value)
Prepend a float value to a property list.
cpl_type uves_propertylist_get_type(const uves_propertylist *self, const char *name)
Get the the type of a property list entry.
uves_propertylist * uves_propertylist_new(void)
Create an empty property list.
long uves_propertylist_get_size(const uves_propertylist *self)
Get the current size of a property list.
cpl_error_code uves_propertylist_set_comment(uves_propertylist *self, const char *name, const char *comment)
Modify the comment field of the given property list entry.
const char * uves_propertylist_get_string(const uves_propertylist *self, const char *name)
Get the string value of the given property list entry.
uves_propertylist * uves_propertylist_load(const char *name, int position)
Create a property list from a file.
cpl_error_code uves_propertylist_set_string(uves_propertylist *self, const char *name, const char *value)
Set the value of the given string property list entry.
cpl_error_code uves_propertylist_set_int(uves_propertylist *self, const char *name, int value)
Set the value of the given integer property list entry.
cpl_error_code uves_propertylist_copy_property_regexp(uves_propertylist *self, const uves_propertylist *other, const char *regexp, int invert)
Copy matching properties from another property list.
char uves_propertylist_get_char(const uves_propertylist *self, const char *name)
Get the character value of the given property list entry.
cpl_error_code uves_propertylist_append_c_float(uves_propertylist *self, const char *name, float value, const char *comment)
Append a float value to a property list.
cpl_error_code uves_propertylist_append_c_char(uves_propertylist *self, const char *name, char value, const char *comment)
Append a character value to a property list.
cpl_error_code uves_propertylist_append_c_string(uves_propertylist *self, const char *name, const char *value, const char *comment)
Append a string value to a property list.
cpl_error_code uves_propertylist_update_char(uves_propertylist *self, const char *name, char value)
Update a property list with a character value.
cpl_error_code uves_propertylist_insert_char(uves_propertylist *self, const char *here, const char *name, char value)
Insert a character value into a property list at the given position.
cpl_error_code uves_propertylist_set_float(uves_propertylist *self, const char *name, float value)
Set the value of the given float property list entry.
int my_uves_propertylist_contains(const cpl_propertylist *self, const char *name)
Check whether a property is present in a property list.
int uves_propertylist_get_int(const uves_propertylist *self, const char *name)
Get the integer value of the given property list entry.
cpl_error_code uves_propertylist_set_char(uves_propertylist *self, const char *name, char value)
Set the value of the given character property list entry.
cpl_error_code uves_propertylist_append_c_bool(uves_propertylist *self, const char *name, int value, const char *comment)
Append a boolean value to a property list.
cpl_error_code uves_propertylist_prepend_double(uves_propertylist *self, const char *name, double value)
Prepend a double value to a property list.
cpl_error_code uves_propertylist_prepend_int(uves_propertylist *self, const char *name, int value)
Prepend a integer value to a property list.
int uves_propertylist_erase_regexp(uves_propertylist *self, const char *regexp, int invert)
Erase all properties with name matching a given regular expression.
cpl_error_code uves_propertylist_insert_double(uves_propertylist *self, const char *here, const char *name, double value)
Insert a double value into a property list at the given position.
cpl_error_code uves_propertylist_insert_after_string(uves_propertylist *self, const char *after, const char *name, const char *value)
Insert a string value into a property list after the given position.
cpl_error_code uves_propertylist_insert_after_bool(uves_propertylist *self, const char *after, const char *name, int value)
Insert a boolean value into a property list after the given position.
cpl_error_code uves_propertylist_update_long(uves_propertylist *self, const char *name, long value)
Update a property list with a long value.
cpl_error_code uves_propertylist_insert_after_int(uves_propertylist *self, const char *after, const char *name, int value)
Insert a integer value into a property list after the given position.
cpl_error_code uves_propertylist_set_long(uves_propertylist *self, const char *name, long value)
Set the value of the given long property list entry.
uves_propertylist * uves_propertylist_duplicate(const uves_propertylist *other)
Create a copy of the given property list.
int uves_propertylist_contains(const uves_propertylist *self, const char *name)
Check whether a property is present in a property list.
void uves_propertylist_delete(const uves_propertylist *self)
Destroy a property list.
cpl_error_code uves_propertylist_append_c_double(uves_propertylist *self, const char *name, double value, const char *comment)
Append a double value to a property list.
float uves_propertylist_get_float(const uves_propertylist *self, const char *name)
Get the float value of the given property list entry.
cpl_error_code uves_propertylist_update_int(uves_propertylist *self, const char *name, int value)
Update a property list with a integer value.
cpl_error_code uves_propertylist_insert_after_float(uves_propertylist *self, const char *after, const char *name, float value)
Insert a float value into a property list after the given position.
cpl_error_code uves_propertylist_set_bool(uves_propertylist *self, const char *name, int value)
Set the value of the given boolean property list entry.
cpl_error_code uves_propertylist_prepend_bool(uves_propertylist *self, const char *name, int value)
Prepend a boolean value to a property list.
cpl_error_code uves_propertylist_insert_string(uves_propertylist *self, const char *here, const char *name, const char *value)
Insert a string value into a property list at the given position.
int uves_propertylist_has(const uves_propertylist *self, const char *name)
Check whether a property is present in a property list.
uves_propertylist * uves_propertylist_load_regexp(const char *name, int position, const char *regexp, int invert)
Create a filtered property list from a file.
cpl_error_code uves_propertylist_update_double(uves_propertylist *self, const char *name, double value)
Update a property list with a double value.
cpl_error_code uves_propertylist_append(uves_propertylist *self, const uves_propertylist *other)
Append a property list..
cpl_error_code uves_propertylist_copy_property(uves_propertylist *self, const uves_propertylist *other, const char *name)
Copy a property from another property list.