Jpp  18.2.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
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::JFluxMapParser JCOMPAREHISTOGRAMS::JResultTitle JCOMPAREHISTOGRAMS::JTestSummary::JTestSummaryHelper JDETECTOR::JDetectorHeader::JDetectorHeaderHelper JDETECTOR::JDetectorParametersHelper JDETECTOR::JPMTParameters::JPMTParametersHelper JOSCPROB::JOscChannel::JOscChannelHelper JOSCPROB::JOscParametersInterface< T >::JOscParametersHelper

Public Member Functions

 JEquationParameters ()
 Default constructor. More...
 
 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. More...
 
const JEquationParametersgetEquationParameters () const
 Get equation parameters. More...
 
void setEquationParameters (const JEquationParameters &buffer)
 Set equation parameters. More...
 
const char getDefaultSeparator () const
 Get default separator character. More...
 
const std::stringgetSeparator () const
 Get separator characters. More...
 
std::stringgetSeparator ()
 Get separator characters. More...
 
void setSeparator (const std::string &sep)
 Set separator character(s). More...
 
const char getDefaultEndOfLine () const
 Get default end of line character. More...
 
const char getPreferredEndOfLine (const unsigned int index) const
 Get preferred end of line character. More...
 
const std::stringgetEndOfLine () const
 Get end of line characters. More...
 
std::stringgetEndOfLine ()
 Get end of line characters. More...
 
void setEndOfLine (const std::string &eol)
 Set end of line characters. More...
 
const char getDefaultDivision () const
 Get default division character. More...
 
const std::stringgetDivision () const
 Get division characters. More...
 
std::stringgetDivision ()
 Get division characters. More...
 
void setDivision (const std::string &div)
 Set division characters. More...
 
const char getDefaultSkipLine () const
 Get default skip line character. More...
 
const std::stringgetSkipLine () const
 Get skip line characters. More...
 
std::stringgetSkipLine ()
 Get skip line characters. More...
 
void setSkipLine (const std::string &skip)
 Set skip line characters. More...
 
void setBrackets (const char left, const char right)
 Set brackets. More...
 
char getLeftBracket () const
 Get left bracket. More...
 
char & getLeftBracket ()
 Get left bracket. More...
 
char getRightBracket () const
 Get right bracket. More...
 
char & getRightBracket ()
 Get right bracket. More...
 
const char getDefaultWhiteSpace () const
 Get default white space character. More...
 
const std::stringgetWhiteSpace () const
 Get white space characters. More...
 
std::stringgetWhiteSpace ()
 Get white space characters. More...
 
void setWhiteSpace (const std::string &ws)
 Set white space characters. More...
 
const std::stringgetComment () const
 Get comment string. More...
 
std::stringgetComment ()
 Get comment string. More...
 
void setComment (const std::string &comment)
 Set comment string. More...
 
JEquationParametersjoin (const JEquationParameters &value)
 Join equation parameters. More...
 
bool isSeparator (const char c) const
 Test for separator character. More...
 
bool isEndOfLine (const char c) const
 Test for end of line character. More...
 
bool isDivision (const char c) const
 Test for division character. More...
 
bool isSkipLine (const char c) const
 Test for skip line character. More...
 
bool isLeftBracket (const char c) const
 Test for left bracket character. More...
 
bool isRightBracket (const char c) const
 Test for right bracket character. More...
 
bool isWhiteSpace (const char c) const
 Test for white space character. More...
 

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

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  }
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

Definition at line 49 of file JEquationParameters.hh.

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

Member Function Documentation

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

Get equation parameters.

Returns
equation parameters

Definition at line 74 of file JEquationParameters.hh.

75  {
76  return *this;
77  }
void JLANG::JEquationParameters::setEquationParameters ( const JEquationParameters buffer)
inline

Set equation parameters.

Parameters
bufferequation parameters

Definition at line 85 of file JEquationParameters.hh.

86  {
87  static_cast<JEquationParameters&>(*this) = buffer;
88  }
Simple data structure to support I/O of equations (see class JLANG::JEquation).
const char JLANG::JEquationParameters::getDefaultSeparator ( ) const
inline

Get default separator character.

Returns
separator between parameter and its value

Definition at line 96 of file JEquationParameters.hh.

97  {
98  if (sep.empty())
99  return '=';
100  else
101  return sep[0];
102  }
const std::string& JLANG::JEquationParameters::getSeparator ( ) const
inline

Get separator characters.

Returns
separator between parameter and its value

Definition at line 110 of file JEquationParameters.hh.

111  {
112  return sep;
113  }
std::string& JLANG::JEquationParameters::getSeparator ( )
inline

Get separator characters.

Returns
separator between parameter and its value

Definition at line 121 of file JEquationParameters.hh.

122  {
123  return sep;
124  }
void JLANG::JEquationParameters::setSeparator ( const std::string sep)
inline

Set separator character(s).

Parameters
sepseparator between parameter and its value

Definition at line 132 of file JEquationParameters.hh.

133  {
134  this->sep = sep;
135  }
const char JLANG::JEquationParameters::getDefaultEndOfLine ( ) const
inline

Get default end of line character.

Returns
end of line character

Definition at line 143 of file JEquationParameters.hh.

144  {
145  if (eol.empty())
146  return '\n';
147  else
148  return eol[0];
149  }
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 158 of file JEquationParameters.hh.

159  {
160  if (eol.empty())
161  return '\n';
162  else if (index < eol.size())
163  return eol[index];
164  else
165  return eol[0];
166  }
const std::string& JLANG::JEquationParameters::getEndOfLine ( ) const
inline

Get end of line characters.

Returns
end of line characters

Definition at line 174 of file JEquationParameters.hh.

175  {
176  return eol;
177  }
std::string& JLANG::JEquationParameters::getEndOfLine ( )
inline

Get end of line characters.

Returns
end of line characters

Definition at line 185 of file JEquationParameters.hh.

186  {
187  return eol;
188  }
void JLANG::JEquationParameters::setEndOfLine ( const std::string eol)
inline

Set end of line characters.

Parameters
eolend of line character

Definition at line 196 of file JEquationParameters.hh.

197  {
198  this->eol = eol;
199  }
const char JLANG::JEquationParameters::getDefaultDivision ( ) const
inline

Get default division character.

Returns
division character

Definition at line 207 of file JEquationParameters.hh.

208  {
209  if (div.empty())
210  return '.';
211  else
212  return div[0];
213  }
const std::string& JLANG::JEquationParameters::getDivision ( ) const
inline

Get division characters.

Returns
division characters

Definition at line 221 of file JEquationParameters.hh.

222  {
223  return div;
224  }
std::string& JLANG::JEquationParameters::getDivision ( )
inline

Get division characters.

Returns
division characters

Definition at line 232 of file JEquationParameters.hh.

233  {
234  return div;
235  }
void JLANG::JEquationParameters::setDivision ( const std::string div)
inline

Set division characters.

Parameters
divdivision characters

Definition at line 243 of file JEquationParameters.hh.

244  {
245  this->div = div;
246  }
const char JLANG::JEquationParameters::getDefaultSkipLine ( ) const
inline

Get default skip line character.

Returns
skip line character

Definition at line 254 of file JEquationParameters.hh.

255  {
256  if (skip.empty())
257  return '#';
258  else
259  return skip[0];
260  }
const std::string& JLANG::JEquationParameters::getSkipLine ( ) const
inline

Get skip line characters.

Returns
skip line characters

Definition at line 268 of file JEquationParameters.hh.

269  {
270  return skip;
271  }
std::string& JLANG::JEquationParameters::getSkipLine ( )
inline

Get skip line characters.

Returns
skip line characters

Definition at line 279 of file JEquationParameters.hh.

280  {
281  return skip;
282  }
void JLANG::JEquationParameters::setSkipLine ( const std::string skip)
inline

Set skip line characters.

Parameters
skipskip line characters

Definition at line 290 of file JEquationParameters.hh.

291  {
292  this->skip = skip;
293  }
void JLANG::JEquationParameters::setBrackets ( const char  left,
const char  right 
)
inline

Set brackets.

Parameters
leftleft bracket
rightright bracket

Definition at line 302 of file JEquationParameters.hh.

303  {
304  this->left = left;
305  this->right = right;
306  }
char JLANG::JEquationParameters::getLeftBracket ( ) const
inline

Get left bracket.

Returns
left bracket

Definition at line 314 of file JEquationParameters.hh.

315  {
316  return left;
317  }
char& JLANG::JEquationParameters::getLeftBracket ( )
inline

Get left bracket.

Returns
left bracket

Definition at line 325 of file JEquationParameters.hh.

326  {
327  return left;
328  }
char JLANG::JEquationParameters::getRightBracket ( ) const
inline

Get right bracket.

Returns
right bracket

Definition at line 336 of file JEquationParameters.hh.

337  {
338  return right;
339  }
char& JLANG::JEquationParameters::getRightBracket ( )
inline

Get right bracket.

Returns
right bracket

Definition at line 347 of file JEquationParameters.hh.

348  {
349  return right;
350  }
const char JLANG::JEquationParameters::getDefaultWhiteSpace ( ) const
inline

Get default white space character.

Returns
white space character

Definition at line 358 of file JEquationParameters.hh.

359  {
360  if (ws.empty())
361  return ' ';
362  else
363  return ws[0];
364  }
const std::string& JLANG::JEquationParameters::getWhiteSpace ( ) const
inline

Get white space characters.

Returns
white space characters

Definition at line 372 of file JEquationParameters.hh.

373  {
374  return ws;
375  }
std::string& JLANG::JEquationParameters::getWhiteSpace ( )
inline

Get white space characters.

Returns
white space characters

Definition at line 383 of file JEquationParameters.hh.

384  {
385  return ws;
386  }
void JLANG::JEquationParameters::setWhiteSpace ( const std::string ws)
inline

Set white space characters.

Parameters
wswhite space characters

Definition at line 394 of file JEquationParameters.hh.

395  {
396  this->ws = ws;
397  }
const std::string& JLANG::JEquationParameters::getComment ( ) const
inline

Get comment string.

Returns
comment string

Definition at line 405 of file JEquationParameters.hh.

406  {
407  return comment;
408  }
std::string& JLANG::JEquationParameters::getComment ( )
inline

Get comment string.

Returns
comment string

Definition at line 416 of file JEquationParameters.hh.

417  {
418  return comment;
419  }
void JLANG::JEquationParameters::setComment ( const std::string comment)
inline

Set comment string.

Parameters
commentcomment string

Definition at line 427 of file JEquationParameters.hh.

428  {
429  this->comment = comment;
430  }
JEquationParameters& JLANG::JEquationParameters::join ( const JEquationParameters value)
inline

Join equation parameters.

Parameters
valueequation parameters

Definition at line 438 of file JEquationParameters.hh.

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

Test for separator character.

Parameters
ccharacter
Returns
true if separator; else false

Definition at line 482 of file JEquationParameters.hh.

483  {
484  return sep .find(c) != std::string::npos;
485  }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
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 494 of file JEquationParameters.hh.

494 { return eol .find(c) != std::string::npos; }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
bool JLANG::JEquationParameters::isDivision ( const char  c) const
inline

Test for division character.

Parameters
ccharacter
Returns
true if division; else false

Definition at line 503 of file JEquationParameters.hh.

504  {
505  return div .find(c) != std::string::npos;
506  }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
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 515 of file JEquationParameters.hh.

516  {
517  return skip.find(c) != std::string::npos;
518  }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
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 527 of file JEquationParameters.hh.

528  {
529  return c == left;
530  }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
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 539 of file JEquationParameters.hh.

540  {
541  return c == right;
542  }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'
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 551 of file JEquationParameters.hh.

552  {
553  return ws .find(c) != std::string::npos;
554  }
$WORKDIR ev_configure_dqsimulator txt echo process $DQ_SIMULATOR $i $SOURCE_HOST[$index] csh c(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&($DQ_SIMULATOR\-u\$NAME\$\-H\$SERVER\$\-M\$LOGGER\$\-d $DEBUG</dev/null > &/dev/null &))'

Member Data Documentation

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

Definition at line 557 of file JEquationParameters.hh.

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

Definition at line 558 of file JEquationParameters.hh.

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

Definition at line 559 of file JEquationParameters.hh.

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

Definition at line 560 of file JEquationParameters.hh.

char JLANG::JEquationParameters::left
protected

Definition at line 561 of file JEquationParameters.hh.

char JLANG::JEquationParameters::right
protected

Definition at line 562 of file JEquationParameters.hh.

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

Definition at line 563 of file JEquationParameters.hh.

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

Definition at line 564 of file JEquationParameters.hh.


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