2 #ifndef GAUDIPROPERTYPARSERS_PARSERS_H
3 #define GAUDIPROPERTYPARSERS_PARSERS_H 1
20 #define PARSERS_DECL_FOR_SINGLE(Type)\
21 GAUDI_API StatusCode parse(Type& result, const std::string& input);
23 #define PARSERS_DECL_FOR_PAIR(FirstType, SecondType)\
24 GAUDI_API StatusCode parse(std::pair<FirstType, SecondType >& result,\
25 const std::string& input);
27 #define PARSERS_DECL_FOR_LIST(InnerType)\
28 GAUDI_API StatusCode parse(std::vector<InnerType>& result,\
29 const std::string& input);
222 (
std::vector< std::pair<double,double> >& result ,
223 const std::string& input ) ;
240 const std::string& input ) ;
257 (
std::vector< std::vector<std::string> >& result ,
258 const std::string& input ) ;
274 const std::string& input ) ;
291 ( std::map< int , int >& result ,
292 const std::string& input ) ;
308 ( std::map< int , double >& result ,
309 const std::string& input ) ;
324 ( std::map< std::string , std::string >& result ,
325 const std::string& input ) ;
341 ( std::map< std::string , int >& result ,
342 const std::string& input ) ;
358 ( std::map< std::string , double >& result ,
359 const std::string& input ) ;
377 (
std::map< std::string , std::vector< std::string> >& result ,
378 const std::string& input ) ;
396 (
std::map< std::string , std::vector< int > >& result ,
397 const std::string& input ) ;
415 (
std::map< std::string , std::vector< double > >& result ,
416 const std::string& input ) ;
426 ( std::map<int, std::string>& result ,
427 const std::string& input ) ;
437 ( std::map<unsigned int, std::string>& result ,
438 const std::string& input ) ;
445 ( std::map<std::string, unsigned int>& result ,
446 const std::string& input ) ;
452 template <
typename K,
typename V,
typename M>
455 const std::string& input ) {
456 return parse((M&)result, input);
486 ( std::string& name ,
488 const std::string& input ) ;
500 const std::string& input ) ;
511 ( std::map<std::string,Gaudi::Histo1DDef>&
histos ,
512 const std::string& input ) ;
526 (
std::map<std::string,std::pair<double,double> >& params ,
527 const std::string& input ) ;
536 template <
class T,
unsigned int N>
539 typedef std::vector<T> _Vct ;
546 std::copy ( tmp.begin() , tmp.end() , result ) ;
558 template <
unsigned int N>
562 std::fill_n ( result , N ,
' ' ) ;
567 if ( N == tmp.size() )
568 { std::copy ( tmp.begin() , tmp.end() , result ) ; }
569 else if ( N + 2 == tmp.size() &&
570 (
'\'' == tmp[0] ||
'\"' == tmp[0] ) &&
571 ( tmp[0] == tmp[tmp.size()-1] ))
572 { std::copy ( tmp.begin() + 1 , tmp.end() -1 , result ) ; }
584 #endif //GAUDIPROPERTYPARSERS_PARSERS_H
Extension of the STL map.
struct GAUDI_API vector
Parametrisation class for vector-like implementation.
StatusCode parse(GaudiUtils::HashMap< K, V > &result, const std::string &input)
Basic parser for the types of HashMap used in DODBasicMapper.
#define PARSERS_DECL_FOR_LIST(InnerType)
#define PARSERS_DECL_FOR_SINGLE(Type)
bool isFailure() const
Test for a status code of FAILURE.
struct GAUDI_API map
Parametrisation class for map-like implementation.
This class is used for returning status codes from appropriate routines.
Simple helper class for description of 1D-histogram The class is targeted to act as the primary "hist...
Helper functions to set/get the application return code.
#define PARSERS_DECL_FOR_PAIR(FirstType, SecondType)