Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/Geant4/MCGIDI_map.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002 # <<BEGIN-copyright>>
0003 # <<END-copyright>>
0004 */
0005 #ifndef MCGIDI_map_h_included
0006 #define MCGIDI_map_h_included
0007 
0008 #include <statusMessageReporting.h>
0009 
0010 #if defined __cplusplus
0011     extern "C" {
0012     namespace GIDI {
0013 #endif
0014 
0015 enum MCGIDI_map_status { MCGIDI_map_status_Ok, MCGIDI_map_status_memory, MCGIDI_map_status_mapParsing,
0016     MCGIDI_map_status_UnknownType };
0017 enum MCGIDI_mapEntry_type { MCGIDI_mapEntry_type_target, MCGIDI_mapEntry_type_path };
0018 
0019 typedef struct MCGIDI_map_s MCGIDI_map;
0020 typedef struct MCGIDI_mapEntry_s MCGIDI_mapEntry;
0021 typedef struct MCGIDI_map_smr_s MCGIDI_map_smr;
0022 
0023 struct MCGIDI_map_smr_s {
0024     smr_userInterface smrUserInterface;
0025     MCGIDI_map *map;
0026 };
0027 
0028 struct MCGIDI_mapEntry_s {
0029     MCGIDI_mapEntry *next;
0030     enum MCGIDI_mapEntry_type type;
0031     MCGIDI_map *parent;
0032     char *schema;
0033     char *path;
0034     char *evaluation;
0035     char *projectile;
0036     char *targetName;
0037     int globalPoPsIndexProjectile, globalPoPsIndexTarget;
0038     MCGIDI_map *map;
0039 };
0040 
0041 struct MCGIDI_map_s {
0042     enum MCGIDI_map_status status;
0043     MCGIDI_map_smr smrUserInterface;
0044     char *path;
0045     char *mapFileName;
0046     int numberOfEntries;
0047     MCGIDI_mapEntry *mapEntries;
0048 };
0049 
0050 MCGIDI_map *MCGIDI_map_new( statusMessageReporting *smr );
0051 int MCGIDI_map_initialize( statusMessageReporting *smr, MCGIDI_map *map );
0052 MCGIDI_map *MCGIDI_map_readFile( statusMessageReporting *smr, const char *basePath, const char *mapFileName );
0053 void *MCGIDI_map_free( statusMessageReporting *smr, MCGIDI_map *map );
0054 void MCGIDI_map_release( statusMessageReporting *smr, MCGIDI_map *map );
0055 MCGIDI_mapEntry *MCGIDI_map_getFirstEntry( MCGIDI_map *map );
0056 MCGIDI_mapEntry *MCGIDI_map_getNextEntry( MCGIDI_mapEntry *entry );
0057 int MCGIDI_map_addTarget( statusMessageReporting *smr, MCGIDI_map *map, const char *method, const char *path, const char *evaluation, const char *projectile, const char *targetName );
0058 int MCGIDI_map_addPath( statusMessageReporting *smr, MCGIDI_map *map, const char *path );
0059 char *MCGIDI_map_findTargetViaPoPIDs( statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, int projectile_PoPID, int target_PoPID );
0060 char *MCGIDI_map_findTarget( statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, const char *projectile, const char *targetName );
0061 MCGIDI_map *MCGIDI_map_findAllOfTargetViaPoPIDs( statusMessageReporting *smr, MCGIDI_map *map, int projectile_PoPID, int target_PoPID );
0062 MCGIDI_map *MCGIDI_map_findAllOfTarget( statusMessageReporting *smr, MCGIDI_map *map, const char *projectile, const char *targetName );
0063 char *MCGIDI_map_getFullPath( statusMessageReporting *smr, MCGIDI_map *map, const char *endPath );
0064 char *MCGIDI_map_getTargetsFullPath( statusMessageReporting *smr, MCGIDI_mapEntry *target );
0065 int MCGIDI_map_walkTree( statusMessageReporting *smr, MCGIDI_map *map, int (*handler)( MCGIDI_mapEntry *entry, int level, void *userData), void *userData );
0066 char *MCGIDI_map_toXMLString( statusMessageReporting *smr, MCGIDI_map *map );
0067 void MCGIDI_map_simpleWrite( FILE *f, MCGIDI_map *map );
0068 
0069 #if defined __cplusplus
0070     }
0071     }
0072 #endif
0073 
0074 #endif          /* End of MCGIDI_map_h_included. */