The Gaudi Framework  master (594c33fa)
Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper > Struct Template Reference

#include </builds/gaudi/Gaudi/GaudiKernel/include/Gaudi/Parsers/Grammars.h>

Inheritance diagram for Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >:
Collaboration diagram for Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >:

Classes

struct  Operations
 

Public Types

typedef PointT ResultT
 
typedef PointT::Scalar ScalarT
 

Public Member Functions

 Pnt4DGrammar ()
 

Public Attributes

qi::rule< Iterator, ResultT(), Skipperpoint3d
 
qi::rule< Iterator, ResultT(), Skipperpoint4d
 
qi::rule< Iterator, ResultT(), Skipperlist3d
 
qi::rule< Iterator, ResultT(), Skipperlist4d
 
qi::rule< Iterator, ScalarT(), Skippere
 
Grammar_< Iterator, ScalarT, Skipper >::Grammar scalar
 
ph::function< Operationsop
 

Detailed Description

template<typename Iterator, typename PointT, typename Skipper>
struct Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >

Definition at line 476 of file Grammars.h.

Member Typedef Documentation

◆ ResultT

template<typename Iterator , typename PointT , typename Skipper >
typedef PointT Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::ResultT

Definition at line 477 of file Grammars.h.

◆ ScalarT

template<typename Iterator , typename PointT , typename Skipper >
typedef PointT::Scalar Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::ScalarT

Definition at line 478 of file Grammars.h.

Constructor & Destructor Documentation

◆ Pnt4DGrammar()

template<typename Iterator , typename PointT , typename Skipper >
Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::Pnt4DGrammar ( )
inline

Definition at line 507 of file Grammars.h.

507  : Pnt4DGrammar::base_type( point4d ) {
508  point4d = list4d | ( '(' >> list4d >> ')' ) | ( '[' >> list4d >> ']' );
509  list4d = ( point3d[op( qi::_val, qi::_1 )] >> enc::char_( ";," ) >> e[op( qi::_val, qi::_1, 'e' )] ) |
510  ( e[op( qi::_val, qi::_1, 'e' )] >> enc::char_( ";," ) >> point3d[op( qi::_val, qi::_1 )] );
511  e = -( enc::no_case[enc::char_( "te" )] >> ':' ) >> scalar[qi::_val = qi::_1];
512 
513  point3d = list3d | ( '(' >> list3d >> ')' ) | ( '[' >> list3d >> ']' );
514  list3d = -( enc::no_case[qi::lit( "x" ) | qi::lit( "px" )] >> ':' ) >> scalar[op( qi::_val, qi::_1, 'x' )] >>
515  ',' >> -( enc::no_case[qi::lit( "y" ) | qi::lit( "py" )] >> ':' ) >>
516  scalar[op( qi::_val, qi::_1, 'y' )] >> ',' >>
517  -( enc::no_case[qi::lit( "z" ) | qi::lit( "pz" )] >> ':' ) >> scalar[op( qi::_val, qi::_1, 'z' )];
518  }

Member Data Documentation

◆ e

template<typename Iterator , typename PointT , typename Skipper >
qi::rule<Iterator, ScalarT(), Skipper> Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::e

Definition at line 521 of file Grammars.h.

◆ list3d

template<typename Iterator , typename PointT , typename Skipper >
qi::rule<Iterator, ResultT(), Skipper> Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::list3d

Definition at line 520 of file Grammars.h.

◆ list4d

template<typename Iterator , typename PointT , typename Skipper >
qi::rule<Iterator, ResultT(), Skipper> Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::list4d

Definition at line 520 of file Grammars.h.

◆ op

template<typename Iterator , typename PointT , typename Skipper >
ph::function<Operations> Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::op

Definition at line 523 of file Grammars.h.

◆ point3d

template<typename Iterator , typename PointT , typename Skipper >
qi::rule<Iterator, ResultT(), Skipper> Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::point3d

Definition at line 520 of file Grammars.h.

◆ point4d

template<typename Iterator , typename PointT , typename Skipper >
qi::rule<Iterator, ResultT(), Skipper> Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::point4d

Definition at line 520 of file Grammars.h.

◆ scalar

template<typename Iterator , typename PointT , typename Skipper >
Grammar_<Iterator, ScalarT, Skipper>::Grammar Gaudi::Parsers::Pnt4DGrammar< Iterator, PointT, Skipper >::scalar

Definition at line 522 of file Grammars.h.


The documentation for this struct was generated from the following file:
Gaudi::Parsers::Pnt4DGrammar::op
ph::function< Operations > op
Definition: Grammars.h:523
Gaudi::Parsers::Pnt4DGrammar::list4d
qi::rule< Iterator, ResultT(), Skipper > list4d
Definition: Grammars.h:520
Gaudi::Parsers::Pnt4DGrammar::e
qi::rule< Iterator, ScalarT(), Skipper > e
Definition: Grammars.h:521
Gaudi::Parsers::Pnt4DGrammar::point3d
qi::rule< Iterator, ResultT(), Skipper > point3d
Definition: Grammars.h:520
Gaudi::Parsers::Pnt4DGrammar::point4d
qi::rule< Iterator, ResultT(), Skipper > point4d
Definition: Grammars.h:520
Gaudi::Parsers::Pnt4DGrammar::list3d
qi::rule< Iterator, ResultT(), Skipper > list3d
Definition: Grammars.h:520
Gaudi::Parsers::Pnt4DGrammar::scalar
Grammar_< Iterator, ScalarT, Skipper >::Grammar scalar
Definition: Grammars.h:522