Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/processes/hadronic/models/lend/include/MCGIDI_map.h

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

  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. */
 75