Logo ROOT  
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 60 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 70 of file RooStreamParser.cxx.

◆ ~RooStreamParser()

RooStreamParser::~RooStreamParser ( )
virtual

Destructor.

Definition at line 80 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 89 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 430 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 470 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 503 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 398 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 110 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 417 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 457 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 310 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 491 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 130 of file RooStreamParser.cxx.

◆ setPunctuation()

void RooStreamParser::setPunctuation ( const TString punct)

Change list of characters interpreted as punctuation.

Definition at line 100 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 362 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: