ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
MCGIDI_map.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file MCGIDI_map.h
1
/*
2
# <<BEGIN-copyright>>
3
# <<END-copyright>>
4
*/
5
#ifndef MCGIDI_map_h_included
6
#define MCGIDI_map_h_included
7
8
#include <
statusMessageReporting.h
>
9
10
#if defined __cplusplus
11
extern
"C"
{
12
namespace
GIDI {
13
#endif
14
15
enum
MCGIDI_map_status
{
MCGIDI_map_status_Ok
,
MCGIDI_map_status_memory
,
MCGIDI_map_status_mapParsing
,
16
MCGIDI_map_status_UnknownType
};
17
enum
MCGIDI_mapEntry_type
{
MCGIDI_mapEntry_type_target
,
MCGIDI_mapEntry_type_path
};
18
19
typedef
struct
MCGIDI_map_s
MCGIDI_map
;
20
typedef
struct
MCGIDI_mapEntry_s
MCGIDI_mapEntry
;
21
typedef
struct
MCGIDI_map_smr_s
MCGIDI_map_smr
;
22
23
struct
MCGIDI_map_smr_s
{
24
smr_userInterface
smrUserInterface
;
25
MCGIDI_map
*
map
;
26
};
27
28
struct
MCGIDI_mapEntry_s
{
29
MCGIDI_mapEntry
*
next
;
30
enum
MCGIDI_mapEntry_type
type
;
31
MCGIDI_map
*
parent
;
32
char
*
schema
;
33
char
*
path
;
34
char
*
evaluation
;
35
char
*
projectile
;
36
char
*
targetName
;
37
int
globalPoPsIndexProjectile,
globalPoPsIndexTarget
;
38
MCGIDI_map
*
map
;
39
};
40
41
struct
MCGIDI_map_s
{
42
enum
MCGIDI_map_status
status
;
43
MCGIDI_map_smr
smrUserInterface
;
44
char
*
path
;
45
char
*
mapFileName
;
46
int
numberOfEntries
;
47
MCGIDI_mapEntry
*
mapEntries
;
48
};
49
50
MCGIDI_map
*
MCGIDI_map_new
(
statusMessageReporting
*smr );
51
int
MCGIDI_map_initialize
(
statusMessageReporting
*smr,
MCGIDI_map
*map );
52
MCGIDI_map
*
MCGIDI_map_readFile
(
statusMessageReporting
*smr,
const
char
*basePath,
const
char
*mapFileName );
53
void
*
MCGIDI_map_free
(
statusMessageReporting
*smr,
MCGIDI_map
*map );
54
void
MCGIDI_map_release
(
statusMessageReporting
*smr,
MCGIDI_map
*map );
55
MCGIDI_mapEntry
*
MCGIDI_map_getFirstEntry
(
MCGIDI_map
*map );
56
MCGIDI_mapEntry
*
MCGIDI_map_getNextEntry
(
MCGIDI_mapEntry
*entry );
57
int
MCGIDI_map_addTarget
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
const
char
*method,
const
char
*path,
const
char
*evaluation,
const
char
*projectile,
const
char
*targetName );
58
int
MCGIDI_map_addPath
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
const
char
*path );
59
char
*
MCGIDI_map_findTargetViaPoPIDs
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
const
char
*evaluation,
int
projectile_PoPID,
int
target_PoPID );
60
char
*
MCGIDI_map_findTarget
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
const
char
*evaluation,
const
char
*projectile,
const
char
*targetName );
61
MCGIDI_map
*
MCGIDI_map_findAllOfTargetViaPoPIDs
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
int
projectile_PoPID,
int
target_PoPID );
62
MCGIDI_map
*
MCGIDI_map_findAllOfTarget
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
const
char
*projectile,
const
char
*targetName );
63
char
*
MCGIDI_map_getFullPath
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
const
char
*endPath );
64
char
*
MCGIDI_map_getTargetsFullPath
(
statusMessageReporting
*smr,
MCGIDI_mapEntry
*
target
);
65
int
MCGIDI_map_walkTree
(
statusMessageReporting
*smr,
MCGIDI_map
*map,
int
(*handler)(
MCGIDI_mapEntry
*entry,
int
level,
void
*
userData
),
void
*userData );
66
char
*
MCGIDI_map_toXMLString
(
statusMessageReporting
*smr,
MCGIDI_map
*map );
67
void
MCGIDI_map_simpleWrite
( FILE *
f
,
MCGIDI_map
*map );
68
69
#if defined __cplusplus
70
}
71
}
72
#endif
73
74
#endif
/* End of MCGIDI_map_h_included. */
geant4
tree
geant4-10.6-release
source
processes
hadronic
models
lend
include
MCGIDI_map.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:46
using
1.8.2 with
ECCE GitHub integration