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 <string>
#include <vector>
#include <list>
#include <set>
#include <map>
#include "GaudiKernel/StatusCode.h"
#include "GaudiKernel/HistoDef.h"
#include "GaudiKernel/Map.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)
 
#define PARSERS_DECL_FOR_LIST(InnerType)
 

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)
Value:
const std::string& input);
StatusCode parse(char(&result)[N], const std::string &input)
parser function for C-strings
Definition: Parsers.h:559
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
STL class.
#define GAUDI_API
Definition: Kernel.h:107

Definition at line 27 of file Parsers.h.

#define PARSERS_DECL_FOR_PAIR (   FirstType,
  SecondType 
)
Value:
const std::string& input);
StatusCode parse(char(&result)[N], const std::string &input)
parser function for C-strings
Definition: Parsers.h:559
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
#define GAUDI_API
Definition: Kernel.h:107

Definition at line 23 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.