ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MCGIDI_map.cc File Reference
#include <string.h>
#include <limits.h>
#include <PoPs.h>
#include "MCGIDI_map.h"
#include <xDataTOM_importXML_private.h>
+ Include dependency graph for MCGIDI_map.cc:

Go to the source code of this file.

Macros

#define PATH_MAX   4096
 

Functions

static MCGIDI_mapEntry_MCGIDI_map_addEntry (statusMessageReporting *smr, MCGIDI_map *map, enum MCGIDI_mapEntry_type type, const char *schema, const char *path, const char *evaluation, const char *projectile, const char *target)
 
static char * _MCGIDI_map_findTargetViaPoPIDs2 (statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, int projectile_PoPID, int target_PoPID)
 
static int _MCGIDI_map_findAllOfTargetViaPoPIDs2 (statusMessageReporting *smr, MCGIDI_map *mapAllOfTarget, MCGIDI_map *map, int projectile_PoPID, int target_PoPID)
 
static int _MCGIDI_map_walkTree2 (statusMessageReporting *smr, MCGIDI_map *map, int level, int(*handler)(MCGIDI_mapEntry *entry, int level, void *userData), void *userData)
 
static void _MCGIDI_map_simpleWrite2 (FILE *f, MCGIDI_map *map, int level)
 
static char * _MCGIDI_map_smrUserInterface (void *userData)
 
MCGIDI_mapMCGIDI_map_new (statusMessageReporting *smr)
 
int MCGIDI_map_initialize (statusMessageReporting *smr, MCGIDI_map *map)
 
MCGIDI_mapMCGIDI_map_readFile (statusMessageReporting *smr, const char *basePath, const char *mapFileName)
 
voidMCGIDI_map_free (statusMessageReporting *smr, MCGIDI_map *map)
 
void MCGIDI_map_release (statusMessageReporting *smr, MCGIDI_map *map)
 
MCGIDI_mapEntryMCGIDI_map_getFirstEntry (MCGIDI_map *map)
 
MCGIDI_mapEntryMCGIDI_map_getNextEntry (MCGIDI_mapEntry *entry)
 
int MCGIDI_map_addTarget (statusMessageReporting *smr, MCGIDI_map *map, const char *schema, const char *path, const char *evaluation, const char *projectile, const char *target)
 
int MCGIDI_map_addPath (statusMessageReporting *smr, MCGIDI_map *map, const char *path)
 
char * MCGIDI_map_findTargetViaPoPIDs (statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, int projectile_PoPID, int target_PoPID)
 
char * MCGIDI_map_findTarget (statusMessageReporting *smr, MCGIDI_map *map, const char *evaluation, const char *projectile, const char *targetName)
 
MCGIDI_mapMCGIDI_map_findAllOfTargetViaPoPIDs (statusMessageReporting *smr, MCGIDI_map *map, int projectile_PoPID, int target_PoPID)
 
MCGIDI_mapMCGIDI_map_findAllOfTarget (statusMessageReporting *smr, MCGIDI_map *map, const char *projectile, const char *targetName)
 
char * MCGIDI_map_getFullPath (statusMessageReporting *smr, MCGIDI_map *map, const char *endPath)
 
char * MCGIDI_map_getTargetsFullPath (statusMessageReporting *smr, MCGIDI_mapEntry *target)
 
int MCGIDI_map_walkTree (statusMessageReporting *smr, MCGIDI_map *map, int(*handler)(MCGIDI_mapEntry *entry, int level, void *userData), void *userData)
 
char * MCGIDI_map_toXMLString (statusMessageReporting *smr, MCGIDI_map *map)
 
void MCGIDI_map_simpleWrite (FILE *f, MCGIDI_map *map)
 

Variables

static int aliasesNeeded = 1
 

Macro Definition Documentation

#define PATH_MAX   4096

Definition at line 12 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 12 of file MCGIDI_map.cc

Referenced by MCGIDI_map_readFile().

Function Documentation

static MCGIDI_mapEntry * _MCGIDI_map_addEntry ( statusMessageReporting smr,
MCGIDI_map map,
enum MCGIDI_mapEntry_type  type,
const char *  schema,
const char *  path,
const char *  evaluation,
const char *  projectile,
const char *  target 
)
static

Definition at line 237 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 237 of file MCGIDI_map.cc

References check_license::err(), MCGIDI_mapEntry_s::evaluation, MCGIDI_mapEntry_s::globalPoPsIndexProjectile, MCGIDI_mapEntry_s::globalPoPsIndexTarget, lPoPs_addParticleIfNeeded(), MCGIDI_mapEntry_s::map, MCGIDI_map_s::mapEntries, MCGIDI_mapEntry_s::next, MCGIDI_map_s::numberOfEntries, MCGIDI_mapEntry_s::parent, MCGIDI_mapEntry_s::path, MCGIDI_mapEntry_s::projectile, MCGIDI_mapEntry_s::schema, smr_freeMemory(), smr_malloc2, MCGIDI_mapEntry_s::targetName, and MCGIDI_mapEntry_s::type.

Referenced by _MCGIDI_map_findAllOfTargetViaPoPIDs2(), MCGIDI_map_addPath(), and MCGIDI_map_addTarget().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int _MCGIDI_map_findAllOfTargetViaPoPIDs2 ( statusMessageReporting smr,
MCGIDI_map mapAllOfTarget,
MCGIDI_map map,
int  projectile_PoPID,
int  target_PoPID 
)
static

Definition at line 404 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 404 of file MCGIDI_map.cc

References _MCGIDI_map_addEntry(), MCGIDI_mapEntry_s::evaluation, MCGIDI_mapEntry_s::globalPoPsIndexProjectile, MCGIDI_mapEntry_s::globalPoPsIndexTarget, MCGIDI_mapEntry_s::map, MCGIDI_map_s::mapEntries, MCGIDI_map_status_UnknownType, MCGIDI_mapEntry_type_path, MCGIDI_mapEntry_type_target, MCGIDI_mapEntry_s::next, MCGIDI_mapEntry_s::path, MCGIDI_mapEntry_s::projectile, MCGIDI_mapEntry_s::schema, smr_setReportInfo3, smr_unknownID, MCGIDI_map_s::smrUserInterface, MCGIDI_mapEntry_s::targetName, and MCGIDI_mapEntry_s::type.

Referenced by MCGIDI_map_findAllOfTargetViaPoPIDs().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static char * _MCGIDI_map_findTargetViaPoPIDs2 ( statusMessageReporting smr,
MCGIDI_map map,
const char *  evaluation,
int  projectile_PoPID,
int  target_PoPID 
)
static

Definition at line 329 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 329 of file MCGIDI_map.cc

References MCGIDI_mapEntry_s::evaluation, MCGIDI_mapEntry_s::globalPoPsIndexProjectile, MCGIDI_mapEntry_s::globalPoPsIndexTarget, int(), MCGIDI_mapEntry_s::map, MCGIDI_map_s::mapEntries, MCGIDI_map_status_UnknownType, MCGIDI_mapEntry_type_path, MCGIDI_mapEntry_type_target, n, MCGIDI_mapEntry_s::next, MCGIDI_mapEntry_s::path, MCGIDI_map_s::path, smr_malloc2, smr_setReportInfo3, smr_unknownID, MCGIDI_map_s::smrUserInterface, and MCGIDI_mapEntry_s::type.

Referenced by MCGIDI_map_findTargetViaPoPIDs().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void _MCGIDI_map_simpleWrite2 ( FILE *  f,
MCGIDI_map map,
int  level 
)
static

Definition at line 554 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 554 of file MCGIDI_map.cc

References MCGIDI_mapEntry_s::evaluation, int(), MCGIDI_mapEntry_s::map, MCGIDI_map_s::mapEntries, MCGIDI_map_s::mapFileName, MCGIDI_map_status_Ok, MCGIDI_mapEntry_type_path, MCGIDI_mapEntry_type_target, n, MCGIDI_mapEntry_s::next, MCGIDI_mapEntry_s::path, MCGIDI_map_s::path, MCGIDI_mapEntry_s::projectile, MCGIDI_mapEntry_s::schema, MCGIDI_map_s::status, MCGIDI_mapEntry_s::targetName, and MCGIDI_mapEntry_s::type.

Referenced by MCGIDI_map_simpleWrite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static char * _MCGIDI_map_smrUserInterface ( void userData)
static

Definition at line 585 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 585 of file MCGIDI_map.cc

References MCGIDI_map_smr_s::map, MCGIDI_map_s::mapFileName, and smr_allocateFormatMessage().

Referenced by MCGIDI_map_initialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int _MCGIDI_map_walkTree2 ( statusMessageReporting smr,
MCGIDI_map map,
int  level,
int(*)(MCGIDI_mapEntry *entry, int level, void *userData handler,
void userData 
)
static

Definition at line 480 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 480 of file MCGIDI_map.cc

References MCGIDI_mapEntry_s::map, MCGIDI_map_s::mapEntries, MCGIDI_mapEntry_type_path, MCGIDI_mapEntry_s::next, and MCGIDI_mapEntry_s::type.

Referenced by MCGIDI_map_walkTree().

+ Here is the caller graph for this function:

int MCGIDI_map_addPath ( statusMessageReporting smr,
MCGIDI_map map,
const char *  path 
)

Definition at line 225 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 225 of file MCGIDI_map.cc

References _MCGIDI_map_addEntry(), MCGIDI_mapEntry_s::map, MCGIDI_map_readFile(), MCGIDI_mapEntry_type_path, MCGIDI_mapEntry_s::path, and MCGIDI_map_s::path.

Referenced by MCGIDI_map_readFile().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int MCGIDI_map_addTarget ( statusMessageReporting smr,
MCGIDI_map map,
const char *  schema,
const char *  path,
const char *  evaluation,
const char *  projectile,
const char *  target 
)

Definition at line 218 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 218 of file MCGIDI_map.cc

References _MCGIDI_map_addEntry(), and MCGIDI_mapEntry_type_target.

Referenced by MCGIDI_map_readFile().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

MCGIDI_map* MCGIDI_map_findAllOfTarget ( statusMessageReporting smr,
MCGIDI_map map,
const char *  projectile,
const char *  targetName 
)

Definition at line 430 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 430 of file MCGIDI_map.cc

References lPoPs_addParticleIfNeeded(), and MCGIDI_map_findAllOfTargetViaPoPIDs().

Referenced by G4GIDI::getNamesOfAvailableLibraries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

MCGIDI_map* MCGIDI_map_findAllOfTargetViaPoPIDs ( statusMessageReporting smr,
MCGIDI_map map,
int  projectile_PoPID,
int  target_PoPID 
)

Definition at line 387 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 387 of file MCGIDI_map.cc

References _MCGIDI_map_findAllOfTargetViaPoPIDs2(), MCGIDI_map_free(), MCGIDI_map_new(), MCGIDI_map_status_Ok, and MCGIDI_map_s::status.

Referenced by MCGIDI_map_findAllOfTarget().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

char* MCGIDI_map_findTarget ( statusMessageReporting smr,
MCGIDI_map map,
const char *  evaluation,
const char *  projectile,
const char *  targetName 
)

Definition at line 376 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 376 of file MCGIDI_map.cc

References lPoPs_addParticleIfNeeded(), and MCGIDI_map_findTargetViaPoPIDs().

Referenced by G4GIDI::dataFilename(), MCGIDI_target_newReadFromMap(), and MCGIDI_target_readFromMap().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

char* MCGIDI_map_findTargetViaPoPIDs ( statusMessageReporting smr,
MCGIDI_map map,
const char *  evaluation,
int  projectile_PoPID,
int  target_PoPID 
)

Definition at line 302 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 302 of file MCGIDI_map.cc

References _MCGIDI_map_findTargetViaPoPIDs2(), MCGIDI_map_status_Ok, PoPs_getName_atIndex(), smr_isOk(), smr_setReportInfo3, smr_unknownID, MCGIDI_map_s::smrUserInterface, and MCGIDI_map_s::status.

Referenced by MCGIDI_map_findTarget(), MCGIDI_target_newReadFromMapViaPoPIDs(), and MCGIDI_target_readFromMapViaPoPIDs().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* MCGIDI_map_free ( statusMessageReporting smr,
MCGIDI_map map 
)

Definition at line 173 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 173 of file MCGIDI_map.cc

References MCGIDI_map_release(), and smr_freeMemory().

Referenced by G4GIDI::getNamesOfAvailableLibraries(), MCGIDI_map_findAllOfTargetViaPoPIDs(), MCGIDI_map_new(), MCGIDI_map_readFile(), MCGIDI_map_release(), and G4GIDI_map::~G4GIDI_map().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

MCGIDI_mapEntry* MCGIDI_map_getFirstEntry ( MCGIDI_map map)

Definition at line 204 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 204 of file MCGIDI_map.cc

References MCGIDI_map_s::mapEntries.

Referenced by G4GIDI::getNamesOfAvailableLibraries().

+ Here is the caller graph for this function:

char* MCGIDI_map_getFullPath ( statusMessageReporting smr,
MCGIDI_map map,
const char *  endPath 
)

Definition at line 441 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 441 of file MCGIDI_map.cc

References MCGIDI_map_s::path, and smr_malloc2.

Referenced by MCGIDI_map_getTargetsFullPath().

+ Here is the caller graph for this function:

MCGIDI_mapEntry* MCGIDI_map_getNextEntry ( MCGIDI_mapEntry entry)

Definition at line 211 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 211 of file MCGIDI_map.cc

References MCGIDI_mapEntry_s::next.

Referenced by G4GIDI::getNamesOfAvailableLibraries().

+ Here is the caller graph for this function:

char* MCGIDI_map_getTargetsFullPath ( statusMessageReporting smr,
MCGIDI_mapEntry target 
)

Definition at line 459 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 459 of file MCGIDI_map.cc

References MCGIDI_map_getFullPath(), MCGIDI_map_status_UnknownType, MCGIDI_mapEntry_type_path, MCGIDI_mapEntry_type_target, MCGIDI_mapEntry_s::parent, MCGIDI_mapEntry_s::path, smr_setReportInfo3, smr_setReportInfo3p, smr_unknownID, MCGIDI_map_s::smrUserInterface, and MCGIDI_mapEntry_s::type.

+ Here is the call graph for this function:

int MCGIDI_map_initialize ( statusMessageReporting smr,
MCGIDI_map map 
)

Definition at line 60 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 60 of file MCGIDI_map.cc

References _MCGIDI_map_smrUserInterface(), aliasesNeeded, lPoPs_addParticleIfNeeded(), MCGIDI_map_smr_s::map, MCGIDI_map_s::mapEntries, MCGIDI_map_s::mapFileName, MCGIDI_map_status_Ok, n1, MCGIDI_map_s::numberOfEntries, MCGIDI_map_s::path, PoPs_addAliasIfNeeded(), smr_isOk(), MCGIDI_map_smr_s::smrUserInterface, MCGIDI_map_s::smrUserInterface, and MCGIDI_map_s::status.

Referenced by MCGIDI_map_new().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

MCGIDI_map* MCGIDI_map_new ( statusMessageReporting smr)

Definition at line 49 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 49 of file MCGIDI_map.cc

References MCGIDI_map_free(), MCGIDI_map_initialize(), and smr_malloc2.

Referenced by MCGIDI_map_findAllOfTargetViaPoPIDs(), and MCGIDI_map_readFile().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

MCGIDI_map* MCGIDI_map_readFile ( statusMessageReporting smr,
const char *  basePath,
const char *  mapFileName 
)

Definition at line 93 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 93 of file MCGIDI_map.cc

References int(), MCGIDI_map_s::mapFileName, MCGIDI_map_addPath(), MCGIDI_map_addTarget(), MCGIDI_map_free(), MCGIDI_map_new(), MCGIDI_map_status_mapParsing, n, xDataXML_element_s::name, MCGIDI_map_s::path, PATH_MAX, smr_isOk(), smr_malloc2, smr_setReportError2, smr_setReportError3, smr_setReportError3p, smr_unknownID, MCGIDI_map_s::smrUserInterface, xDataXML_freeDoc(), xDataXML_getAttributesValueInElement(), xDataXML_getDocumentsElement(), xDataXML_getFirstElement(), xDataXML_getNextElement(), and xDataXML_importFile2().

Referenced by G4GIDI_map::G4GIDI_map(), and MCGIDI_map_addPath().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void MCGIDI_map_release ( statusMessageReporting smr,
MCGIDI_map map 
)

Definition at line 182 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 182 of file MCGIDI_map.cc

References MCGIDI_mapEntry_s::evaluation, MCGIDI_mapEntry_s::map, MCGIDI_map_s::mapEntries, MCGIDI_map_free(), MCGIDI_map_status_Ok, MCGIDI_mapEntry_s::next, MCGIDI_map_s::numberOfEntries, MCGIDI_mapEntry_s::path, MCGIDI_map_s::path, MCGIDI_mapEntry_s::projectile, MCGIDI_mapEntry_s::schema, smr_freeMemory(), MCGIDI_map_s::status, and MCGIDI_mapEntry_s::targetName.

Referenced by MCGIDI_map_free().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void MCGIDI_map_simpleWrite ( FILE *  f,
MCGIDI_map map 
)

Definition at line 550 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 550 of file MCGIDI_map.cc

References _MCGIDI_map_simpleWrite2().

+ Here is the call graph for this function:

char* MCGIDI_map_toXMLString ( statusMessageReporting smr,
MCGIDI_map map 
)
int MCGIDI_map_walkTree ( statusMessageReporting smr,
MCGIDI_map map,
int(*)(MCGIDI_mapEntry *entry, int level, void *userData handler,
void userData 
)

Definition at line 494 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 494 of file MCGIDI_map.cc

References _MCGIDI_map_walkTree2().

Referenced by G4GIDI::getNamesOfAvailableTargets().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

int aliasesNeeded = 1
static

Definition at line 20 of file MCGIDI_map.cc.

View newest version in sPHENIX GitHub at line 20 of file MCGIDI_map.cc

Referenced by MCGIDI_map_initialize().