Belle II Software
development
nsmparse.h
1
/**************************************************************************
2
* basf2 (Belle II Analysis Software Framework) *
3
* Author: The Belle II Collaboration *
4
* *
5
* See git log for contributors and copyright holders. *
6
* This file is licensed under LGPL-3.0, see LICENSE.md. *
7
**************************************************************************/
8
9
#ifndef __nsmparse_h__
10
#define __nsmparse_h__
11
12
#if defined(__cplusplus)
13
extern
"C"
{
14
#endif
15
16
/* NSMparse */
17
struct
NSMparse_struct
{
18
/* type is encoded in a char ---
19
'c': int8_t, 's': int16_t, 'i': int32_t, 'l': int64_t,
20
'C': uint8_t, 'S': uint16_t, 'I': uint16_t, 'L': uint64_t,
21
'f': float, 'd': double, '(': nested-begin, ')' nested-end
22
23
nested-begin has NSMparse entry with type = 0,
24
size = (sizeof(nested)/sizeof(nested[0])) of nested struct,
25
offset = start of nested, name = ""
26
*/
27
char
type;
28
char
name[256];
29
int
size;
/* of array */
30
int
bytes;
/* of this type */
31
int
offset;
/* from the beginning */
32
struct
NSMparse_struct
* next;
33
};
34
35
#ifndef __nsm2_typedef_parse__
36
#define __nsm2_typedef_parse__
37
typedef
struct
NSMparse_struct
NSMparse
;
38
#endif
/* nsm2_typedef_parse */
39
40
NSMparse
* nsmlib_parsefile(
const
char
* datname,
int
revision,
41
const
char
* incpath,
char
* fmtstr,
int
* revisionp);
42
void
nsmlib_parsefree(
NSMparse
*);
43
const
char
* nsmlib_parseerr(
int
* code);
44
45
#if defined(__cplusplus)
46
}
47
#endif
48
49
#endif
/* __nsmparse_h__ */
NSMparse_struct
Definition:
nsmparse.h:17
daq
slc
nsm2
corelib
nsmparse.h
Generated on Fri Nov 8 2024 02:35:43 for Belle II Software by
1.9.6