TPCCLIB
Loading...
Searching...
No Matches
tpcift.h
Go to the documentation of this file.
1
6#ifndef _TPCIFT_H_
7#define _TPCIFT_H_
8/*****************************************************************************/
9
10/*****************************************************************************/
11#include "tpcclibConfig.h"
12/*****************************************************************************/
13#include <stdio.h>
14#include <stdlib.h>
15#include <string.h>
16#include <math.h>
17/*****************************************************************************/
18#include "tpcextensions.h"
19/*****************************************************************************/
20
21/*****************************************************************************/
25typedef struct IFT_ITEM {
27 char comment;
29 short int sw;
32 char *key;
37 char *value;
38} IFT_ITEM;
39
43typedef struct IFT {
45 int _memNr;
47 int keyNr;
51 int type;
58} IFT;
59/*****************************************************************************/
60
61/*****************************************************************************/
62/* ift */
63extern void iftInit(IFT *ift);
64extern void iftFree(IFT *ift);
65extern int iftPut(IFT *ift, const char *key, const char *value, char comment, TPCSTATUS *status);
66extern int iftPutDouble(IFT *ift, const char *key, const double value, char comment, TPCSTATUS *status);
67extern int iftPutInt(IFT *ift, const char *key, const int value, char comment, TPCSTATUS *status);
68extern int iftPutUInt(IFT *ift, const char *key, const unsigned int value, char comment, TPCSTATUS *status);
69extern int iftDelete(IFT *ift, int index);
70extern int iftDuplicate(IFT *ift1, IFT *ift2);
71extern int iftReplaceValue(IFT *ift, int i, const char *value, TPCSTATUS *status);
72extern int iftReplaceKey(IFT *ift, int i, const char *key, TPCSTATUS *status);
73extern int iftDeleteDuplicateKeys(IFT *ift, TPCSTATUS *status);
74extern int iftCopyItems(
75 IFT *ift1, IFT *ift2, int is_key_required, int is_value_required, int is_comment_accepted, TPCSTATUS *status
76);
77/*****************************************************************************/
78
79/*****************************************************************************/
80/* iftio */
81extern int iftWrite(IFT *ift, FILE *fp, TPCSTATUS *status);
82extern int iftWriteItem(IFT *ift, int item, FILE *fp, TPCSTATUS *status);
83extern int iftRead(IFT *ift, FILE *fp, int is_key_required, int is_comment_accepted, TPCSTATUS *status);
84extern int iftPutFromString(
85 IFT *ift, const char *line, int is_key_required, int is_comment_accepted, TPCSTATUS *status
86);
88 IFT *ift, const char *line, int is_comment_accepted, TPCSTATUS *status
89);
90/*****************************************************************************/
91
92/*****************************************************************************/
93/* iftfind */
94extern int iftFindKey(IFT *ift, const char *key, int start_index);
95extern int iftFindPair(IFT *ift, const char *key, const char *value, int start_index);
96extern int iftSearchKey(IFT *ift, const char *s, int start_index);
97extern int iftSearchValue(IFT *ift, const char *s, int start_index);
98extern int iftFindNrOfKeys(IFT *ift, const char *key);
99extern void iftDeleteKey(IFT *ift, const char *key);
100extern int iftGetDoubleValue(IFT *ift, const char *key, int index, double *v);
101/*****************************************************************************/
102
103/*****************************************************************************/
104/* iftget */
105extern int iftGetFloat(IFT *ift, int index, float *v);
106extern int iftGetDouble(IFT *ift, int index, double *v);
107extern int iftGetInt(IFT *ift, int index, int *v);
108extern int iftGetUInt(IFT *ift, int index, unsigned int *v);
109extern int iftGetDoubleWithUnit(IFT *ift, int index, double *v, int *unit);
110/*****************************************************************************/
111
112/*****************************************************************************/
113#endif /* TPCIFT */
short int sw
Definition tpcift.h:29
char comment
Definition tpcift.h:27
char * value
Definition tpcift.h:37
char * key
Definition tpcift.h:32
Definition tpcift.h:43
IFT_ITEM * item
Definition tpcift.h:57
int space_after_eq
Definition tpcift.h:55
int type
Definition tpcift.h:51
int keyNr
Definition tpcift.h:47
int space_before_eq
Definition tpcift.h:53
int _memNr
Definition tpcift.h:45
Header file for library libtpcextensions.
unit
int iftPutInt(IFT *ift, const char *key, const int value, char comment, TPCSTATUS *status)
Definition ift.c:154
void iftFree(IFT *ift)
Definition ift.c:37
int iftPutFromString(IFT *ift, const char *line, int is_key_required, int is_comment_accepted, TPCSTATUS *status)
Definition iftio.c:229
int iftSearchValue(IFT *ift, const char *s, int start_index)
Definition iftfind.c:114
int iftGetUInt(IFT *ift, int index, unsigned int *v)
Definition iftget.c:101
int iftPutFromStringWithSpaceSeparator(IFT *ift, const char *line, int is_comment_accepted, TPCSTATUS *status)
Definition iftio.c:339
int iftPutUInt(IFT *ift, const char *key, const unsigned int value, char comment, TPCSTATUS *status)
Definition ift.c:180
void iftDeleteKey(IFT *ift, const char *key)
Definition iftfind.c:169
int iftWriteItem(IFT *ift, int item, FILE *fp, TPCSTATUS *status)
Definition iftio.c:25
int iftReplaceValue(IFT *ift, int i, const char *value, TPCSTATUS *status)
Definition ift.c:268
int iftFindPair(IFT *ift, const char *key, const char *value, int start_index)
Definition iftfind.c:55
int iftGetDoubleWithUnit(IFT *ift, int index, double *v, int *unit)
Definition iftget.c:129
int iftGetFloat(IFT *ift, int index, float *v)
Definition iftget.c:25
int iftCopyItems(IFT *ift1, IFT *ift2, int is_key_required, int is_value_required, int is_comment_accepted, TPCSTATUS *status)
Definition ift.c:386
int iftPut(IFT *ift, const char *key, const char *value, char comment, TPCSTATUS *status)
Definition ift.c:63
int iftFindNrOfKeys(IFT *ift, const char *key)
Definition iftfind.c:142
int iftGetDouble(IFT *ift, int index, double *v)
Definition iftget.c:52
int iftSearchKey(IFT *ift, const char *s, int start_index)
Definition iftfind.c:86
void iftInit(IFT *ift)
Definition ift.c:21
int iftGetInt(IFT *ift, int index, int *v)
Definition iftget.c:76
int iftReplaceKey(IFT *ift, int i, const char *key, TPCSTATUS *status)
Definition ift.c:307
int iftWrite(IFT *ift, FILE *fp, TPCSTATUS *status)
Definition iftio.c:98
int iftDeleteDuplicateKeys(IFT *ift, TPCSTATUS *status)
Definition ift.c:348
int iftRead(IFT *ift, FILE *fp, int is_key_required, int is_comment_accepted, TPCSTATUS *status)
Definition iftio.c:130
int iftPutDouble(IFT *ift, const char *key, const double value, char comment, TPCSTATUS *status)
Definition ift.c:128
int iftFindKey(IFT *ift, const char *key, int start_index)
Definition iftfind.c:30
int iftDelete(IFT *ift, int index)
Definition ift.c:206
int iftDuplicate(IFT *ift1, IFT *ift2)
Definition ift.c:236
int iftGetDoubleValue(IFT *ift, const char *key, int index, double *v)
Definition iftfind.c:191