The Gaudi Framework  v30r3 (a5ef0a68)
Parsers.h File Reference

The declaration of major parsing functions used e.g for (re)implementation of new extended properties see class Property These function also could be used in a different, much wider contex. More...

#include <list>
#include <map>
#include <set>
#include <string>
#include <vector>
#include "GaudiKernel/HistoDef.h"
#include "GaudiKernel/Map.h"
#include "GaudiKernel/StatusCode.h"
Include dependency graph for Parsers.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Gaudi
 Helper functions to set/get the application return code.
 
 Gaudi::Parsers
 

Macros

#define PARSERS_DECL_FOR_SINGLE(Type)   GAUDI_API StatusCode parse( Type& result, const std::string& input );
 
#define PARSERS_DECL_FOR_PAIR(FirstType, SecondType)    GAUDI_API StatusCode parse( std::pair<FirstType, SecondType>& result, const std::string& input );
 
#define PARSERS_DECL_FOR_LIST(InnerType)    GAUDI_API StatusCode parse( std::vector<InnerType>& result, const std::string& input );
 

Functions

GAUDI_API StatusCode Gaudi::Parsers::parse (std::vector< std::pair< double, double >> &result, const std::string &input)
 parse the bool value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::vector< std::pair< int, int >> &result, const std::string &input)
 parse the std::vector<std::pair<int,int> > value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::vector< std::vector< std::string >> &result, const std::string &input)
 parse the std::vector<std::vector<std::string> > value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::vector< std::vector< double >> &result, const std::string &input)
 parse the std::vector<std::vector<double> > value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< int, int > &result, const std::string &input)
 parse the std::map<int , int> value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< int, double > &result, const std::string &input)
 parse the std::map<int , double> value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, std::string > &result, const std::string &input)
 parse the std::map<std::string , std::string> value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, int > &result, const std::string &input)
 parse the std::map<std::string , int> value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, double > &result, const std::string &input)
 parse the std::map<std::string , double> value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, std::vector< std::string >> &result, const std::string &input)
 parse the std::map<std::string , std::vector<std::string> > value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, std::vector< int >> &result, const std::string &input)
 parse the std::map<std::string , std::vector<int> > value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, std::vector< double >> &result, const std::string &input)
 parse the std::map<std::string , std::vector<double> > value More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< int, std::string > &result, const std::string &input)
 parse the std::map<int,std::string> > objects More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< unsigned int, std::string > &result, const std::string &input)
 parse the std::map<unsigned int,std::string> > objects More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, unsigned int > &result, const std::string &input)
 parse the std::map<unsigned int,std::string> > objects More...
 
template<typename K , typename V , typename M >
GAUDI_API StatusCode Gaudi::Parsers::parse (GaudiUtils::Map< K, V, M > &result, const std::string &input)
 parse the GaudiUtils::Map<K, V, M> objects More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::string &name, std::string &value, const std::string &input)
 parse the pair expression (map-component) " 'name' :value" More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (Gaudi::Histo1DDef &histo, const std::string &input)
 helper function, needed for implementation of "Histogram Property" More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, Gaudi::Histo1DDef > &histos, const std::string &input)
 helper function, needed for implementation of "Histogram Property" More...
 
GAUDI_API StatusCode Gaudi::Parsers::parse (std::map< std::string, std::pair< double, double >> &params, const std::string &input)
 helper function, needed for implementation of map of pairs It is very useful construction for monitoring to represent the value and error or the allowed range for some parameter More...
 
template<class T , unsigned int N>
StatusCode Gaudi::Parsers::parse (T(&result)[N], const std::string &input)
 parser function for C-arrays More...
 
template<unsigned int N>
StatusCode Gaudi::Parsers::parse (char(&result)[N], const std::string &input)
 parser function for C-strings More...
 

Detailed Description

The declaration of major parsing functions used e.g for (re)implementation of new extended properties see class Property These function also could be used in a different, much wider contex.

all of them have the semantic: StatusCode parse ( TYPE& result , const std::string& input ) where input is the input string to be parsed, and result is the the result of parsing

const std::string input = ... ;
// parse the input
StatusCode sc = parse ( result , input ) ;
if ( sc.isFailure() )
{
// error here ...
}
std::cout << "vector size " << result.size() << std::endl ;
See also
Gaudi::Parsers::parse
Property
Author
Alexander MAZUROV Alexa.nosp@m.nder.nosp@m..Mazu.nosp@m.rov@.nosp@m.gmail.nosp@m..com
Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u
Date
2006-05-12

Definition in file Parsers.h.

Macro Definition Documentation

#define PARSERS_DECL_FOR_LIST (   InnerType)    GAUDI_API StatusCode parse( std::vector<InnerType>& result, const std::string& input );

Definition at line 25 of file Parsers.h.

#define PARSERS_DECL_FOR_PAIR (   FirstType,
  SecondType 
)    GAUDI_API StatusCode parse( std::pair<FirstType, SecondType>& result, const std::string& input );

Definition at line 22 of file Parsers.h.

#define PARSERS_DECL_FOR_SINGLE (   Type)    GAUDI_API StatusCode parse( Type& result, const std::string& input );

Definition at line 20 of file Parsers.h.