2 #ifndef GAUDIPROPERTYPARSERS_PARSERS_H
3 #define GAUDIPROPERTYPARSERS_PARSERS_H 1
19 #define PARSERS_DECL_FOR_SINGLE(Type)\
20 GAUDI_API StatusCode parse(Type& result, const std::string& input);
22 #define PARSERS_DECL_FOR_PAIR(FirstType, SecondType)\
23 GAUDI_API StatusCode parse(std::pair<FirstType, SecondType >& result,\
24 const std::string& input);
26 #define PARSERS_DECL_FOR_LIST(InnerType)\
27 GAUDI_API StatusCode parse(std::vector<InnerType>& result,\
28 const std::string& input);
221 (
std::vector< std::pair<double,double> >& result ,
222 const std::string& input ) ;
239 const std::string& input ) ;
256 (
std::vector< std::vector<std::string> >& result ,
257 const std::string& input ) ;
273 const std::string& input ) ;
290 ( std::map< int , int >& result ,
291 const std::string& input ) ;
307 ( std::map< int , double >& result ,
308 const std::string& input ) ;
323 ( std::map< std::string , std::string >& result ,
324 const std::string& input ) ;
340 ( std::map< std::string , int >& result ,
341 const std::string& input ) ;
357 ( std::map< std::string , double >& result ,
358 const std::string& input ) ;
376 (
std::map< std::string , std::vector< std::string> >& result ,
377 const std::string& input ) ;
395 (
std::map< std::string , std::vector< int > >& result ,
396 const std::string& input ) ;
414 (
std::map< std::string , std::vector< double > >& result ,
415 const std::string& input ) ;
425 ( std::map<int, std::string>& result ,
426 const std::string& input ) ;
436 ( std::map<unsigned int, std::string>& result ,
437 const std::string& input ) ;
444 ( std::map<std::string, unsigned int>& result ,
445 const std::string& input ) ;
474 ( std::string& name ,
476 const std::string& input ) ;
488 const std::string& input ) ;
499 ( std::map<std::string,Gaudi::Histo1DDef>&
histos ,
500 const std::string& input ) ;
514 (
std::map<std::string,std::pair<double,double> >& params ,
515 const std::string& input ) ;
524 template <
class T,
unsigned int N>
527 typedef std::vector<T> _Vct ;
534 std::copy ( tmp.begin() , tmp.end() , result ) ;
546 template <
unsigned int N>
550 std::fill_n ( result , N ,
' ' ) ;
555 if ( N == tmp.size() )
556 { std::copy ( tmp.begin() , tmp.end() , result ) ; }
557 else if ( N + 2 == tmp.size() &&
558 (
'\'' == tmp[0] ||
'\"' == tmp[0] ) &&
559 ( tmp[0] == tmp[tmp.size()-1] ))
560 { std::copy ( tmp.begin() + 1 , tmp.end() -1 , result ) ; }
572 #endif //GAUDIPROPERTYPARSERS_PARSERS_H
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...
This is a number of static methods for bootstrapping the Gaudi framework.
#define PARSERS_DECL_FOR_PAIR(FirstType, SecondType)