Jpp test-rotations-old
the software that should make you happy
Loading...
Searching...
No Matches
JLANG::JEquationParameters Class Reference

Simple data structure to support I/O of equations (see class JLANG::JEquation). More...

#include <JEquationParameters.hh>

Inheritance diagram for JLANG::JEquationParameters:
JEEP::JProperties JLANG::JEquationFacet JAANET::JEvtCategoryMap< JEvtWeightFactorProduct >::JEvtCategoryMapHelper JAANET::JEvtCategoryMap< JFluxHelper >::JEvtCategoryMapHelper JAANET::JEvtWeightFactorConstant< JEvtWeightFactor_t >::JEvtWeightFactorConstantHelper JAANET::JEvtWeightFactorFunction< Flux_Atmospheric, JDiffuseFlux >::JFluxFunctionHelper JAANET::JEvtWeightFactorMeffRatio::JEvtWeightFactorMeffRatioHelper JAANET::JEvtWeightFactorProduct::JEvtWeightFactorProductHelper JAANET::JEvtWeightFactorTFormula::JEvtWeightFactorTFormulaHelper JAANET::JHondaFluxInterpolator< JPhiFunction_t, JCoszFunctionalMap_t, JEnergyFunctionalMap_t >::JHondaFluxInterpolatorHelper JAANET::JHondaFluxInterpolator< JConstantFunction1D< double, JArray< 4, double > >, JCoszFunctionalMap_t, JEnergyFunctionalMap_t >::JHondaFluxInterpolatorHelper JAANET::JMuonBundleCategory::JMuonBundleCategoryHelper JAANET::JNeutrinoInteractionCategory::JNeutrinoInteractionCategoryHelper JAANET::JOscFlux::JOscFluxHelper JAANET::JPowerLawFlux::JPowerLawFluxHelper JCOMPAREHISTOGRAMS::JTestSummary::JTestSummaryHelper JDETECTOR::JDetectorHeader::JDetectorHeaderHelper JDETECTOR::JDetectorParametersHelper JDETECTOR::JPMTParameters::JPMTParametersHelper JOSCPROB::JOscChannel::JOscChannelHelper JOSCPROB::JOscParameters< T >::JOscParametersHelper JOSCPROB::JOscProbInterpolator< JCollection_t, JFunction1D_t, JFunctionalMaplist_t >::JOscProbInterpolatorHelper JROOT::JStyle::JParameters::JParametersHelper

Public Member Functions

 JEquationParameters ()
 Default constructor.
 
 JEquationParameters (const std::string &sep, const std::string &eol, const std::string &div, const std::string &skip, const char left='(', const char right=')', const std::string &ws=" \t\n\v\f\r", const std::string &comment="")
 Constructor.
 
const JEquationParametersgetEquationParameters () const
 Get equation parameters.
 
void setEquationParameters (const JEquationParameters &buffer)
 Set equation parameters.
 
const char getDefaultSeparator () const
 Get default separator character.
 
const std::string & getSeparator () const
 Get separator characters.
 
std::string & getSeparator ()
 Get separator characters.
 
void setSeparator (const std::string &sep)
 Set separator character(s).
 
const char getDefaultEndOfLine () const
 Get default end of line character.
 
const char getPreferredEndOfLine (const unsigned int index) const
 Get preferred end of line character.
 
const std::string & getEndOfLine () const
 Get end of line characters.
 
std::string & getEndOfLine ()
 Get end of line characters.
 
void setEndOfLine (const std::string &eol)
 Set end of line characters.
 
const char getDefaultDivision () const
 Get default division character.
 
const std::string & getDivision () const
 Get division characters.
 
std::string & getDivision ()
 Get division characters.
 
void setDivision (const std::string &div)
 Set division characters.
 
const char getDefaultSkipLine () const
 Get default skip line character.
 
const std::string & getSkipLine () const
 Get skip line characters.
 
std::string & getSkipLine ()
 Get skip line characters.
 
void setSkipLine (const std::string &skip)
 Set skip line characters.
 
void setBrackets (const char left, const char right)
 Set brackets.
 
char getLeftBracket () const
 Get left bracket.
 
char & getLeftBracket ()
 Get left bracket.
 
char getRightBracket () const
 Get right bracket.
 
char & getRightBracket ()
 Get right bracket.
 
const char getDefaultWhiteSpace () const
 Get default white space character.
 
const std::string & getWhiteSpace () const
 Get white space characters.
 
std::string & getWhiteSpace ()
 Get white space characters.
 
void setWhiteSpace (const std::string &ws)
 Set white space characters.
 
const std::string & getComment () const
 Get comment string.
 
std::string & getComment ()
 Get comment string.
 
void setComment (const std::string &comment)
 Set comment string.
 
JEquationParametersjoin (const JEquationParameters &value)
 Join equation parameters.
 
bool isSeparator (const char c) const
 Test for separator character.
 
bool isEndOfLine (const char c) const
 Test for end of line character.
 
bool isDivision (const char c) const
 Test for division character.
 
bool isSkipLine (const char c) const
 Test for skip line character.
 
bool isLeftBracket (const char c) const
 Test for left bracket character.
 
bool isRightBracket (const char c) const
 Test for right bracket character.
 
bool isWhiteSpace (const char c) const
 Test for white space character.
 

Protected Attributes

std::string sep
 
std::string eol
 
std::string div
 
std::string skip
 
char left
 
char right
 
std::string ws
 
std::string comment
 

Detailed Description

Simple data structure to support I/O of equations (see class JLANG::JEquation).

Definition at line 20 of file JEquationParameters.hh.

Constructor & Destructor Documentation

◆ JEquationParameters() [1/2]

JLANG::JEquationParameters::JEquationParameters ( )
inline

Default constructor.

Definition at line 25 of file JEquationParameters.hh.

26 {
27 this->sep = "=";
28 this->eol = "\n\r;";
29 this->div = "./";
30 this->skip = "#";
31 this->left = '(';
32 this->right = ')';
33 this->ws = " \t\n\v\f\r";
34 this->comment = "";
35 }

◆ JEquationParameters() [2/2]

JLANG::JEquationParameters::JEquationParameters ( const std::string & sep,
const std::string & eol,
const std::string & div,
const std::string & skip,
const char left = '(',
const char right = ')',
const std::string & ws = " \t\n\v\f\r",
const std::string & comment = "" )
inline

Constructor.

Parameters
sepseparator characters
eolend of line characters
divdivision characters
skipskip line characters
leftleft bracket
rightright bracket
wswhite space characters
commentinline comment characters

Definition at line 50 of file JEquationParameters.hh.

58 {
59 this->sep = sep;
60 this->eol = eol;
61 this->div = div;
62 this->skip = skip;
63 this->left = left;
64 this->right = right;
65 this->ws = ws;
66 this->comment = comment;
67 }

Member Function Documentation

◆ getEquationParameters()

const JEquationParameters & JLANG::JEquationParameters::getEquationParameters ( ) const
inline

Get equation parameters.

Returns
equation parameters

Definition at line 75 of file JEquationParameters.hh.

76 {
77 return *this;
78 }

◆ setEquationParameters()

void JLANG::JEquationParameters::setEquationParameters ( const JEquationParameters & buffer)
inline

Set equation parameters.

Parameters
bufferequation parameters

Definition at line 86 of file JEquationParameters.hh.

87 {
88 static_cast<JEquationParameters&>(*this) = buffer;
89 }
JEquationParameters()
Default constructor.

◆ getDefaultSeparator()

const char JLANG::JEquationParameters::getDefaultSeparator ( ) const
inline

Get default separator character.

Returns
separator between parameter and its value

Definition at line 97 of file JEquationParameters.hh.

98 {
99 if (sep.empty())
100 return '=';
101 else
102 return sep[0];
103 }

◆ getSeparator() [1/2]

const std::string & JLANG::JEquationParameters::getSeparator ( ) const
inline

Get separator characters.

Returns
separator between parameter and its value

Definition at line 111 of file JEquationParameters.hh.

112 {
113 return sep;
114 }

◆ getSeparator() [2/2]

std::string & JLANG::JEquationParameters::getSeparator ( )
inline

Get separator characters.

Returns
separator between parameter and its value

Definition at line 122 of file JEquationParameters.hh.

123 {
124 return sep;
125 }

◆ setSeparator()

void JLANG::JEquationParameters::setSeparator ( const std::string & sep)
inline

Set separator character(s).

Parameters
sepseparator between parameter and its value

Definition at line 133 of file JEquationParameters.hh.

134 {
135 this->sep = sep;
136 }

◆ getDefaultEndOfLine()

const char JLANG::JEquationParameters::getDefaultEndOfLine ( ) const
inline

Get default end of line character.

Returns
end of line character

Definition at line 144 of file JEquationParameters.hh.

145 {
146 if (eol.empty())
147 return '\n';
148 else
149 return eol[0];
150 }

◆ getPreferredEndOfLine()

const char JLANG::JEquationParameters::getPreferredEndOfLine ( const unsigned int index) const
inline

Get preferred end of line character.

Parameters
indexindex
Returns
end of line character

Definition at line 159 of file JEquationParameters.hh.

160 {
161 if (eol.empty())
162 return '\n';
163 else if (index < eol.size())
164 return eol[index];
165 else
166 return eol[0];
167 }

◆ getEndOfLine() [1/2]

const std::string & JLANG::JEquationParameters::getEndOfLine ( ) const
inline

Get end of line characters.

Returns
end of line characters

Definition at line 175 of file JEquationParameters.hh.

176 {
177 return eol;
178 }

◆ getEndOfLine() [2/2]

std::string & JLANG::JEquationParameters::getEndOfLine ( )
inline

Get end of line characters.

Returns
end of line characters

Definition at line 186 of file JEquationParameters.hh.

187 {
188 return eol;
189 }

◆ setEndOfLine()

void JLANG::JEquationParameters::setEndOfLine ( const std::string & eol)
inline

Set end of line characters.

Parameters
eolend of line character

Definition at line 197 of file JEquationParameters.hh.

198 {
199 this->eol = eol;
200 }

◆ getDefaultDivision()

const char JLANG::JEquationParameters::getDefaultDivision ( ) const
inline

Get default division character.

Returns
division character

Definition at line 208 of file JEquationParameters.hh.

209 {
210 if (div.empty())
211 return '.';
212 else
213 return div[0];
214 }

◆ getDivision() [1/2]

const std::string & JLANG::JEquationParameters::getDivision ( ) const
inline

Get division characters.

Returns
division characters

Definition at line 222 of file JEquationParameters.hh.

223 {
224 return div;
225 }

◆ getDivision() [2/2]

std::string & JLANG::JEquationParameters::getDivision ( )
inline

Get division characters.

Returns
division characters

Definition at line 233 of file JEquationParameters.hh.

234 {
235 return div;
236 }

◆ setDivision()

void JLANG::JEquationParameters::setDivision ( const std::string & div)
inline

Set division characters.

Parameters
divdivision characters

Definition at line 244 of file JEquationParameters.hh.

245 {
246 this->div = div;
247 }

◆ getDefaultSkipLine()

const char JLANG::JEquationParameters::getDefaultSkipLine ( ) const
inline

Get default skip line character.

Returns
skip line character

Definition at line 255 of file JEquationParameters.hh.

256 {
257 if (skip.empty())
258 return '#';
259 else
260 return skip[0];
261 }

◆ getSkipLine() [1/2]

const std::string & JLANG::JEquationParameters::getSkipLine ( ) const
inline

Get skip line characters.

Returns
skip line characters

Definition at line 269 of file JEquationParameters.hh.

270 {
271 return skip;
272 }

◆ getSkipLine() [2/2]

std::string & JLANG::JEquationParameters::getSkipLine ( )
inline

Get skip line characters.

Returns
skip line characters

Definition at line 280 of file JEquationParameters.hh.

281 {
282 return skip;
283 }

◆ setSkipLine()

void JLANG::JEquationParameters::setSkipLine ( const std::string & skip)
inline

Set skip line characters.

Parameters
skipskip line characters

Definition at line 291 of file JEquationParameters.hh.

292 {
293 this->skip = skip;
294 }

◆ setBrackets()

void JLANG::JEquationParameters::setBrackets ( const char left,
const char right )
inline

Set brackets.

Parameters
leftleft bracket
rightright bracket

Definition at line 303 of file JEquationParameters.hh.

304 {
305 this->left = left;
306 this->right = right;
307 }

◆ getLeftBracket() [1/2]

char JLANG::JEquationParameters::getLeftBracket ( ) const
inline

Get left bracket.

Returns
left bracket

Definition at line 315 of file JEquationParameters.hh.

316 {
317 return left;
318 }

◆ getLeftBracket() [2/2]

char & JLANG::JEquationParameters::getLeftBracket ( )
inline

Get left bracket.

Returns
left bracket

Definition at line 326 of file JEquationParameters.hh.

327 {
328 return left;
329 }

◆ getRightBracket() [1/2]

char JLANG::JEquationParameters::getRightBracket ( ) const
inline

Get right bracket.

Returns
right bracket

Definition at line 337 of file JEquationParameters.hh.

338 {
339 return right;
340 }

◆ getRightBracket() [2/2]

char & JLANG::JEquationParameters::getRightBracket ( )
inline

Get right bracket.

Returns
right bracket

Definition at line 348 of file JEquationParameters.hh.

349 {
350 return right;
351 }

◆ getDefaultWhiteSpace()

const char JLANG::JEquationParameters::getDefaultWhiteSpace ( ) const
inline

Get default white space character.

Returns
white space character

Definition at line 359 of file JEquationParameters.hh.

360 {
361 if (ws.empty())
362 return ' ';
363 else
364 return ws[0];
365 }

◆ getWhiteSpace() [1/2]

const std::string & JLANG::JEquationParameters::getWhiteSpace ( ) const
inline

Get white space characters.

Returns
white space characters

Definition at line 373 of file JEquationParameters.hh.

374 {
375 return ws;
376 }

◆ getWhiteSpace() [2/2]

std::string & JLANG::JEquationParameters::getWhiteSpace ( )
inline

Get white space characters.

Returns
white space characters

Definition at line 384 of file JEquationParameters.hh.

385 {
386 return ws;
387 }

◆ setWhiteSpace()

void JLANG::JEquationParameters::setWhiteSpace ( const std::string & ws)
inline

Set white space characters.

Parameters
wswhite space characters

Definition at line 395 of file JEquationParameters.hh.

396 {
397 this->ws = ws;
398 }

◆ getComment() [1/2]

const std::string & JLANG::JEquationParameters::getComment ( ) const
inline

Get comment string.

Returns
comment string

Definition at line 406 of file JEquationParameters.hh.

407 {
408 return comment;
409 }

◆ getComment() [2/2]

std::string & JLANG::JEquationParameters::getComment ( )
inline

Get comment string.

Returns
comment string

Definition at line 417 of file JEquationParameters.hh.

418 {
419 return comment;
420 }

◆ setComment()

void JLANG::JEquationParameters::setComment ( const std::string & comment)
inline

Set comment string.

Parameters
commentcomment string

Definition at line 428 of file JEquationParameters.hh.

429 {
430 this->comment = comment;
431 }

◆ join()

JEquationParameters & JLANG::JEquationParameters::join ( const JEquationParameters & value)
inline

Join equation parameters.

Parameters
valueequation parameters

Definition at line 439 of file JEquationParameters.hh.

440 {
441 using namespace std;
442
443 for (string::const_iterator i = value.sep.begin(); i != value.sep.end(); ++i) {
444 if (!isSeparator(*i)) {
445 sep += *i;
446 }
447 }
448
449 for (string::const_iterator i = value.eol.begin(); i != value.eol.end(); ++i) {
450 if (!isEndOfLine(*i)) {
451 eol += *i;
452 }
453 }
454
455 for (string::const_iterator i = value.div.begin(); i != value.div.end(); ++i) {
456 if (!isDivision(*i)) {
457 div += *i;
458 }
459 }
460
461 for (string::const_iterator i = value.skip.begin(); i != value.skip.end(); ++i) {
462 if (!isSkipLine(*i)) {
463 skip += *i;
464 }
465 }
466
467 for (string::const_iterator i = value.ws.begin(); i != value.ws.end(); ++i) {
468 if (!isWhiteSpace(*i)) {
469 ws += *i;
470 }
471 }
472
473 return *this;
474 }
bool isSeparator(const char c) const
Test for separator character.
bool isDivision(const char c) const
Test for division character.
bool isEndOfLine(const char c) const
Test for end of line character.
bool isSkipLine(const char c) const
Test for skip line character.
bool isWhiteSpace(const char c) const
Test for white space character.

◆ isSeparator()

bool JLANG::JEquationParameters::isSeparator ( const char c) const
inline

Test for separator character.

Parameters
ccharacter
Returns
true if separator; else false

Definition at line 483 of file JEquationParameters.hh.

484 {
485 return sep .find(c) != std::string::npos;
486 }

◆ isEndOfLine()

bool JLANG::JEquationParameters::isEndOfLine ( const char c) const
inline

Test for end of line character.

Parameters
ccharacter
Returns
true if end of line; else false

Definition at line 495 of file JEquationParameters.hh.

495{ return eol .find(c) != std::string::npos; }

◆ isDivision()

bool JLANG::JEquationParameters::isDivision ( const char c) const
inline

Test for division character.

Parameters
ccharacter
Returns
true if division; else false

Definition at line 504 of file JEquationParameters.hh.

505 {
506 return div .find(c) != std::string::npos;
507 }

◆ isSkipLine()

bool JLANG::JEquationParameters::isSkipLine ( const char c) const
inline

Test for skip line character.

Parameters
ccharacter
Returns
true if skip line; else false

Definition at line 516 of file JEquationParameters.hh.

517 {
518 return skip.find(c) != std::string::npos;
519 }

◆ isLeftBracket()

bool JLANG::JEquationParameters::isLeftBracket ( const char c) const
inline

Test for left bracket character.

Parameters
ccharacter
Returns
true if left bracket; else false

Definition at line 528 of file JEquationParameters.hh.

529 {
530 return c == left;
531 }

◆ isRightBracket()

bool JLANG::JEquationParameters::isRightBracket ( const char c) const
inline

Test for right bracket character.

Parameters
ccharacter
Returns
true if right bracket; else false

Definition at line 540 of file JEquationParameters.hh.

541 {
542 return c == right;
543 }

◆ isWhiteSpace()

bool JLANG::JEquationParameters::isWhiteSpace ( const char c) const
inline

Test for white space character.

Parameters
ccharacter
Returns
true if white space; else false

Definition at line 552 of file JEquationParameters.hh.

553 {
554 return ws .find(c) != std::string::npos;
555 }

Member Data Documentation

◆ sep

std::string JLANG::JEquationParameters::sep
protected

Definition at line 558 of file JEquationParameters.hh.

◆ eol

std::string JLANG::JEquationParameters::eol
protected

Definition at line 559 of file JEquationParameters.hh.

◆ div

std::string JLANG::JEquationParameters::div
protected

Definition at line 560 of file JEquationParameters.hh.

◆ skip

std::string JLANG::JEquationParameters::skip
protected

Definition at line 561 of file JEquationParameters.hh.

◆ left

char JLANG::JEquationParameters::left
protected

Definition at line 562 of file JEquationParameters.hh.

◆ right

char JLANG::JEquationParameters::right
protected

Definition at line 563 of file JEquationParameters.hh.

◆ ws

std::string JLANG::JEquationParameters::ws
protected

Definition at line 564 of file JEquationParameters.hh.

◆ comment

std::string JLANG::JEquationParameters::comment
protected

Definition at line 565 of file JEquationParameters.hh.


The documentation for this class was generated from the following file: