#include #include #include #include "trick/Environment.hh" Trick::Environment * the_env ; Trick::Environment::Environment() { the_env = this ; } int Trick::Environment::add_var( std::string variable_name , std::string value ) { local_env[variable_name] = value ; return(0) ; } const char * Trick::Environment::get_var( std::string variable_name) { char *ret_env; std::map::iterator it ; /* var might be in environment */ if ((ret_env = getenv(variable_name.c_str())) != NULL) { return (ret_env); } /* Check environment compiled into S_source.c */ it = local_env.find(variable_name) ; if ( it != local_env.end() ) { return( it->second.c_str() ) ; } /* It's not there! */ return (NULL); } int Trick::Environment::print_vars( FILE * fp ) { std::map::iterator it ; for ( it = local_env.begin() ; it != local_env.end() ; it++ ) { fprintf(fp, "%s = %s\n", it->first.c_str(), it->second.c_str()); } return(0) ; }