Gaudi Framework, version v21r8

Home   Generated: 17 Mar 2010

Gaudi::Parsers::UnitsFileGrammar Class Reference

The valid represenation units file: 1 cm = 10 1 m = 1000 . More...

#include <ParserGrammar.h>

List of all members.

Public Member Functions

 UnitsFileGrammar (Parser *parser)
 Constructor.
void matchUnit () const
 Action called when matched unit definition.
void matchLeftReal (double real) const
 Action called when number matched in left part of definition.
void matchLeftUnit (std::string newunit) const
 Action called when new unit name matched.
void matchRight (std::string value) const
 Action called when right part number (possible with unit) matched.
Parserparser () const
 Pointer to parser.

Private Attributes

Parserm_parser

Classes

struct  definition


Detailed Description

The valid represenation units file: 1 cm = 10 1 m = 1000 .

See also:
Gaudi::Parsers::RealUnitsGrammar

Gaudi::Parsers::IdentifierGrammar

Author:
Alexander MAZUROV Alexander.Mazurov@gmail.com

Vanya BELYAEV ibelyaev@physics.syr.edu

Date:
2006-05-14

Definition at line 214 of file ParserGrammar.h.


Constructor & Destructor Documentation

Gaudi::Parsers::UnitsFileGrammar::UnitsFileGrammar ( Parser parser  )  [inline]

Constructor.

Parameters:
parser Pointer to parser object

Definition at line 224 of file ParserGrammar.h.

00225         : m_parser(parser) {}


Member Function Documentation

void Gaudi::Parsers::UnitsFileGrammar::matchUnit (  )  const [inline]

Action called when matched unit definition.

Definition at line 228 of file ParserGrammar.h.

00229       {
00230         file_position fpos = val().get_position();
00231         m_parser->matchUnitEntry
00232           (attrs().get<0>(),attrs().get<1>(),
00233            Position(fpos.file,fpos.line,fpos.column));
00234         attrs().get<1>() = 1;
00235       }

void Gaudi::Parsers::UnitsFileGrammar::matchLeftReal ( double  real  )  const [inline]

Action called when number matched in left part of definition.

Parameters:
real Matched number

Definition at line 240 of file ParserGrammar.h.

00241       { attrs().get<1>() = real; }

void Gaudi::Parsers::UnitsFileGrammar::matchLeftUnit ( std::string  newunit  )  const [inline]

Action called when new unit name matched.

Parameters:
newunit Matched name

Definition at line 247 of file ParserGrammar.h.

00248       { attrs().get<0>() = newunit; }

void Gaudi::Parsers::UnitsFileGrammar::matchRight ( std::string  value  )  const [inline]

Action called when right part number (possible with unit) matched.

Parameters:
value String representation of number

Definition at line 254 of file ParserGrammar.h.

00255       { attrs().get<1>() =
00256           boost::lexical_cast<double>(value)/attrs().get<1>(); }

Parser* Gaudi::Parsers::UnitsFileGrammar::parser (  )  const [inline]

Pointer to parser.

Definition at line 280 of file ParserGrammar.h.

00280 { return m_parser;}


Member Data Documentation

Parser* Gaudi::Parsers::UnitsFileGrammar::m_parser [private]

Definition at line 282 of file ParserGrammar.h.


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

Generated at Wed Mar 17 18:21:25 2010 for Gaudi Framework, version v21r8 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004