Logo ROOT   master
Reference Guide
RooStreamParser Class Reference

Definition at line 21 of file RooStreamParser.h.

Public Member Functions

 RooStreamParser (std::istream &is)
 Construct parser on given input stream. More...
 
 RooStreamParser (std::istream &is, const TString &errPrefix)
 Construct parser on given input stream. More...
 
virtual ~RooStreamParser ()
 Destructor. More...
 
Bool_t atEOF ()
 
Bool_t atEOL ()
 If true, parser is at end of line in stream. More...
 
Bool_t convertToDouble (const TString &token, Double_t &value)
 Convert given string to a double. Return true if the conversion fails. More...
 
Bool_t convertToInteger (const TString &token, Int_t &value)
 Convert given string to an Int_t. More...
 
Bool_t convertToString (const TString &token, TString &string)
 Convert given token to a string (i.e. remove eventual quotation marks) More...
 
Bool_t expectToken (const TString &expected, Bool_t zapOnError=kFALSE)
 Read the next token and return kTRUE if it is identical to the given 'expected' token. More...
 
TString getPunctuation () const
 
Bool_t isPunctChar (char c) const
 Check if given char is considered punctuation. More...
 
Bool_t readDouble (Double_t &value, Bool_t zapOnError=kFALSE)
 Read the next token and convert it to a Double_t. More...
 
Bool_t readInteger (Int_t &value, Bool_t zapOnError=kFALSE)
 Read a token and convert it to an Int_t. More...
 
TString readLine ()
 Read an entire line from the stream and return as TString This method recognizes the use of '\' in the istream as line continuation token. More...
 
Bool_t readString (TString &value, Bool_t zapOnError=kFALSE)
 Read a string token. More...
 
TString readToken ()
 Read one token separated by any of the know punctuation characters This function recognizes and handles comment lines in the istream (those starting with '#', quoted strings ("") the content of which is not tokenized and '+-. More...
 
void setPunctuation (const TString &punct)
 Change list of characters interpreted as punctuation. More...
 
void zapToEnd (Bool_t inclContLines=kFALSE)
 Eat all characters up to and including then end of the current line. More...
 

Protected Attributes

Bool_t _atEOF
 
Bool_t _atEOL
 
std::istream * _is
 
TString _prefix
 
TString _punct
 

#include <RooStreamParser.h>

Constructor & Destructor Documentation

◆ RooStreamParser() [1/2]

RooStreamParser::RooStreamParser ( std::istream &  is)

Construct parser on given input stream.

Definition at line 59 of file RooStreamParser.cxx.

◆ RooStreamParser() [2/2]

RooStreamParser::RooStreamParser ( std::istream &  is,
const TString errorPrefix 
)

Construct parser on given input stream.

Use given errorPrefix to prefix any parsing error messages

Definition at line 69 of file RooStreamParser.cxx.

◆ ~RooStreamParser()

RooStreamParser::~RooStreamParser ( )
virtual

Destructor.

Definition at line 79 of file RooStreamParser.cxx.

Member Function Documentation

◆ atEOF()

Bool_t RooStreamParser::atEOF ( )
inline

Definition at line 44 of file RooStreamParser.h.

◆ atEOL()

Bool_t RooStreamParser::atEOL ( )

If true, parser is at end of line in stream.

Definition at line 88 of file RooStreamParser.cxx.

◆ convertToDouble()

Bool_t RooStreamParser::convertToDouble ( const TString token,
Double_t value 
)

Convert given string to a double. Return true if the conversion fails.

Definition at line 429 of file RooStreamParser.cxx.

◆ convertToInteger()

Bool_t RooStreamParser::convertToInteger ( const TString token,
Int_t value 
)

Convert given string to an Int_t.

Returns true if an error occurred in conversion

Definition at line 469 of file RooStreamParser.cxx.

◆ convertToString()

Bool_t RooStreamParser::convertToString ( const TString token,
TString string 
)

Convert given token to a string (i.e. remove eventual quotation marks)

Definition at line 502 of file RooStreamParser.cxx.

◆ expectToken()

Bool_t RooStreamParser::expectToken ( const TString expected,
Bool_t  zapOnError = kFALSE 
)

Read the next token and return kTRUE if it is identical to the given 'expected' token.

Definition at line 397 of file RooStreamParser.cxx.

◆ getPunctuation()

TString RooStreamParser::getPunctuation ( ) const
inline

Definition at line 32 of file RooStreamParser.h.

◆ isPunctChar()

Bool_t RooStreamParser::isPunctChar ( char  c) const

Check if given char is considered punctuation.

Definition at line 109 of file RooStreamParser.cxx.

◆ readDouble()

Bool_t RooStreamParser::readDouble ( Double_t value,
Bool_t  zapOnError = kFALSE 
)

Read the next token and convert it to a Double_t.

Returns true if an error occurred in reading or conversion

Definition at line 416 of file RooStreamParser.cxx.

◆ readInteger()

Bool_t RooStreamParser::readInteger ( Int_t value,
Bool_t  zapOnError = kFALSE 
)

Read a token and convert it to an Int_t.

Returns true if an error occurred in reading or conversion

Definition at line 456 of file RooStreamParser.cxx.

◆ readLine()

TString RooStreamParser::readLine ( )

Read an entire line from the stream and return as TString This method recognizes the use of '\' in the istream as line continuation token.

Definition at line 309 of file RooStreamParser.cxx.

◆ readString()

Bool_t RooStreamParser::readString ( TString value,
Bool_t  zapOnError = kFALSE 
)

Read a string token.

Returns true if an error occurred in reading or conversion. If a the read token is enclosed in quotation marks those are stripped in the returned value

Definition at line 490 of file RooStreamParser.cxx.

◆ readToken()

TString RooStreamParser::readToken ( )

Read one token separated by any of the know punctuation characters This function recognizes and handles comment lines in the istream (those starting with '#', quoted strings ("") the content of which is not tokenized and '+-.

' characters that are part of a floating point numbers and are exempt from being interpreted as a token separator in case '+-.' are defined as token separators.

Definition at line 129 of file RooStreamParser.cxx.

◆ setPunctuation()

void RooStreamParser::setPunctuation ( const TString punct)

Change list of characters interpreted as punctuation.

Definition at line 99 of file RooStreamParser.cxx.

◆ zapToEnd()

void RooStreamParser::zapToEnd ( Bool_t  inclContLines = kFALSE)

Eat all characters up to and including then end of the current line.

If inclContLines is kTRUE, all continuation lines marked by the '\' token are zapped as well

Definition at line 361 of file RooStreamParser.cxx.

Member Data Documentation

◆ _atEOF

Bool_t RooStreamParser::_atEOF
protected

Definition at line 53 of file RooStreamParser.h.

◆ _atEOL

Bool_t RooStreamParser::_atEOL
protected

Definition at line 52 of file RooStreamParser.h.

◆ _is

std::istream* RooStreamParser::_is
protected

Definition at line 51 of file RooStreamParser.h.

◆ _prefix

TString RooStreamParser::_prefix
protected

Definition at line 54 of file RooStreamParser.h.

◆ _punct

TString RooStreamParser::_punct
protected

Definition at line 55 of file RooStreamParser.h.

Libraries for RooStreamParser:
[legend]

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