cloudy trunk
|
#include <parser.h>
Public Member Functions | |
Parser (void) | |
Parser (const CloudyCommand *commands) | |
bool | getline (void) |
void | setline (const char *const card) |
void | set_point (long int ipnt) |
const char * | nWord (const char *chKey) const |
long int | GetElem (void) const |
double | FFmtRead (void) |
double | getNumberPlain (const char *chDesc) |
double | getNumberCheck (const char *chDesc) |
double | getNumberDefault (const char *chDesc, double fdef) |
double | getNumberCheckLogLinNegImplLog (const char *chDesc) |
double | getNumberCheckAlwaysLog (const char *chDesc) |
double | getNumberCheckAlwaysLogLim (const char *chDesc, double flim) |
double | getNumberDefaultAlwaysLog (const char *chDesc, double fdef) |
double | getNumberDefaultNegImplLog (const char *chDesc, double fdef) |
bool | lgEOL (void) const |
void | setEOL (bool val) |
NORETURN void | NoNumb (const char *chDesc) const |
bool | nMatch (const char *chKey) const |
bool | GetParam (const char *chKey, double *val) |
bool | GetRange (const char *chKey, double *val1, double *val2) |
bool | nMatchErase (const char *chKey) |
int | strcmp (const char *s2) |
bool | Command (const char *name, OptionParser doOpts) |
bool | isComment (void) const |
bool | isCommandComment (void) const |
bool | isVar (void) const |
std::string | getVarName (void) |
void | doSetVar (void) |
void | echo (void) const |
bool | last (void) const |
int | PrintLine (FILE *fp) const |
NORETURN void | CommandError (void) const |
int | GetQuote (char *chLabel, bool lgABORT) |
const char * | StandardEnergyUnit (void) const |
string | StandardFluxUnit (void) const |
string | getCommand (long i) |
string | getRawTail () |
void | help (FILE *fp) const |
double | getWave () |
double | getWaveOpt () |
void | getLineID (char *LabelBuf, realnum *wave) |
Data Fields | |
long int | m_nqh |
long int | m_nInitFile |
bool | m_lgDSet |
bool | m_lgEOF |
Private Member Functions | |
void | init (void) |
void | newlineProcess (void) |
char | chPoint (void) const |
int | nMatch1 (const char *chKey) const |
Private Attributes | |
char | m_card [INPUT_LINE_LENGTH] |
char | m_card_raw [INPUT_LINE_LENGTH] |
long int | m_len |
const char * | m_ptr |
bool | m_lgEOL |
const CloudyCommand *const | m_Commands |
std::map< string, double > | m_symtab |
Parser class holds pointer to string currently being analysed
|
inlineexplicit |
Definition at line 44 of file parser.h.
References init(), and m_Commands.
|
inlineexplicit |
Definition at line 48 of file parser.h.
References init(), and m_Commands.
|
inlineprivate |
|
inline |
Definition at line 187 of file parser.h.
References strcmp().
Referenced by ParseCommands().
NORETURN void Parser::CommandError | ( | void | ) | const |
Definition at line 154 of file parser.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, m_card, NORETURN, and PrintLine().
Referenced by ParseCommands().
void Parser::doSetVar | ( | void | ) |
Definition at line 119 of file parser.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), getVarName(), ioQQQ, m_ptr, and m_symtab.
Referenced by ParseCommands().
void Parser::echo | ( | void | ) | const |
Definition at line 147 of file parser.cpp.
References called, ioQQQ, m_card, m_card_raw, and nMatch().
Referenced by ParseAbundances(), ParseCommands(), and ParseInterp().
double Parser::FFmtRead | ( | void | ) |
Definition at line 353 of file parser.cpp.
References DEBUG_ENTRY, getVarName(), ioQQQ, m_card, m_len, m_lgEOL, m_ptr, m_symtab, and ParseExpr().
Referenced by doSetVar(), getNumberCheck(), getNumberDefault(), getNumberDefaultAlwaysLog(), getNumberDefaultNegImplLog(), getNumberPlain(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), GetParam(), GetRange(), getWaveOpt(), parse_save_average(), parse_save_colden(), Parse_Save_Line_RT(), ParseAbsMag(), ParseAbundances(), ParseAge(), ParseAgn(), ParseAperture(), ParseAtom(), ParseAtomH2(), ParseAtomISO(), ParseBackgrd(), ParseBlackbody(), ParseBremsstrahlung(), ParseCaseB(), ParseCExtra(), ParseCMBOuter(), ParseCompile(), ParseConstant(), ParseCoronal(), ParseCosmicRays(), ParseCosmology(), ParseCovering(), ParseCrashDo(), ParseCylinder(), ParseDiffuse(), ParseDistance(), ParseDLaw(), ParseEden(), ParseElement(), ParseEnergy(), ParseExtinguish(), ParseF_nu(), ParseFail(), ParseFill(), ParseFluc(), ParseForceTemperature(), ParseFudge(), ParseGlobule(), ParseGrain(), ParseGravity(), ParseGrid(), ParseHDEN(), ParseHExtra(), ParseIlluminate(), ParseIntensity(), ParseInterp(), ParseIonPar(), ParseIterations(), ParseLaser(), ParseLuminosity(), ParseMap(), ParseMetal(), ParseMonitorResults(), ParseNeutrons(), ParseNorm(), ParseOptimize(), ParsePhi(), ParsePlotRangeContin(), ParsePlotRangeOption(), ParsePowerlawContinuum(), ParsePrint(), ParseQH(), ParseRadius(), ParseRangeOption(), ParseRatio(), ParseSave(), ParseSet(), ParseSphere(), ParseStop(), ParseTable(), ParseTauMin(), ParseTLaw(), ParseTrace(), ParseTurbulence(), and ParseVLaw().
|
inline |
Definition at line 215 of file parser.h.
Referenced by getLineID(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), parse_save_colden(), and ParsePrtLineSum().
long int Parser::GetElem | ( | void | ) | const |
Definition at line 209 of file parser.cpp.
References DEBUG_ENTRY, elementnames, LIMELM, and nMatch().
Referenced by parse_save_average(), ParseAtomISO(), ParseElement(), ParseMonitorResults(), ParsePrint(), ParseSave(), ParseSet(), and ParseTrace().
bool Parser::getline | ( | void | ) |
Definition at line 164 of file parser.cpp.
References input, m_card_raw, m_lgEOF, and newlineProcess().
Referenced by GetOptColDen(), GetOptLineInt(), GetOptTemp(), parse_save_average(), parse_save_colden(), parse_save_line(), Parse_Save_Line_RT(), ParseAbundances(), ParseCommands(), ParseDLaw(), ParseDynaTime(), ParseElement(), ParseInterp(), ParsePrtLineSum(), and ParseTLaw().
void Parser::getLineID | ( | char * | LabelBuf, |
realnum * | wave ) |
Definition at line 446 of file parser.cpp.
References getCommand(), and getWaveOpt().
Referenced by cdGetLineList(), and parse_save_line().
double Parser::getNumberCheck | ( | const char * | chDesc | ) |
Definition at line 273 of file parser.cpp.
References FFmtRead(), lgEOL(), and NoNumb().
Referenced by getNumberCheckAlwaysLog(), getNumberCheckAlwaysLogLim(), getNumberCheckLogLinNegImplLog(), ParseAtomFeII(), ParseDynaWind(), and ParseMagnet().
double Parser::getNumberCheckAlwaysLog | ( | const char * | chDesc | ) |
Definition at line 308 of file parser.cpp.
References getNumberCheck().
Referenced by ParseDarkMatter(), ParseDynaTime(), and ParseMagnet().
double Parser::getNumberCheckAlwaysLogLim | ( | const char * | chDesc, |
double | flim ) |
Definition at line 314 of file parser.cpp.
References getNumberCheck(), and ioQQQ.
Referenced by ParseDynaTime().
double Parser::getNumberCheckLogLinNegImplLog | ( | const char * | chDesc | ) |
Definition at line 291 of file parser.cpp.
References getNumberCheck(), and nMatch().
Referenced by abund_starburst().
double Parser::getNumberDefault | ( | const char * | chDesc, |
double | fdef ) |
Definition at line 282 of file parser.cpp.
References FFmtRead(), and lgEOL().
Referenced by diatomics::H2_ParseSave(), ParseDynaWind(), and ParseMagnet().
double Parser::getNumberDefaultAlwaysLog | ( | const char * | chDesc, |
double | fdef ) |
Definition at line 327 of file parser.cpp.
References FFmtRead(), and lgEOL().
Referenced by ParseDarkMatter(), and ParseDynaTime().
double Parser::getNumberDefaultNegImplLog | ( | const char * | chDesc, |
double | fdef ) |
Definition at line 336 of file parser.cpp.
References FFmtRead(), and lgEOL().
Referenced by diatomics::H2_ParseSave().
double Parser::getNumberPlain | ( | const char * | chDesc | ) |
Definition at line 269 of file parser.cpp.
References FFmtRead().
Referenced by ParseDynaWind().
|
inline |
Definition at line 139 of file parser.h.
References FFmtRead(), m_card, m_ptr, and nMatch1().
Referenced by ParseMonitorResults().
|
inline |
Definition at line 209 of file parser.h.
References m_card, and m_card_raw.
Referenced by ParseAtom(), ParseCompile(), ParseGrain(), ParseInit(), ParseMonitorResults(), ParseNorm(), ParseOptimize(), ParseSave(), ParseSet(), ParseState(), ParseStop(), ParseTable(), and ParseTitle().
|
inline |
Definition at line 148 of file parser.h.
References FFmtRead(), m_card, m_ptr, and nMatch1().
Referenced by ParseMonitorResults().
|
inline |
Definition at line 220 of file parser.h.
References m_card, m_card_raw, and m_ptr.
Referenced by ParseBackgrd(), and ParseTitle().
std::string Parser::getVarName | ( | void | ) |
Definition at line 106 of file parser.cpp.
References m_ptr.
Referenced by doSetVar(), and FFmtRead().
double Parser::getWave | ( | ) |
Definition at line 260 of file parser.cpp.
References getWaveOpt(), lgEOL(), and NoNumb().
Referenced by ParseMonitorResults(), and ParseNorm().
double Parser::getWaveOpt | ( | ) |
Definition at line 244 of file parser.cpp.
References chPoint(), and FFmtRead().
Referenced by getLineID(), GetOptLineInt(), getWave(), ParsePrint(), ParsePrtLineSum(), and ParseStop().
void Parser::help | ( | FILE * | fp | ) | const |
Definition at line 182 of file parser.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_SUCCESS, and m_Commands.
Referenced by ParseHelp().
|
inlineprivate |
bool Parser::isCommandComment | ( | void | ) | const |
Definition at line 97 of file parser.cpp.
References isComment(), and m_card.
Referenced by ParseCommands().
bool Parser::isComment | ( | void | ) | const |
Definition at line 93 of file parser.cpp.
References lgInputComment(), and m_card.
Referenced by isCommandComment(), ParseAbundances(), and ParseInterp().
bool Parser::isVar | ( | void | ) | const |
|
inline |
Definition at line 200 of file parser.h.
References m_card, and m_lgEOF.
Referenced by ParseCommands(), and ParseInterp().
|
inline |
Definition at line 98 of file parser.h.
References m_lgEOL.
Referenced by getNumberCheck(), getNumberDefault(), getNumberDefaultAlwaysLog(), getNumberDefaultNegImplLog(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), getWave(), parse_save_average(), parse_save_colden(), Parse_Save_Line_RT(), ParseAbsMag(), ParseAbundances(), ParseAge(), ParseAgn(), ParseAperture(), ParseAtom(), ParseAtomH2(), ParseAtomISO(), ParseBackgrd(), ParseBlackbody(), ParseBremsstrahlung(), ParseCaseB(), ParseCExtra(), ParseCMBOuter(), ParseCompile(), ParseConstant(), ParseCoronal(), ParseCosmicRays(), ParseCovering(), ParseCrashDo(), ParseCylinder(), ParseDiffuse(), ParseDistance(), ParseDLaw(), ParseEden(), ParseElement(), ParseEnergy(), ParseExtinguish(), ParseF_nu(), ParseFail(), ParseFill(), ParseFluc(), ParseForceTemperature(), ParseFudge(), ParseGlobule(), ParseGravity(), ParseGrid(), ParseHDEN(), ParseHExtra(), ParseIlluminate(), ParseIntensity(), ParseInterp(), ParseIonPar(), ParseIterations(), ParseLaser(), ParseLuminosity(), ParseMap(), ParseMetal(), ParseMonitorResults(), ParseNeutrons(), ParseNorm(), ParseOptimize(), ParsePhi(), ParsePlotRangeContin(), ParsePlotRangeOption(), ParsePowerlawContinuum(), ParsePrint(), ParseQH(), ParseRadius(), ParseRangeOption(), ParseRatio(), ParseSave(), ParseSet(), ParseSphere(), ParseStop(), ParseTable(), ParseTauMin(), ParseTLaw(), ParseTrace(), and ParseTurbulence().
|
inlineprivate |
|
inline |
Definition at line 135 of file parser.h.
References nMatch1().
Referenced by abund_starburst(), ChkUnits(), echo(), GetElem(), getNumberCheckLogLinNegImplLog(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), diatomics::H2_ParseSave(), parse_save_average(), Parse_Save_Line_RT(), ParseAbsMag(), ParseAbundances(), ParseAgn(), ParseAperture(), ParseAtom(), ParseAtomFeII(), ParseAtomH2(), ParseAtomISO(), ParseBackgrd(), ParseBlackbody(), ParseBremsstrahlung(), ParseCaseB(), ParseCMBOuter(), ParseCommands(), ParseCompile(), ParseConstant(), ParseCoronal(), ParseCosmicRays(), ParseCosmology(), ParseCrashDo(), ParseDarkMatter(), ParseDiffuse(), ParseDistance(), ParseDLaw(), ParseDont(), ParseDrive(), ParseDynaTime(), ParseDynaWind(), ParseElement(), ParseEnergy(), ParseExtinguish(), ParseF_nu(), ParseFail(), ParseFill(), ParseFluc(), ParseForceTemperature(), ParseGrain(), ParseGravity(), ParseGrid(), ParseHDEN(), ParseHExtra(), ParseIlluminate(), ParseInit(), ParseIntensity(), ParseIonPar(), ParseIterations(), ParseLuminosity(), ParseMagnet(), ParseMap(), ParseMetal(), ParseMonitorResults(), ParseNorm(), ParseOptimize(), ParsePhi(), ParsePlot(), ParsePlotRangeContin(), ParsePlotRangeOption(), ParsePowerlawContinuum(), ParsePrint(), ParseQH(), ParseRadius(), ParseRangeOption(), ParseRatio(), ParseSave(), ParseSet(), ParseSphere(), ParseState(), ParseStop(), ParseTable(), ParseTest(), ParseTLaw(), ParseTrace(), and ParseTurbulence().
|
inlineprivate |
Definition at line 108 of file parser.h.
References ASSERT, isBoundaryChar(), m_card, and nWord().
Referenced by GetParam(), GetRange(), nMatch(), and nMatchErase().
|
inline |
Definition at line 158 of file parser.h.
References m_card, and nMatch1().
Referenced by ParseCompile(), ParseGrain(), ParseMonitorResults(), ParseSave(), and ParseTable().
NORETURN void Parser::NoNumb | ( | const char * | chDesc | ) | const |
Definition at line 233 of file parser.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, m_card_raw, and NORETURN.
Referenced by getNumberCheck(), getWave(), parse_save_average(), parse_save_colden(), ParseAperture(), ParseAtom(), ParseAtomH2(), ParseAtomISO(), ParseBlackbody(), ParseBremsstrahlung(), ParseCExtra(), ParseConstant(), ParseCosmicRays(), ParseCovering(), ParseCylinder(), ParseDistance(), ParseDLaw(), ParseEden(), ParseEnergy(), ParseExtinguish(), ParseF_nu(), ParseFail(), ParseFill(), ParseForceTemperature(), ParseFudge(), ParseHExtra(), ParseIlluminate(), ParseIntensity(), ParseIonPar(), ParseLaser(), ParseLuminosity(), ParseMonitorResults(), ParseNeutrons(), ParseOptimize(), ParsePhi(), ParsePrint(), ParseQH(), ParseRadius(), ParseRatio(), ParseSave(), ParseSet(), ParseStop(), ParseTauMin(), and ParseTurbulence().
const char * Parser::nWord | ( | const char * | chKey | ) | const |
Definition at line 30 of file parser.cpp.
References m_card.
Referenced by nMatch1(), ParseAge(), and parserProcess().
|
inline |
Definition at line 204 of file parser.h.
References m_card_raw.
Referenced by CommandError(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), Parse_Save_Line_RT(), ParseDont(), ParseElement(), ParseMetal(), ParseMonitorResults(), ParseOptimize(), ParsePrint(), ParseSet(), ParseStop(), and ParseTurbulence().
|
inline |
Definition at line 77 of file parser.h.
Referenced by ParseBackgrd(), ParseCMBOuter(), ParseRangeOption(), and ParseTest().
|
inline |
|
inline |
Definition at line 69 of file parser.h.
References ASSERT, INPUT_LINE_LENGTH, m_card_raw, and newlineProcess().
Referenced by cdGetLineList(), init(), ParseAbundances(), ParseBackgrd(), ParseCMBOuter(), ParseDrive(), and ParseTest().
const char * Parser::StandardEnergyUnit | ( | void | ) | const |
Definition at line 174 of file parser.cpp.
References m_card.
Referenced by ChkUnits(), ParseOptimize(), ParseSave(), ParseSet(), and ParseStop().
string Parser::StandardFluxUnit | ( | void | ) | const |
Definition at line 178 of file parser.cpp.
References m_card.
Referenced by ParseOptimize(), and ParseStop().
|
inline |
Definition at line 177 of file parser.h.
Referenced by Command(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), parse_save_average(), parse_save_colden(), parse_save_line(), ParseAbundances(), ParseDLaw(), ParseDynaTime(), ParseElement(), ParseInterp(), ParsePrtLineSum(), and ParseTLaw().
|
private |
Definition at line 33 of file parser.h.
Referenced by CommandError(), echo(), FFmtRead(), getCommand(), GetParam(), GetQuote(), GetRange(), getRawTail(), isCommandComment(), isComment(), last(), newlineProcess(), nMatch1(), nMatchErase(), nWord(), set_point(), StandardEnergyUnit(), StandardFluxUnit(), and strcmp().
|
private |
Definition at line 34 of file parser.h.
Referenced by echo(), getline(), GetQuote(), getRawTail(), newlineProcess(), NoNumb(), PrintLine(), and setline().
|
private |
|
private |
Definition at line 35 of file parser.h.
Referenced by FFmtRead(), and newlineProcess().
bool Parser::m_lgDSet |
Definition at line 42 of file parser.h.
Referenced by init(), ParseAbundances(), ParseCommands(), and ParseGrain().
bool Parser::m_lgEOF |
Definition at line 42 of file parser.h.
Referenced by getline(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), init(), last(), parse_save_average(), parse_save_colden(), parse_save_line(), Parse_Save_Line_RT(), ParseAbundances(), ParseCommands(), ParseDLaw(), ParseDynaTime(), ParseElement(), ParseInterp(), ParsePrtLineSum(), and ParseTLaw().
|
private |
Definition at line 37 of file parser.h.
Referenced by FFmtRead(), lgEOL(), newlineProcess(), and setEOL().
long int Parser::m_nInitFile |
Definition at line 41 of file parser.h.
Referenced by init(), ParseCommands(), and ParseInitCount().
long int Parser::m_nqh |
Definition at line 41 of file parser.h.
Referenced by init(), ParseAbsMag(), ParseBackgrd(), ParseBlackbody(), ParseCMBOuter(), ParseCommands(), ParseCoronal(), ParseEnergy(), ParseF_nu(), ParseIntensity(), ParseIonPar(), ParseLuminosity(), ParsePhi(), ParseQH(), ParseRangeOption(), ParseRatio(), and ParseTable().
|
private |
Definition at line 36 of file parser.h.
Referenced by chPoint(), doSetVar(), FFmtRead(), getCommand(), GetParam(), GetRange(), getRawTail(), getVarName(), isVar(), newlineProcess(), set_point(), and strcmp().
|
private |
Definition at line 39 of file parser.h.
Referenced by doSetVar(), and FFmtRead().