| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Namespace List
- Namespace Members

Namespaces | Classes | Functions
Gaudi::Utils Namespace Reference

## Namespaces
| Histos
| Collection of useful utilities for manipulations with AIDA hisgograms.
| QuasiRandom
| RegEx
| RegeEx: nemspace to hold gaudi regular expression checking.

## Classes
struct | _GetType
| Helper structure to define the proper return type for "get"-functions. More...
struct | _GetType< Gaudi::NamedRange_< CONTAINER > >
| the template specialization for "named ranges" More...
struct | _GetType< Gaudi::Range_< CONTAINER > >
| the template specialization for "ranges" More...
struct | _GetType< TYPE & >
| the template specialization for references More...
struct | _GetType< TYPE * >
| the template specialization for pointers More...
class | Aida2ROOT
| Accessor to underlying ROOT-representation of transient histograms The actual code is imported from Bender project. More...
class | AlgContext
| Helper "sentry" class to automatize the safe register/unregister the algorithm's context. More...
class | AlgNameSelector
| The trivial selector of algorithm by type. More...
class | AlgSelector
| Simple interface class for selection of algorithms. More...
class | AlgTypeSelector
| The trivial selector of algorithm by type. More...
class | AttribStringParser
| Parse attribute strings allowing iteration over the various attributes. More...
struct | CheckData
| Helper structure for implementation of "exists"-functions for GaudiCommon<BASE> More...
struct | CheckData< const TYPE >
| the template specialization for 'const'-type More...
struct | CheckData< Gaudi::NamedRange_< std::vector< const TYPE * > > >
| the template specialization for ranges More...
struct | CheckData< Gaudi::Range_< std::vector< const TYPE * > > >
| the template specialization for ranges More...
struct | CheckData< TYPE & >
| the template specialization for reference types More...
struct | CheckData< TYPE * >
| the template specialization for pointer types More...
struct | GetData
| Helper structure for implementation of "get"-functions for GaudiCommon<BASE> More...
struct | GetData< const TYPE >
| the template specialization for const types More...
struct | GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > >
| the template specialization for named ranges More...
struct | GetData< Gaudi::Range_< std::vector< const TYPE * > > >
| the template specialization for ranges More...
struct | GetData< TYPE & >
| the template specialization for reference types More...
struct | GetData< TYPE * >
| the template specialization for pointer types More...
struct | GetOrCreateData
| Helper structure for implementation of "getOrCreate"-functions for GaudiCommon<BASE> More...
struct | GetOrCreateData< TYPE, const TYPE2 >
struct | GetOrCreateData< const TYPE, TYPE2 >
struct | GetOrCreateData< const TYPE, const TYPE2 >
struct | GetOrCreateData< Gaudi::NamedRange_< std::vector< const TYPE * > >, TYPE2 >
struct | GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >
struct | GetOrCreateData< TYPE &, TYPE2 & >
struct | GetOrCreateData< TYPE &, TYPE2 >
struct | GetOrCreateData< TYPE *, TYPE2 * >
struct | GetOrCreateData< TYPE *, TYPE2 >
struct | GetOrCreateData< TYPE, TYPE2 & >
struct | GetOrCreateData< TYPE, TYPE2 * >
class | HistoStats
| The collection of trivial functions to access the statistical information for the histograms. More...
class | LockedChrono
| Helper object, useful for measurement of CPU-performance of highly-recursive structures, e.g. More...
class | MapBase
| Helper base-class to allow the generic Python-decoration for all "map-like" classes in Gaudi. More...
class | SignalMonitorSvc
| Implementation of Gaudi::ISignalMonitor. More...
class | StopSignalHandler
| Service that stop the processing if a signal is received. More...
struct | TuplePrinter
struct | TuplePrinter< Tuple, 1 >
class | TypeNameString
| Helper class to parse a string of format "type/name". More...

## Functions
GAUDI_API IAlgorithm * | getAlgorithm (const IAlgContextSvc *svc, const AlgSelector &sel)
| simple function to get the algorithm from Context Service More...
GAUDI_API IAlgorithm * | getAlgorithm (const std::vector< IAlgorithm * > &lst, const AlgSelector &sel)
| simple function to get the algorithm from Context Service More...
GAUDI_API GaudiAlgorithm * | getGaudiAlg (const IAlgContextSvc *svc)
| simple function to extract the last active GaudiAlgorithm from the context More...
GAUDI_API GaudiHistoAlg * | getHistoAlg (const IAlgContextSvc *svc)
| simple function to extract the last active GaudiHistoAlg from the context More...
GAUDI_API GaudiTupleAlg * | getTupleAlg (const IAlgContextSvc *svc)
| simple function to extract the last active GaudiTupleAlg from the context More...
GAUDI_API GaudiSequencer * | getGaudiSequencer (const IAlgContextSvc *svc)
| simple function to extract the last active GaudiSequencer from the context More...
GAUDI_API Sequencer * | getSequencerAlg (const IAlgContextSvc *svc)
| simple function to extract the last active Sequencer from the context More...
GAUDI_API IAlgorithm * | getSequencer (const IAlgContextSvc *svc)
| simple function to extract the last active "Sequencer" () GaudiSequencer or simple Sequencer) from the context More...
template<class TYPE >
_GetType< TYPE >::return_type | getFromTS (IDataProviderSvc *service, const std::string &location)
| Helper function to provide the minimal lookup and cast functionality of SmartDataPtr used in the helper classes. More...
AttribStringParser::Iterator | begin (const AttribStringParser &parser)
AttribStringParser::Iterator | end (const AttribStringParser &)
template<class ITERATOR >
std::ostream & | toStream (ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
| the helper function to print the sequence More...
template<class TYPE , std::size_t N>
std::ostream & | toStream (const boost::array< TYPE, N > &obj, std::ostream &s)
| printout of class boost::array The format is "Python's tuple" More...
GAUDI_API std::ostream & | toStream (const DataObjectHandleBase &v, std::ostream &o)
GAUDI_API std::ostream & | toStream (const DataObjID &v, std::ostream &o)
GAUDI_API std::ostream & | toStream (const DataObjIDColl &v, std::ostream &o)
GAUDI_API bool | hasProperty (const IProperty *p, const std::string &name)
| simple function which check the existence of the property with the given name. More...
GAUDI_API bool | hasProperty (const IInterface *p, const std::string &name)
| simple function which check the existence of the property with the given name. More...
GAUDI_API Gaudi::Details::PropertyBase * | getProperty (const IProperty *p, const std::string &name)
| simple function which gets the property with given name from the component More...
GAUDI_API Gaudi::Details::PropertyBase * | getProperty (const IInterface *p, const std::string &name)
| simple function which gets the property with given name from the component More...
GAUDI_API bool | hasProperty (const std::vector< const Gaudi::Details::PropertyBase * > *p, const std::string &name)
| check the property by name from the list of the properties More...
GAUDI_API const Gaudi::Details::PropertyBase * | getProperty (const std::vector< const Gaudi::Details::PropertyBase * > *p, const std::string &name)
| get the property by name from the list of the properties More...
template<class TYPE >
StatusCode | setProperty (IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
| simple function to set the property of the given object from the value More...
template<class TYPE >
StatusCode | setProperty (IProperty *component, const std::string &name, const TYPE &value)
| simple function to set the property of the given object from the value More...
GAUDI_API StatusCode | setProperty (IProperty *component, const std::string &name, const std::string &value, const std::string &doc="")
| the full specialization of the previous method setProperty( IProperty, std::string, const TYPE&) for standard strings More...
GAUDI_API StatusCode | setProperty (IProperty *component, const std::string &name, const char *value, const std::string &doc="")
| the full specialization of the method setProperty( IProperty, std::string, const TYPE&) for C-strings More...
template<unsigned N>
StatusCode | setProperty (IProperty *component, const std::string &name, const char(&value)[N], const std::string &doc="")
| the full specialization of the method setProperty( IProperty, std::string, const TYPE&) for C-arrays More...
GAUDI_API StatusCode | setProperty (IProperty *component, const std::string &name, const Gaudi::Details::PropertyBase *property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
GAUDI_API StatusCode | setProperty (IProperty *component, const std::string &name, const Gaudi::Details::PropertyBase &property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
template<class TYPE >
StatusCode | setProperty (IProperty *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
| simple function to set the property of the given object from another property More...
template<class TYPE >
StatusCode | setProperty (IInterface *component, const std::string &name, const TYPE &value, const std::string &doc="")
| simple function to set the property of the given object from the value More...
GAUDI_API StatusCode | setProperty (IInterface *component, const std::string &name, const std::string &value, const std::string &doc="")
| the full specialization of the method setProperty( IInterface , std::string, const TYPE&) for standard strings More...
GAUDI_API StatusCode | setProperty (IInterface *component, const std::string &name, const char *value, const std::string &doc="")
| the full specialization of the method setProperty( IInterface , std::string, const TYPE&) for C-strings More...
template<unsigned N>
StatusCode | setProperty (IInterface *component, const std::string &name, const char(&value)[N], const std::string &doc="")
| the full specialization of the method setProperty( IInterface, std::string, const TYPE&) for C-arrays More...
GAUDI_API StatusCode | setProperty (IInterface *component, const std::string &name, const Gaudi::Details::PropertyBase *property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
GAUDI_API StatusCode | setProperty (IInterface *component, const std::string &name, const Gaudi::Details::PropertyBase &property, const std::string &doc="")
| simple function to set the property of the given object from another property More...
template<class TYPE >
StatusCode | setProperty (IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
| simple function to set the property of the given object from another property More...
bool | iequal (const std::string &v1, const std::string &v2)
| Helper for case insensitive string comparison. More...
GAUDI_API std::string | formatAsTableRow (const StatEntity &counter, const bool flag, const std::string &format1=" |%|7d| |%|11.7g| |%|#11.5g| |%|#10.5g| |%|#10.5g| |%|#10.5g| |", const std::string &format2="*|%|7d| |%|11.5g| |(%|#9.7g| +- %|-#8.6g|)%%| ----- | ----- |")
| print the counter in a form of the table row More...
GAUDI_API std::string | formatAsTableRow (const std::string &name, const StatEntity &counter, const bool flag=true, const std::string &format1=" %|-15.15s|%|17t||%|7d| |%|11.7g| |%|#11.5g| |%|#10.5g| |%|#10.5g| |%|#10.5g| |", const std::string &format2="*%|-15.15s|%|17t||%|7d| |%|11.5g| |(%|#9.7g| +- %|-#8.6g|)%%| ----- | ----- |")
| print the counter in a form of the table row More...
GAUDI_API std::string | formatAsTableRow (const std::string &name, const std::string &group, const StatEntity &entity, const bool flag=true, const std::string &format1=" %|15.15s|%|-15.15s|%|32t||%|7d| |%|11.7g| |%|#11.5g| |%|#10.5g| |%|#10.5g| |%|#10.5g| |", const std::string &format2="*%|15.15s|%|-15.15s|%|32t||%|7d| |%|11.5g| |(%|#9.7g| +- %|-#8.6g|)%%| ----- | ----- |")
| print the counter in a form of the table row More...
template<class TYPE , std::size_t N>
std::ostream & | toStream (const std::array< TYPE, N > &obj, std::ostream &s)
| printout of class std::array The format is "Python's tuple" More...
GAUDI_API std::ostream & | toStream (const Gaudi::StringKey &key, std::ostream &s)
| send the object to stream (needed to use it as property) More...
template<class SCALAR >
std::ostream & | toStream (const SCALAR &, std::ostream &)
template<class SCALAR , unsigned int N>
std::ostream & | toStream (const ROOT::Math::SVector< SCALAR, N > &obj, std::ostream &s)
| the general streaming function for SVector using python-tupel format More...
template<class TYPE >
std::ostream & | toStream (const TYPE &obj, std::ostream &s)
| the generic implementation of the printout to the std::ostream More...
std::ostream & | toStream (const std::string &obj, std::ostream &s)
| the printtout of the strings. More...
std::ostream & | toStream (const bool obj, std::ostream &s)
| the printout of boolean values "a'la Python" More...
std::ostream & | toStream (const float obj, std::ostream &s, const int prec=6)
| the printout of float values with the reasonable precision More...
std::ostream & | toStream (const double obj, std::ostream &s, const int prec=8)
| the printout of double values with the reasonable precision More...
std::ostream & | toStream (const long double obj, std::ostream &s, const int prec=10)
| the printout of long double values with the reasonable precision More...
template<class KTYPE , class VTYPE >
std::ostream & | toStream (const std::pair< KTYPE, VTYPE > &obj, std::ostream &s)
| the partial template specialization of `std::pair<KTYPE,VTYPE>` printout the pair is printed a'la Python tuple: " ( a , b )" More...
template<class TYPE , class ALLOCATOR >
std::ostream & | toStream (const std::vector< TYPE, ALLOCATOR > &obj, std::ostream &s)
| the partial template specialization of `std::vector<TYPE,ALLOCATOR>` printout. More...
template<class TYPE , class ALLOCATOR >
std::ostream & | toStream (const std::list< TYPE, ALLOCATOR > &obj, std::ostream &s)
| the partial template specialization of `std::list<TYPE,ALLOCATOR>` printout. More...
template<class TYPE , class CMP , class ALLOCATOR >
std::ostream & | toStream (const std::set< TYPE, CMP, ALLOCATOR > &obj, std::ostream &s)
| the partial template specialization of `std::set<TYPE,CMP,ALLOCATOR>` printout. More...
template<class KTYPE , class VTYPE , class CMP , class ALLOCATOR >
std::ostream & | toStream (const std::map< KTYPE, VTYPE, CMP, ALLOCATOR > &obj, std::ostream &s)
| the partial template specialization of `std::map<KTYPE,VTYPE,CMP,ALLOCATOR>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )" More...
template<class KTYPE , class VTYPE , class CMP , class ALLOCATOR >
std::ostream & | toStream (const GaudiUtils::VectorMap< KTYPE, VTYPE, CMP, ALLOCATOR > &obj, std::ostream &s)
| the partial template specialization of `GaudiUtils::VectorMap<KTYPE,VTYPE,CMP,ALLOCATOR>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )" More...
template<class KTYPE , class VTYPE , class MAP >
std::ostream & | toStream (const GaudiUtils::Map< KTYPE, VTYPE, MAP > &obj, std::ostream &s)
| the partial template specialization of `GaudiUtils::Map<KTYPE,VTYPE,MAP>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )" More...
template<class KTYPE , class VTYPE , class HASH , class MAP >
std::ostream & | toStream (const GaudiUtils::HashMap< KTYPE, VTYPE, HASH, MAP > &obj, std::ostream &s)
| the partial template specialization of `GaudiUtils::HashMap<KTYPE,VTYPE,HASH,MAP>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )" More...
template<class TYPE , unsigned int N>
std::ostream & | toStream (TYPE(&obj)[N], std::ostream &s)
| the specialization for C-arrays, a'la python tuple More...
template<class TYPE , unsigned int N>
std::ostream & | toStream (const TYPE(&obj)[N], std::ostream &s)
| the specialization for C-arrays, a'la python tuple More...
template<unsigned int N>
std::ostream & | toStream (char(&obj)[N], std::ostream &s)
| the specialization for C-string, a'la python tuple More...
template<unsigned int N>
std::ostream & | toStream (const char(&obj)[N], std::ostream &s)
| the specialization for C-string, a'la python tuple More...
std::ostream & | toStream (const char *obj, std::ostream &s)
| the specialization for C-string, a'la python tuple More...
template<typename... Args>
std::ostream & | toStream (const std::tuple< Args... > &tuple, std::ostream &s)
| the helper function to print the tuple More...
template<class TYPE >
std::string | toString (const TYPE &obj)
| the generic implementation of the type conversion to the string More...
std::ostream & | operator<< (std::ostream &s, const TypeNameString &tn)
| Output stream operator for TypeNameString instances. More...
GAUDI_API std::ostream & | toStream (const Gaudi::XYZPoint &obj, std::ostream &s)
| print XYZ point More...
GAUDI_API std::ostream & | toStream (const Gaudi::XYZVector &obj, std::ostream &s)
| print XYZ vector More...
GAUDI_API std::ostream & | toStream (const Gaudi::LorentzVector &obj, std::ostream &s)
| print Lorentz vector More...
GAUDI_API std::ostream & | toStream (const TH1D &histo, std::ostream &stream, const bool asXML=false)
| stream the ROOT histogram into output stream More...
GAUDI_API std::ostream & | toStream (const TH2D &histo, std::ostream &stream, const bool asXML=false)
| stream the ROOT histogram into output stream More...
GAUDI_API std::ostream & | toStream (const TH1F &histo, std::ostream &stream, const bool asXML=false)
| stream the ROOT histogram into output stream More...
GAUDI_API std::ostream & | toStream (const TH2F &histo, std::ostream &stream, const bool asXML=false)
| stream the ROOT histogram into output stream More...
GAUDI_API std::ostream & | toStream (const AIDA::IHistogram1D &histo, std::ostream &stream, const bool asXML=false)
| stream the AIDA histogram into output stream More...
GAUDI_API std::ostream & | toStream (const AIDA::IHistogram2D &histo, std::ostream &stream, const bool asXML=false)
| stream the AIDA histogram into output stream More...
GAUDI_API std::string | toString (const TH1D &histo, const bool asXML=false)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const TH2D &histo, const bool asXML=false)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const TH1F &histo, const bool asXML=false)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const TH2F &histo, const bool asXML=false)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const AIDA::IHistogram1D &histo, const bool asXML=false)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const AIDA::IHistogram2D &histo, const bool asXML=false)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const AIDA::IHistogram1D *histo)
| convert the histogram into the string More...
GAUDI_API std::string | toString (AIDA::IHistogram1D *histo)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const TH1D *histo)
| convert the histogram into the string More...
GAUDI_API std::string | toString (TH1D *histo)
| convert the histogram into the string More...
GAUDI_API std::string | toString (const TH2D *histo)
| convert the histogram into the string More...
GAUDI_API std::string | toString (TH2D *histo)
| convert the histogram into the string More...

## Function Documentation

AttribStringParser::Iterator Gaudi::Utils::begin | ( | const AttribStringParser & | parser | ) |
| inline

Definition at line 134 of file AttribStringParser.h.

134 {
135 return AttribStringParser::Iterator(parser.parse(), parser.m_expandVars);
136 }
gaudirun.parser
parser
Definition: gaudirun.py:122
Iterator
boost::spirit::classic::position_iterator2< ForwardIterator > Iterator
Definition: Iterator.h:18

AttribStringParser::Iterator Gaudi::Utils::end | ( | const AttribStringParser & |  | ) |
| inline

Definition at line 137 of file AttribStringParser.h.

137 {
138 return AttribStringParser::Iterator();
139 }
Iterator
boost::spirit::classic::position_iterator2< ForwardIterator > Iterator
Definition: Iterator.h:18

std::string Gaudi::Utils::formatAsTableRow | ( | const StatEntity & | counter,
|  | const bool | flag,
|  | const std::string & | format1 = `" |%|7d| |%|11.7g| |%|#11.5g| |%|#10.5g| |%|#10.5g| |%|#10.5g| |"`,
|  | const std::string & | format2 = `"*|%|7d| |%|11.5g| |(%|#9.7g| +- %|-#8.6g|)%%| ----- | ----- |"`
| ) |  |

print the counter in a form of the table row

// loop over counters:
for ( ... )
{
const StatEntity& counter = ... ;
info() << formatAsTableRow( counter , true ) << endmsg ;
}

The regular counter is printed as 6 fields

- number of entries (long)
- overal sum (double)
- mean value (double)
- RMS (double)
- minimal value (double)
- maximal value (double)

The printout is performed according to the format, described in optional "format1" parameter using Boost Format Library. The incredible flexibility of Boost Format Library allows to customize the overall layout of the table form minor change the format of individual columns to the overall reshuffling of the reformatted columns

If the parameter "flag" is set to `true`, AND the content of the counter allows the interpretation of the counter as binomial efficiency counter, the printout is performed in a form of 4 numbers:

- number of entries (long)
- overall sum (double)
- binomial efficiency [perCent] (double)
- uncertainty in binomial efficiency [perCent] (double)

The printout is performed according to format, specified by parameter "format2"

See also
  http://boost.org/libs/format

Parameters

  name | the name associated with the counter
  counter | counter to be printed
  flag | use the special format for "efficiency" rows
  format1 | row format for the regular rows
  format2 | special row format for the "efficiency" rows

Returns
  formatted row in the table

Definition at line 326 of file StatEntity.cpp.

330 {
331 using namespace boost::io ;
332 if ( flag && 0 <= counter.eff() && 0 <= counter.effErr() )
333 {
334 boost::format fmt( format2 ) ;
335 fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
336 fmt
337 % counter.nEntries ()
338 % counter.sum ()
339 % ( counter.eff () * 100 )
340 % ( counter.effErr () * 100 ) ;
341 return fmt.str() ;
342 }
343 boost::format fmt ( format1 ) ;
344 fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
345 fmt
346 % counter.nEntries ()
347 % counter.sum ()
348 % counter.mean ()
349 % counter.rms ()
350 % counter.min ()
351 % counter.max () ;
352 return fmt.str() ;
353 }
StatEntity::effErr
double effErr() const
shortcut,
Definition: StatEntity.h:188
StatEntity::max
const double & max() const
maximal value
Definition: StatEntity.h:111
StatEntity::nEntries
const unsigned long & nEntries() const
getters
Definition: StatEntity.h:97
format
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
Definition: MsgStream.cpp:119
StatEntity::sum
const double & sum() const
accumulated value
Definition: StatEntity.h:99
StatEntity::eff
double eff() const
shortcut,
Definition: StatEntity.h:186
StatEntity::mean
double mean() const
mean value of counter
Definition: StatEntity.cpp:106
StatEntity::min
const double & min() const
minimal value
Definition: StatEntity.h:109
StatEntity::rms
double rms() const
r.m.s of value
Definition: StatEntity.cpp:116

std::string Gaudi::Utils::formatAsTableRow | ( | const std::string & | name,
|  | const StatEntity & | counter,
|  | const bool | flag = `true`,
|  | const std::string & | format1 = `" %|-15.15s|%|17t||%|7d| |%|11.7g| |%|#11.5g| |%|#10.5g| |%|#10.5g| |%|#10.5g| |"`,
|  | const std::string & | format2 = `"*%|-15.15s|%|17t||%|7d| |%|11.5g| |(%|#9.7g| +- %|-#8.6g|)%%| ----- | ----- |"`
| ) |  |

print the counter in a form of the table row

std::string header = " Counter | # | sum |" ;
header += " mean/eff^* | rms/err^* | min | max |" ;
info() << header << endmsg ;
// loop over counters:
for ( ... )
{
const std::string& name = ... ;
const StatEntity& counter = ... ;
info() << formatAsTableRow( name , counter ) << endmsg ;
}

The table row for the regular counter is printed as 7 fields

- counter name (string)
- number of entries (long)
- overal sum (double)
- mean value (double)
- RMS (double)
- minimal value (double)
- maximal value (double)

The printout is performed according to the format, described in optional "format1" parameter using Boost Format Library. The incredible flexibility of Boost Format Library allows to customize the overall layout of the table form minor change the format of individual columns to the overall reshuffling of the reformatted columns

If the parameter "flag" is set to `true` AND the counter name, converted to the lowercase constant one of the substrings: "eff","acc","fltr","filt","pass" AND (of course) the content of the counter allows the interpretation of the counter as the binomial efficiency counter, the printout is performed using 5 fields ("binomial efficiency format")

- counter name (string)
- number of entries (long)
- overall sum (double)
- binomial efficiency [perCent] (double)
- uncertainty in binomial efficiency [perCent] (double)

The printout is performed according to format, specified by parameter "format2"

See also
  http://boost.org/libs/format

Parameters

  name | the name associated with the counter
  counter | counter to be printed
  flag | use the special format for "efficiency" rows
  format1 | row format for the regular rows
  format2 | special row format for the "efficiency" rows

Returns
  formatted row in the table

Definition at line 365 of file StatEntity.cpp.

370 {
371 using namespace boost::io ;
372 if ( flag && effCounter ( name ) && 0 <= counter.eff() && 0 <= counter.effErr() )
373 {
374 boost::format fmt( format2 ) ;
375 fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
376 fmt
377 % ( "\"" + name + "\"" )
378 % counter.nEntries ()
379 % counter.sum ()
380 % ( counter.eff () * 100 )
381 % ( counter.effErr () * 100 ) ;
382 return fmt.str() ;
383 }
384 boost::format fmt ( format1 ) ;
385 fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
386 fmt
387 % ( "\"" + name + "\"" )
388 % counter.nEntries ()
389 % counter.sum ()
390 % counter.mean ()
391 % counter.rms ()
392 % counter.min ()
393 % counter.max () ;
394 return fmt.str() ;
395 }
StatEntity::effErr
double effErr() const
shortcut,
Definition: StatEntity.h:188
StatEntity::max
const double & max() const
maximal value
Definition: StatEntity.h:111
StatEntity::nEntries
const unsigned long & nEntries() const
getters
Definition: StatEntity.h:97
format
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
Definition: MsgStream.cpp:119
StatEntity::sum
const double & sum() const
accumulated value
Definition: StatEntity.h:99
StatEntity::eff
double eff() const
shortcut,
Definition: StatEntity.h:186
StatEntity::mean
double mean() const
mean value of counter
Definition: StatEntity.cpp:106
StatEntity::min
const double & min() const
minimal value
Definition: StatEntity.h:109
StatEntity::rms
double rms() const
r.m.s of value
Definition: StatEntity.cpp:116

std::string Gaudi::Utils::formatAsTableRow | ( | const std::string & | name,
|  | const std::string & | group,
|  | const StatEntity & | entity,
|  | const bool | flag = `true`,
|  | const std::string & | format1 = `" %|15.15s|%|-15.15s|%|32t||%|7d| |%|11.7g| |%|#11.5g| |%|#10.5g| |%|#10.5g| |%|#10.5g| |"`,
|  | const std::string & | format2 = `"*%|15.15s|%|-15.15s|%|32t||%|7d| |%|11.5g| |(%|#9.7g| +- %|-#8.6g|)%%| ----- | ----- |"`
| ) |  |

print the counter in a form of the table row

std::string header = " Counter :: Group | # |";
header += " sum | mean/eff^* | rms/err^* | min |";
header += " max |") ;
info() << header << endmsg ;
// loop over counters:
for ( ... )
{
const std::string& name = ... ;
const std::string& group = .. ;
const StatEntity& counter = ... ;
info() << formatAsTableRow ( name , group , counter ) << endmsg ;
}

The table row for the regular counter is printed as 8 fields

- counter name (string)
- counter group (string)
- number of entries (long)
- overall sum (double)
- mean value (double)
- RMS (double)
- minimal value (double)
- maximal value (double)

The printout is performed according to the format, described in optional "format1" parameter using Boost Format Library. The incredible flexibility of Boost Format Library allows to customize the overall layout of the table form minor change the format of individual columns to the overall reshuffling of the reformatted columns

If the parameter "flag" is set to `true` AND either the counter name or counter group, converted to the lowercase contains one of the substrings: "eff","acc","fltr","filt","pass" AND (of course) the content of the counter allows the interpretation of the counter as the binomial efficiency counter, the printout is performed using 6 fields ("binomial efficiency format")

- counter name (string)
- counter group (string)
- number of entries (long)
- overall sum (double)
- binomial efficiency [perCent] (double)
- uncertainty in binomial efficiency [perCent] (double)

The printout is performed according to format, specified by parameter "format2"

See also
  http://boost.org/libs/format

Parameters

  name | the name associated with the counter
  group | the group associated with the counter
  counter | counter to be printed
  flag | use the special format for "efficiency" rows
  format1 | row format for the regular rows
  format2 | the special row format for the "efficiency" rows

Returns
  formatted row in the table

Definition at line 408 of file StatEntity.cpp.

414 {
415 using namespace boost::io ;
416 if ( flag && ( effCounter ( name ) || effCounter ( group ) )
417 && 0 <= counter.eff() && 0 <= counter.effErr() )
418 {
419 boost::format fmt( format2 ) ;
420 fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
421 fmt
422 % ( "\"" + name + ":" )
423 % ( ":" + group + "\"" )
424 % counter.nEntries ()
425 % counter.sum ()
426 % ( counter.eff () * 100 )
427 % ( counter.effErr () * 100 ) ;
428 return fmt.str() ;
429 }
430 boost::format fmt ( format1 ) ;
431 fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
432 fmt
433 % ( "\"" + name + ":" )
434 % ( ":" + group + "\"" )
435 % counter.nEntries ()
436 % counter.sum ()
437 % counter.mean ()
438 % counter.rms ()
439 % counter.min ()
440 % counter.max () ;
441 return fmt.str() ;
442 }
format
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
Definition: MsgStream.cpp:119
plotSpeedupsPyRoot.counter
int counter
Definition: plotSpeedupsPyRoot.py:141

IAlgorithm * Gaudi::Utils::getAlgorithm | ( | const IAlgContextSvc * | svc,
|  | const AlgSelector & | sel
| ) |  |

simple function to get the algorithm from Context Service

// get the selector
const AlgSelector& selector = ... ;
// get the context service:
const IAlgContextSvc* svc = ... ;
// get the appropriate algorithm:
IAlgorithm* alg = getAlgorithm ( svc , selector ) ;

See also
  IAlgContextSvc
  Gaudi::Utils::AlgSelector

Parameters

  svc | pointer to Algororithm Contetx Service
  sel | the selection functor

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 26 of file GetAlg.cpp.

28 {
29 return svc ? getAlgorithm ( svc->algorithms() , sel ) : nullptr;
30 }
IOTest.sel
sel
Definition: IOTest.py:84
Gaudi::Utils::getAlgorithm
GAUDI_API IAlgorithm * getAlgorithm(const IAlgContextSvc *svc, const AlgSelector &sel)
simple function to get the algorithm from Context Service
Definition: GetAlg.cpp:26
IAlgContextSvc::algorithms
virtual const Algorithms & algorithms() const =0
get the stack of executed algorithms

IAlgorithm * Gaudi::Utils::getAlgorithm | ( | const std::vector< IAlgorithm * > & | lst,
|  | const AlgSelector & | sel
| ) |  |

simple function to get the algorithm from Context Service

// get the selector
const AlgSelector& selector = ... ;
// get the list of algorithms:
const std::vector<IAlgorithm*>& algs = ... ;
// get the appropriate algorithm:
IAlgorithm* alg = getAlgorithm ( algs , selector ) ;

See also
  IAlgContextSvc
  Gaudi::Utils::AlgSelector

Parameters

  lst | list of the algorithms
  sel | the selection functor

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 36 of file GetAlg.cpp.

38 {
39 auto it = std::find_if( lst.rbegin(), lst.rend(), std::cref(sel));
40 return it != lst.rend() ? *it : nullptr ;
41 }
std::vector::rend
T rend(T...args)
IOTest.sel
sel
Definition: IOTest.py:84
std::find_if
T find_if(T...args)
std::cref
T cref(T...args)
std::vector::rbegin
T rbegin(T...args)
template<class TYPE >

_GetType<TYPE>::return_type Gaudi::Utils::getFromTS | ( | IDataProviderSvc * | service,
|  | const std::string & | location
| ) |  |
| inline

Helper function to provide the minimal lookup and cast functionality of SmartDataPtr used in the helper classes.

Definition at line 61 of file GetData.h.

62 {
63 DataObject *obj = nullptr;
64 // Return the casted pointer if the retrieve was successful or nullptr otherwise.
65 return service->retrieveObject(location, obj).isSuccess() ?
66 dynamic_cast<typename _GetType<TYPE>::return_type>(obj) :
67 nullptr;
68 }
StatusCode::isSuccess
bool isSuccess() const
Test for a status code of SUCCESS.
Definition: StatusCode.h:74
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30
IDataProviderSvc::retrieveObject
virtual StatusCode retrieveObject(IRegistry *pDirectory, const std::string &path, DataObject *&pObject)=0
Retrieve object identified by its directory entry.

GaudiAlgorithm * Gaudi::Utils::getGaudiAlg | ( | const IAlgContextSvc * | svc | ) |

simple function to extract the last active GaudiAlgorithm from the context

// get the context service:
const IAlgContextSvc* svc = ... ;
GaudiAlgorithm* ga = getGaudiAlg ( svc ) ;

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 63 of file GetAlgs.cpp.

64 { return getAlg<GaudiAlgorithm> ( svc ) ; }

GaudiSequencer * Gaudi::Utils::getGaudiSequencer | ( | const IAlgContextSvc * | svc | ) |

simple function to extract the last active GaudiSequencer from the context

// get the context service:
const IAlgContextSvc* svc = ... ;
GaudiSequencer* sa = getGaudiSequencer ( svc ) ;

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 123 of file GetAlgs.cpp.

124 { return getAlg<GaudiSequencer> ( svc ) ; }

GaudiHistoAlg * Gaudi::Utils::getHistoAlg | ( | const IAlgContextSvc * | svc | ) |

simple function to extract the last active GaudiHistoAlg from the context

// get the context service:
const IAlgContextSvc* svc = ... ;
GaudiHistoAlg* ha = getHistoAlg ( svc ) ;

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 83 of file GetAlgs.cpp.

84 { return getAlg<GaudiHistoAlg> ( svc ) ; }

PropertyBase * Gaudi::Utils::getProperty | ( | const IProperty * | p,
|  | const std::string & | name
| ) |  |

simple function which gets the property with given name from the component

const IProperty* p = ... ;
const Gaudi::Details::PropertyBase* pro = getProperty( p , "Context" ) ;

Parameters

  p | pointer to IProperty object
  name | property name (case insensitive)

Returns
  property with the given name (if exists), NULL otherwise

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 223 of file Property.cpp.

224 {
225 // trivial check
226 if ( !p ) {
227 return nullptr;
228 } // RETURN
229 // get all properties
230 const auto& props = p->getProperties();
231 // comparison criteria:
232 auto ifound = std::find_if( props.begin(), props.end(), is_iByName{name} );
233 return ifound != props.end() ? *ifound : nullptr;
234 }
IProperty::getProperties
virtual const std::vector< Gaudi::Details::PropertyBase * > & getProperties() const =0
Get list of properties.
std::find_if
T find_if(T...args)

PropertyBase * Gaudi::Utils::getProperty | ( | const IInterface * | p,
|  | const std::string & | name
| ) |  |

simple function which gets the property with given name from the component

const IInterface* p = ... ;
const Gaudi::Details::PropertyBase* pro = getProperty( p , "Context" ) ;

Parameters

  p | pointer to IInterface object
  name | property name (case insensitive)

Returns
  property with the given name (if exists), NULL otherwise

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 254 of file Property.cpp.

255 {
256 // trivial check
257 if ( !p ) {
258 return nullptr;
259 } // RETURN
260 // remove const-qualifier
261 IInterface* _i = const_cast<IInterface*>( p );
262 if ( !_i ) {
263 return nullptr;
264 } // RETURN
265 SmartIF<IProperty> property( _i );
266 return property ? getProperty( property, name ) : nullptr;
267 }
SmartIF< IProperty >
property
Gaudi::Details::PropertyBase * property(const std::string &name) const
IInterface
Definition of the basic interface.
Definition: IInterface.h:234
Gaudi::Utils::getProperty
GAUDI_API Gaudi::Details::PropertyBase * getProperty(const IProperty *p, const std::string &name)
simple function which gets the property with given name from the component
Definition: Property.cpp:223

const PropertyBase * Gaudi::Utils::getProperty | ( | const std::vector< const Gaudi::Details::PropertyBase * > * | p,
|  | const std::string & | name
| ) |  |

get the property by name from the list of the properties

IJobOptionsSvc* svc = ... ;
const std::string client = ... ;
// get the property:
const Gaudi::Details::PropertyBase* context =
getProperty ( svc->getProperties( client ) , "Context" )

See also
  IJobOptionsSvc

Parameters

  p | list of properties
  name | property name (case insensitive)

Returns
  property with the given name (if exists), NULL otherwise

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 320 of file Property.cpp.

321 {
322 // trivial check
323 if ( !p ) {
324 return nullptr;
325 } // RETURN
326 auto ifound = std::find_if( p->begin(), p->end(), is_iByName{name} );
327 return p->end() != ifound ? *ifound : nullptr; // RETURN
328 }
std::vector::end
T end(T...args)
std::find_if
T find_if(T...args)
std::vector::begin
T begin(T...args)

IAlgorithm * Gaudi::Utils::getSequencer | ( | const IAlgContextSvc * | svc | ) |

simple function to extract the last active "Sequencer" () GaudiSequencer or simple Sequencer) from the context

// get the context service:
const IAlgContextSvc* svc = ... ;
IAlgorithm* a = getSequencer ( svc ) ;

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 163 of file GetAlgs.cpp.

164 {
165 if ( !svc ) { return nullptr ; } // RETURN
166 //
167 AlgTypeSelector<GaudiSequencer> sel1 ;
168 AlgTypeSelector<Sequencer> sel2 ;
169
170 const auto& algs = svc->algorithms();
171 auto a = std::find_if( algs.rbegin(), algs.rend(),
172 [&](IAlgorithm* alg) { return sel1(alg) || sel2(alg); } );
173 return a!=algs.rend() ? *a : nullptr;
174 }
IAlgorithm
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition: IAlgorithm.h:27
IAlgContextSvc::algorithms
virtual const Algorithms & algorithms() const =0
get the stack of executed algorithms
std::find_if
T find_if(T...args)

Sequencer * Gaudi::Utils::getSequencerAlg | ( | const IAlgContextSvc * | svc | ) |

simple function to extract the last active Sequencer from the context

// get the context service:
const IAlgContextSvc* svc = ... ;
Sequencer* sa = getSequencerAlg ( svc ) ;

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 142 of file GetAlgs.cpp.

143 { return getAlg<Sequencer> ( svc ) ; }

GaudiTupleAlg * Gaudi::Utils::getTupleAlg | ( | const IAlgContextSvc * | svc | ) |

simple function to extract the last active GaudiTupleAlg from the context

// get the context service:
const IAlgContextSvc* svc = ... ;
GaudiTupleAlg* ta = getTupleAlg ( svc ) ;

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-09-07

Definition at line 103 of file GetAlgs.cpp.

104 { return getAlg<GaudiTupleAlg> ( svc ) ; }

bool Gaudi::Utils::hasProperty | ( | const IProperty * | p,
|  | const std::string & | name
| ) |  |

simple function which check the existence of the property with the given name.

const IProperty* p = ... ;
const bool = hasProperty( p , "Context" ) ;

Parameters

  p | pointer to IProperty object
  name | property name (case insensitive)

Returns
  true if "p" has a property with such name

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 100 of file Property.cpp.

101 {
102 // delegate the actual work to another method ;
103 return p && getProperty( p, name );
104 }
Gaudi::Utils::getProperty
GAUDI_API Gaudi::Details::PropertyBase * getProperty(const IProperty *p, const std::string &name)
simple function which gets the property with given name from the component
Definition: Property.cpp:223

bool Gaudi::Utils::hasProperty | ( | const IInterface * | p,
|  | const std::string & | name
| ) |  |

simple function which check the existence of the property with the given name.

IInterface* p = .
const bool = hasProperty( p , "Context" ) ;

Parameters

  p | pointer to IInterface object (any component)
  name | property name (case insensitive)

Returns
  true if "p" has a property with such name

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 76 of file Property.cpp.

77 {
78 // delegate to another method after trivial check
79 return p && getProperty( p, name );
80 }
Gaudi::Utils::getProperty
GAUDI_API Gaudi::Details::PropertyBase * getProperty(const IProperty *p, const std::string &name)
simple function which gets the property with given name from the component
Definition: Property.cpp:223

bool Gaudi::Utils::hasProperty | ( | const std::vector< const Gaudi::Details::PropertyBase * > * | p,
|  | const std::string & | name
| ) |  |

check the property by name from the list of the properties

IJobOptionsSvc* svc = ... ;
const std::string client = ... ;
// get the property:
bool context =
hasProperty ( svc->getProperties( client ) , "Context" )

See also
  IJobOptionsSvc

Parameters

  p | list of properties
  name | property name (case insensitive)

Returns
  true if the property exists

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 292 of file Property.cpp.

293 {
294 // delegate to another method
295 return getProperty( p, name );
296 }
Gaudi::Utils::getProperty
GAUDI_API Gaudi::Details::PropertyBase * getProperty(const IProperty *p, const std::string &name)
simple function which gets the property with given name from the component
Definition: Property.cpp:223

bool Gaudi::Utils::iequal | ( | const std::string & | v1,
|  | const std::string & | v2
| ) |  |
| inline

Helper for case insensitive string comparison.

Definition at line 45 of file PropertyHolder.h.

46 {
47 return v1.size() == v2.size() && std::equal( std::begin( v1 ), std::end( v1 ), std::begin( v2 ),
48 []( char c1, char c2 ) { return toupper( c1 ) == toupper( c2 ); } );
49 }
HiveAlgSequencer.c2
c2
Definition: HiveAlgSequencer.py:26
std::end
T end(T...args)
std::string::size
T size(T...args)
std::begin
T begin(T...args)
std::equal
T equal(T...args)
toupper
void toupper(std::string &s)
Definition: StatusCodeSvc.cpp:10
HiveAlgSequencer.c1
c1
Definition: HiveAlgSequencer.py:25

std::ostream& Gaudi::Utils::operator<< | ( | std::ostream & | s,
|  | const TypeNameString & | tn
| ) |  |
| inline

Output stream operator for TypeNameString instances.

Definition at line 45 of file TypeNameString.h.

46 {
47 return s << tn.type() << '/' << tn.name();
48 }
template<class TYPE >

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const TYPE & | value,
|  | const std::string & | doc
| ) |  |

simple function to set the property of the given object from the value

IProperty* component = ... ;
std::vector<double> data = ... ;
StatusCode sc = setProperty ( componet , "Data" , data ) ;

Note: the interface IProperty allows setting of the properties either directly from other properties or from strings only

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

IProperty* component = ... ;
std::vector<double> data = ... ;
StatusCode sc = setProperty ( component , "Data" , data ) ;
std::map<std::string,double> cuts = ... ;
sc = setProperty ( component , "Cuts" , cuts ) ;
std::map<std::string,std::string> dict = ... ;
sc = setProperty ( component , "Dictionary" , dict ) ;

Note: the native interface IProperty allows setting of the properties either directly from other properties or from strings only

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1138 of file Property.h.

1139 {
1140 return component && hasProperty( component, name )
1141 ? Gaudi::Utils::setProperty( component, name, Gaudi::Utils::toString( value ), doc )
1142 : StatusCode::FAILURE;
1143 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367
GaudiPython.Bindings.FAILURE
FAILURE
Definition: Bindings.py:53
hasProperty
bool hasProperty(const std::string &name) const override
Return true if we have a property with the given name.
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
template<class TYPE >

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const TYPE & | value
| ) |  |

simple function to set the property of the given object from the value

IProperty* component = ... ;
std::vector<double> data = ... ;
StatusCode sc = setProperty ( componet , "Data" , data ) ;

Note: the interface IProperty allows setting of the properties either directly from other properties or from strings only

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1050 of file Property.h.

1051 {
1052 return setProperty( component, name, value, std::string() );
1053 }
std::string
STL class.
Gaudi::Utils::setProperty
StatusCode setProperty(IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
simple function to set the property of the given object from another property
Definition: Property.h:1377

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const std::string & | value,
|  | const std::string & | doc = `""`
| ) |  |

the full specialization of the previous method setProperty( IProperty, std::string, const TYPE&) for standard strings

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 363 of file Property.cpp.

365 {
366 if ( !component ) {
367 return StatusCode::FAILURE;
368 } // RETURN
369 if ( !hasProperty( component, name ) ) {
370 return StatusCode::FAILURE;
371 }
372 StatusCode sc = component->setProperty( name, value );
373 if ( !doc.empty() ) {
374 PropertyBase* p = getProperty( component, name );
375 if ( p ) {
376 p->setDocumentation( doc );
377 }
378 }
379 sc.ignore();
380 return sc;
381 }
std::string::empty
T empty(T...args)
StatusCode::FAILURE
Definition: StatusCode.h:29
Gaudi::Details::PropertyBase::setDocumentation
void setDocumentation(std::string value)
set the documentation string
Definition: Property.h:92
IProperty::setProperty
virtual StatusCode setProperty(const Gaudi::Details::PropertyBase &p)=0
Set the property by property.
hasProperty
bool hasProperty(const std::string &name) const override
Return true if we have a property with the given name.
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
Gaudi::Details::PropertyBase
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
Definition: Property.h:32
StatusCode::ignore
void ignore() const
Definition: StatusCode.h:106
Gaudi::Utils::getProperty
GAUDI_API Gaudi::Details::PropertyBase * getProperty(const IProperty *p, const std::string &name)
simple function which gets the property with given name from the component
Definition: Property.cpp:223

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const char * | value,
|  | const std::string & | doc = `""`
| ) |  |

the full specialization of the method setProperty( IProperty, std::string, const TYPE&) for C-strings

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 344 of file Property.cpp.

346 {
347 return Gaudi::Utils::setProperty( component, name, std::string{value}, doc );
348 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
std::string
STL class.
template<unsigned N>

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const char(&) | value[N],
|  | const std::string & | doc = `""`
| ) |  |

the full specialization of the method setProperty( IProperty, std::string, const TYPE&) for C-arrays

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1101 of file Property.h.

1103 {
1104 return component ? setProperty( component, name, std::string( value, value + N ), doc ) : StatusCode::FAILURE;
1105 }
std::string
STL class.
GaudiPython.Bindings.FAILURE
FAILURE
Definition: Bindings.py:53
IOTest.N
int N
Definition: IOTest.py:90
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
Gaudi::Utils::setProperty
StatusCode setProperty(IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
simple function to set the property of the given object from another property
Definition: Property.h:1377

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const Gaudi::Details::PropertyBase * | property,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from another property

IProperty* component = ... ;
const Gaudi::Details::PropertyBase* prop = ... ;
StatusCode sc = setProperty ( component , "Data" , prop ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  property | the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 405 of file Property.cpp.

407 {
408 if ( !component || !property ) return StatusCode::FAILURE;
409 PropertyBase* p = getProperty( component, name );
410 if ( !p || !p->assign( *property ) ) return StatusCode::FAILURE;
411 if ( !doc.empty() ) {
412 p->setDocumentation( doc );
413 }
414 return StatusCode::SUCCESS;
415 }
StatusCode::SUCCESS
Definition: StatusCode.h:30
std::string::empty
T empty(T...args)
StatusCode::FAILURE
Definition: StatusCode.h:29
Gaudi::Details::PropertyBase::setDocumentation
void setDocumentation(std::string value)
set the documentation string
Definition: Property.h:92
Gaudi::Details::PropertyBase::assign
virtual bool assign(const PropertyBase &source)=0
import the property value form the source
Gaudi::Details::PropertyBase
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
Definition: Property.h:32
Gaudi::Utils::getProperty
GAUDI_API Gaudi::Details::PropertyBase * getProperty(const IProperty *p, const std::string &name)
simple function which gets the property with given name from the component
Definition: Property.cpp:223

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const Gaudi::Details::PropertyBase & | property,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from another property

IProperty* component = ... ;
const Gaudi::Details::PropertyBase& prop = ... ;
StatusCode sc = setProperty ( component , "Data" , prop ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  property | the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 439 of file Property.cpp.

441 {
442 return setProperty( component, name, &property, doc );
443 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
template<class TYPE >

StatusCode Gaudi::Utils::setProperty | ( | IProperty * | component,
|  | const std::string & | name,
|  | const Gaudi::Property< TYPE > & | value,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from another property

IProperty* component = ... ;
Gaudi::Property<std::vector<int> > m_data = ... ;
StatusCode sc = setProperty ( component , "Data" , prop ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  value | the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1216 of file Property.h.

1218 {
1219 return setProperty( component, name, &value, doc );
1220 }
Gaudi::Utils::setProperty
StatusCode setProperty(IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
simple function to set the property of the given object from another property
Definition: Property.h:1377
template<class TYPE >

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const TYPE & | value,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from the value

IInterface* component = ... ;
std::vector<double> data = ... ;
StatusCode sc = setProperty ( component , "Data" , data ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1243 of file Property.h.

1245 {
1246 if ( !component ) {
1247 return StatusCode::FAILURE;
1248 }
1249 auto property = SmartIF<IProperty>{component};
1250 return property ? setProperty( property, name, value, doc ) : StatusCode::FAILURE;
1251 }
SmartIF< IProperty >
StatusCode::FAILURE
Definition: StatusCode.h:29
property
Gaudi::Details::PropertyBase * property(const std::string &name) const
GaudiPython.Bindings.FAILURE
FAILURE
Definition: Bindings.py:53
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
Gaudi::Utils::setProperty
StatusCode setProperty(IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
simple function to set the property of the given object from another property
Definition: Property.h:1377

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const std::string & | value,
|  | const std::string & | doc = `""`
| ) |  |

the full specialization of the method setProperty( IInterface , std::string, const TYPE&) for standard strings

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 458 of file Property.cpp.

460 {
461 if ( !component ) {
462 return StatusCode::FAILURE;
463 }
464 SmartIF<IProperty> property( component );
465 return property ? setProperty( property, name, value, doc ) : StatusCode::FAILURE;
466 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
SmartIF< IProperty >
StatusCode::FAILURE
Definition: StatusCode.h:29
property
Gaudi::Details::PropertyBase * property(const std::string &name) const
GaudiPython.Bindings.FAILURE
FAILURE
Definition: Bindings.py:53
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const char * | value,
|  | const std::string & | doc = `""`
| ) |  |

the full specialization of the method setProperty( IInterface , std::string, const TYPE&) for C-strings

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 481 of file Property.cpp.

483 {
484 return setProperty( component, name, std::string{value}, doc );
485 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
std::string
STL class.
template<unsigned N>

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const char(&) | value[N],
|  | const std::string & | doc = `""`
| ) |  |

the full specialization of the method setProperty( IInterface, std::string, const TYPE&) for C-arrays

Parameters

  component | component which needs to be configured
  name | name of the property
  value | value of the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1297 of file Property.h.

1299 {
1300 if ( 0 == component ) {
1301 return StatusCode::FAILURE;
1302 }
1303 return setProperty( component, name, std::string{value, value + N}, doc );
1304 }
StatusCode::FAILURE
Definition: StatusCode.h:29
std::string
STL class.
IOTest.N
int N
Definition: IOTest.py:90
Gaudi::Utils::setProperty
StatusCode setProperty(IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
simple function to set the property of the given object from another property
Definition: Property.h:1377

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const Gaudi::Details::PropertyBase * | property,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from another property

IInterface* component = ... ;
const Gaudi::Details::PropertyBase* prop = ... ;
StatusCode sc = setProperty ( component , "Data" , prop ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  property | the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 509 of file Property.cpp.

511 {
512 if ( !component ) {
513 return StatusCode::FAILURE;
514 }
515 SmartIF<IProperty> prop( component );
516 if ( !prop ) {
517 return StatusCode::FAILURE;
518 }
519 return setProperty( prop, name, property, doc );
520 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
SmartIF< IProperty >
StatusCode::FAILURE
Definition: StatusCode.h:29

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const Gaudi::Details::PropertyBase & | property,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from another property

IInterface* component = ... ;
const Gaudi::Details::PropertyBase& prop = ... ;
StatusCode sc = setProperty ( component , "Data" , prop ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  property | the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 544 of file Property.cpp.

546 {
547 return setProperty( component, name, &property, doc );
548 }
Gaudi::Utils::setProperty
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
Definition: Property.h:1138
template<class TYPE >

StatusCode Gaudi::Utils::setProperty | ( | IInterface * | component,
|  | const std::string & | name,
|  | const Gaudi::Property< TYPE > & | value,
|  | const std::string & | doc = `""`
| ) |  |

simple function to set the property of the given object from another property

IInterface* component = ... ;
Gaudi::Property<std::vector<int> > m_data = ... ;
StatusCode sc = setProperty ( component , "Data" , prop ) ;

Parameters

  component | component which needs to be configured
  name | name of the property
  value | the property
  doc | the new documentation string

See also
  IProperty

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2007-05-13

Definition at line 1377 of file Property.h.

1379 {
1380 return setProperty( component, name, &value, doc );
1381 }
Gaudi::Utils::setProperty
StatusCode setProperty(IInterface *component, const std::string &name, const Gaudi::Property< TYPE > &value, const std::string &doc="")
simple function to set the property of the given object from another property
Definition: Property.h:1377
template<class ITERATOR >

std::ostream & Gaudi::Utils::toStream | ( | ITERATOR | first,
|  | ITERATOR | last,
|  | std::ostream & | s,
|  | const std::string & | open,
|  | const std::string & | close,
|  | const std::string & | delim
| ) |  |
| inline

the helper function to print the sequence

Parameters

  first | (INPUT) begin-iterator for the sequence
  last | (INPUT) end-iterator for the sequence
  s | (UPDATE) the stream itself
  open | (INPUT) "open"-symbol
  close | (INPUT) "close"-symbol
  delim | (INPUT) "delimiter"-symbol

Returns
  the stream

Author
  Vanya BELYAEV Ivan..nosp@m.BEly.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-15

Definition at line 315 of file ToStream.h.

321 {
322 using ref_t = typename std::iterator_traits<ITERATOR>::reference;
323 using GaudiUtils::details::ostream_joiner;
324 return ostream_joiner( s << open, first, last, delim,
325 [](std::ostream& os, ref_t i ) -> std::ostream&
326 { return toStream( i, os ); } ) << close;
327 }
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
std::iterator_traits
GaudiUtils::details::ostream_joiner
Stream & ostream_joiner(Stream &os, Iterator first, Iterator last, Separator sep, OutputElement output=OutputElement{})
Definition: SerializeSTL.h:35
std::ostream
STL class.

std::ostream & Gaudi::Utils::toStream | ( | const TH1D & | histo,
|  | std::ostream & | stream,
|  | const bool | asXML = `false`
| ) |  |

stream the ROOT histogram into output stream

Parameters

  histo | (INPUT) the histogram to be streamed
  stream | (OUTPUT) the stream
  asXML | (INPUT) use XML-format

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 184 of file Histo2String.cpp.

186 { return _toStream_1D_ ( histo , stream , asXML ) ; }
template<class TYPE >

std::ostream & Gaudi::Utils::toStream | ( | const TYPE & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the generic implementation of the printout to the std::ostream

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 at line 299 of file ToStream.h.

300 { return s << obj ; }
template<class TYPE , std::size_t N>

std::ostream& Gaudi::Utils::toStream | ( | const std::array< TYPE, N > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

printout of class std::array The format is "Python's tuple"

Parameters

  obj | (INPUT) the arary to be printed
  s | (UPDATE) the actual stream

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-16

Definition at line 50 of file StdArrayAsProperty.h.

51 {
52 return toStream
53 ( obj.begin () , obj.end () , s , " ( " , " )" , " , " ) ;
54 }
std::array::end
T end(T...args)
std::array::begin
T begin(T...args)
gaudirun.s
string s
Definition: gaudirun.py:245
Gaudi::Utils::toStream
std::ostream & toStream(const std::array< TYPE, N > &obj, std::ostream &s)
printout of class std::array The format is "Python&#39;s tuple"
Definition: StdArrayAsProperty.h:50
template<class TYPE , std::size_t N>

std::ostream& Gaudi::Utils::toStream | ( | const boost::array< TYPE, N > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

printout of class boost::array The format is "Python's tuple"

Parameters

  obj | (INPUT) the arary to be printed
  s | (UPDATE) the actual stream

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-16

Definition at line 51 of file BoostArrayAsProperty.h.

52 {
53 return toStream
54 ( obj.begin () , obj.end () , s , "( " , " )" , " , " ) ;
55 }
Gaudi::Utils::toStream
std::ostream & toStream(const boost::array< TYPE, N > &obj, std::ostream &s)
printout of class boost::array The format is "Python&#39;s tuple"
Definition: BoostArrayAsProperty.h:51
gaudirun.s
string s
Definition: gaudirun.py:245

std::ostream & Gaudi::Utils::toStream | ( | const TH2D & | histo,
|  | std::ostream & | stream,
|  | const bool | asXML = `false`
| ) |  |

stream the ROOT histogram into output stream

Parameters

  histo | (INPUT) the histogram to be streamed
  stream | (OUTPUT) the stream
  asXML | (INPUT) use XML-format

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 206 of file Histo2String.cpp.

208 { return _toStream_2D_ ( histo , stream , asXML ) ; }

std::ostream & Gaudi::Utils::toStream | ( | const TH1F & | histo,
|  | std::ostream & | stream,
|  | const bool | asXML = `false`
| ) |  |

stream the ROOT histogram into output stream

Parameters

  histo | (INPUT) the histogram to be streamed
  stream | (OUTPUT) the stream
  asXML | (INPUT) use XML-format

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 195 of file Histo2String.cpp.

197 { return _toStream_1D_ ( histo , stream , asXML ) ; }

std::ostream& Gaudi::Utils::toStream | ( | const std::string & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the printtout of the strings.

the string is printed a'la Python using the quotes

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 at line 77 of file ToStream.h.

78 {
79 auto c = ( std::string::npos == obj.find('\'') ? '\'' : '\"' );
80 return s << c << obj << c;
81 }
gaudirun.c
c
Definition: gaudirun.py:391
std::string::find
T find(T...args)
template<class SCALAR >

std::ostream& Gaudi::Utils::toStream | ( | const SCALAR & | ,
|  | std::ostream & |
| ) |  |

template<class SCALAR , unsigned int N>

std::ostream& Gaudi::Utils::toStream | ( | const ROOT::Math::SVector< SCALAR, N > & | obj,
|  | std::ostream & | s
| ) |  |

the general streaming function for SVector using python-tupel format

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-07

Definition at line 85 of file SVectorAsProperty.h.

86 {
87 s << "( ";
88 for ( auto cur = obj.begin() ; obj.end() != cur ; ++cur )
89 {
90 if ( obj.begin() != cur ) { s << " , "; }
91 toStream ( *cur , s ) ;
92 }
93 return s << " )";
94 }
Gaudi::Utils::toStream
std::ostream & toStream(const ROOT::Math::SVector< SCALAR, N > &obj, std::ostream &s)
the general streaming function for SVector using python-tupel format
Definition: SVectorAsProperty.h:85

std::ostream& Gaudi::Utils::toStream | ( | const bool | obj,
|  | std::ostream & | s
| ) |  |
| inline

the printout of boolean values "a'la Python"

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 87 of file ToStream.h.

88 { return s << ( obj ? "True" : "False" ) ; }

std::ostream & Gaudi::Utils::toStream | ( | const TH2F & | histo,
|  | std::ostream & | stream,
|  | const bool | asXML = `false`
| ) |  |

stream the ROOT histogram into output stream

Parameters

  histo | (INPUT) the histogram to be streamed
  stream | (OUTPUT) the stream
  asXML | (INPUT) use XML-format

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 217 of file Histo2String.cpp.

219 { return _toStream_2D_ ( histo , stream , asXML ) ; }

std::ostream& Gaudi::Utils::toStream | ( | const float | obj,
|  | std::ostream & | s,
|  | const int | prec = `6`
| ) |  |
| inline

the printout of float values with the reasonable precision

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 94 of file ToStream.h.

95 {
96 const int p = s.precision() ;
97 return s << std::setprecision ( prec ) << obj << std::setprecision ( p ) ;
98 }
std::ostream::precision
T precision(T...args)
std::setprecision
T setprecision(T...args)

std::ostream & Gaudi::Utils::toStream | ( | const DataObjectHandleBase & | v,
|  | std::ostream & | o
| ) |  |

Definition at line 26 of file DataObjectHandleProperty.cpp.

26 { return o << v; }

std::ostream & Gaudi::Utils::toStream | ( | const AIDA::IHistogram1D & | histo,
|  | std::ostream & | stream,
|  | const bool | asXML = `false`
| ) |  |

stream the AIDA histogram into output stream

Parameters

  histo | (INPUT) the histogram to be streamed
  stream | (OUTPUT) the stream
  asXML | (INPUT) use XML-format

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 228 of file Histo2String.cpp.

231 {
232 auto root = Gaudi::Utils::Aida2ROOT::aida2root ( &histo ) ;
233 return root ? toStream ( *root , stream , asXML ) : stream ;
234 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
Gaudi::Utils::Aida2ROOT::aida2root
static TH1D * aida2root(AIDA::IHistogram1D *aida)
get the underlying pointer for 1D-histogram
Definition: Aida2ROOT.cpp:72
gaudiComponentHelp.root
root
Definition: gaudiComponentHelp.py:14

std::ostream& Gaudi::Utils::toStream | ( | const double | obj,
|  | std::ostream & | s,
|  | const int | prec = `8`
| ) |  |
| inline

the printout of double values with the reasonable precision

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 104 of file ToStream.h.

105 {
106 const int p = s.precision() ;
107 return s << std::setprecision ( prec ) << obj << std::setprecision ( p ) ;
108 }
std::ostream::precision
T precision(T...args)
std::setprecision
T setprecision(T...args)

std::ostream & Gaudi::Utils::toStream | ( | const AIDA::IHistogram2D & | histo,
|  | std::ostream & | stream,
|  | const bool | asXML = `false`
| ) |  |

stream the AIDA histogram into output stream

Parameters

  histo | (INPUT) the histogram to be streamed
  stream | (OUTPUT) the stream
  asXML | (INPUT) use XML-format

Returns
  the updated stream

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 243 of file Histo2String.cpp.

246 {
247 //
248 auto root = Gaudi::Utils::Aida2ROOT::aida2root ( &histo ) ;
249 return root ? toStream ( *root , stream , asXML ) : stream;
250 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
Gaudi::Utils::Aida2ROOT::aida2root
static TH1D * aida2root(AIDA::IHistogram1D *aida)
get the underlying pointer for 1D-histogram
Definition: Aida2ROOT.cpp:72
gaudiComponentHelp.root
root
Definition: gaudiComponentHelp.py:14

std::ostream& Gaudi::Utils::toStream | ( | const long double | obj,
|  | std::ostream & | s,
|  | const int | prec = `10`
| ) |  |
| inline

the printout of long double values with the reasonable precision

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-09-09

Definition at line 114 of file ToStream.h.

115 {
116 const int p = s.precision() ;
117 return s << std::setprecision ( prec ) << obj << std::setprecision ( p ) ;
118 }
std::ostream::precision
T precision(T...args)
std::setprecision
T setprecision(T...args)
template<class KTYPE , class VTYPE >

std::ostream& Gaudi::Utils::toStream | ( | const std::pair< KTYPE, VTYPE > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `std::pair<KTYPE,VTYPE>` printout the pair is printed a'la Python tuple: " ( a , b )"

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 at line 129 of file ToStream.h.

130 {
131 return toStream( obj.second,
132 toStream( obj.first, s << "( " ) << " , " )
133 << " )" ;
134 }
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354

std::ostream & Gaudi::Utils::toStream | ( | const DataObjID & | v,
|  | std::ostream & | o
| ) |  |

Definition at line 148 of file DataObjIDProperty.cpp.

148 {
149 if (v.clid() == 0) {
150 o << "'" << v.key() << "'";
151 } else {
152 o << "(" << v.clid() << ",'" << v.key() << "')";
153 }
154 return o;
155 }
DataObjID::clid
CLID clid() const
Definition: DataObjID.h:54
DataObjID::key
const std::string & key() const
Definition: DataObjID.h:49

std::ostream & Gaudi::Utils::toStream | ( | const DataObjIDColl & | v,
|  | std::ostream & | o
| ) |  |

Definition at line 158 of file DataObjIDProperty.cpp.

158 {
159 o << "[";
160 for (auto &i : v) {
161 toStream(i,o);
162 o << ",";
163 }
164 o << "]";
165 return o;
166 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
template<class TYPE , class ALLOCATOR >

std::ostream& Gaudi::Utils::toStream | ( | const std::vector< TYPE, ALLOCATOR > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `std::vector<TYPE,ALLOCATOR>` printout.

The vector is printed a'la Python list: "[ a, b, c ]"

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 at line 144 of file ToStream.h.

145 {
146 return toStream ( obj.begin() , obj.end () , s , "[ " , " ]" , " , " ) ;
147 }
std::vector::end
T end(T...args)
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
std::vector::begin
T begin(T...args)
gaudirun.s
string s
Definition: gaudirun.py:245
template<class TYPE , class ALLOCATOR >

std::ostream& Gaudi::Utils::toStream | ( | const std::list< TYPE, ALLOCATOR > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `std::list<TYPE,ALLOCATOR>` printout.

The vector is printed a'la Python list: "[ a, b, c ]"

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
  2007-04-08

Definition at line 157 of file ToStream.h.

158 {
159 return toStream ( obj.begin() , obj.end () , s , "[ " , " ]" , " , " ) ;
160 }
std::list::end
T end(T...args)
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
std::list::begin
T begin(T...args)
gaudirun.s
string s
Definition: gaudirun.py:245
template<class TYPE , class CMP , class ALLOCATOR >

std::ostream& Gaudi::Utils::toStream | ( | const std::set< TYPE, CMP, ALLOCATOR > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `std::set<TYPE,CMP,ALLOCATOR>` printout.

The vector is printed a'la Python list: "[ a, b, c ]"

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 at line 170 of file ToStream.h.

171 {
172 return toStream ( obj.begin() , obj.end () , s , "[ " , " ]" , " , " ) ;
173 }
std::set::end
T end(T...args)
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
std::set::begin
T begin(T...args)
gaudirun.s
string s
Definition: gaudirun.py:245
template<class KTYPE , class VTYPE , class CMP , class ALLOCATOR >

std::ostream& Gaudi::Utils::toStream | ( | const std::map< KTYPE, VTYPE, CMP, ALLOCATOR > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `std::map<KTYPE,VTYPE,CMP,ALLOCATOR>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )"

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 at line 184 of file ToStream.h.

185 {
186 using GaudiUtils::details::ostream_joiner;
187 return ostream_joiner( s << "{ ", obj, " , ",
188 [](std::ostream& os, const std::pair<const KTYPE,VTYPE>& i)
189 -> std::ostream&
190 { return toStream( i.second, toStream( i.first, os ) << " : " ); }
191 ) << " }";
192 }
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
GaudiUtils::details::ostream_joiner
Stream & ostream_joiner(Stream &os, Iterator first, Iterator last, Separator sep, OutputElement output=OutputElement{})
Definition: SerializeSTL.h:35
std::pair
std::ostream
STL class.
template<class KTYPE , class VTYPE , class CMP , class ALLOCATOR >

std::ostream& Gaudi::Utils::toStream | ( | const GaudiUtils::VectorMap< KTYPE, VTYPE, CMP, ALLOCATOR > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `GaudiUtils::VectorMap<KTYPE,VTYPE,CMP,ALLOCATOR>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )"

See also
  GaudiUtils::VectorMap

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 at line 204 of file ToStream.h.

205 {
206 using GaudiUtils::details::ostream_joiner;
207 return ostream_joiner( s << "{ ", obj, " , ",
208 [](std::ostream& os, const std::pair<const KTYPE,VTYPE>& i )
209 -> std::ostream&
210 { return toStream( i.second, toStream( i.first, os ) << " : " ); }
211 ) << " }";
212 }
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
GaudiUtils::details::ostream_joiner
Stream & ostream_joiner(Stream &os, Iterator first, Iterator last, Separator sep, OutputElement output=OutputElement{})
Definition: SerializeSTL.h:35
std::pair
std::ostream
STL class.
template<class KTYPE , class VTYPE , class MAP >

std::ostream& Gaudi::Utils::toStream | ( | const GaudiUtils::Map< KTYPE, VTYPE, MAP > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `GaudiUtils::Map<KTYPE,VTYPE,MAP>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )"

See also
  GaudiUtils::VectorMap

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 at line 224 of file ToStream.h.

225 {
226 using GaudiUtils::details::ostream_joiner;
227 return ostream_joiner( s << "{ ", obj, " , " ,
228 [](std::ostream& s, const std::pair<const KTYPE,VTYPE>& i )
229 -> std::ostream&
230 { return toStream( i.second, toStream( i.first, s ) << " : " ) ; }
231 ) << " }";
232 }
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
GaudiUtils::details::ostream_joiner
Stream & ostream_joiner(Stream &os, Iterator first, Iterator last, Separator sep, OutputElement output=OutputElement{})
Definition: SerializeSTL.h:35
std::pair
std::ostream
STL class.

std::ostream & Gaudi::Utils::toStream | ( | const Gaudi::XYZPoint & | obj,
|  | std::ostream & | s
| ) |  |

print XYZ point

Definition at line 130 of file ParsersVct.cpp.

131 {
132 s << "( " ;
133 toStream ( obj.X () , s ) ;
134 s << " , " ;
135 toStream ( obj.Y () , s ) ;
136 s << " , " ;
137 toStream ( obj.Z () , s ) ;
138 s << " )" ;
139 return s ;
140 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
gaudirun.s
string s
Definition: gaudirun.py:245

std::ostream & Gaudi::Utils::toStream | ( | const Gaudi::XYZVector & | obj,
|  | std::ostream & | s
| ) |  |

print XYZ vector

Definition at line 145 of file ParsersVct.cpp.

146 {
147 s << "( " ;
148 toStream ( obj.X () , s ) ;
149 s << " , " ;
150 toStream ( obj.Y () , s ) ;
151 s << " , " ;
152 toStream ( obj.Z () , s ) ;
153 s << " )" ;
154
155 return s ;
156 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
gaudirun.s
string s
Definition: gaudirun.py:245

std::ostream & Gaudi::Utils::toStream | ( | const Gaudi::LorentzVector & | obj,
|  | std::ostream & | s
| ) |  |

print Lorentz vector

Definition at line 161 of file ParsersVct.cpp.

162 {
163
164 s << "( " ;
165 toStream ( obj.Px () , s , 12 ) ;
166 s << " , " ;
167 toStream ( obj.Py () , s , 12 ) ;
168 s << " , " ;
169 toStream ( obj.Pz () , s , 13 ) ;
170 s << " , " ;
171 toStream ( obj.E () , s , 14 ) ;
172 s << " )" ;
173
174 return s ;
175 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
gaudirun.s
string s
Definition: gaudirun.py:245
template<class KTYPE , class VTYPE , class HASH , class MAP >

std::ostream& Gaudi::Utils::toStream | ( | const GaudiUtils::HashMap< KTYPE, VTYPE, HASH, MAP > & | obj,
|  | std::ostream & | s
| ) |  |
| inline

the partial template specialization of `GaudiUtils::HashMap<KTYPE,VTYPE,HASH,MAP>` printout the map is printed a'la Python dict: " ( a : b , c: d , e : f )"

See also
  GaudiUtils::VectorMap

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 at line 244 of file ToStream.h.

245 {
246 // Copy the hash map into a map to have it ordered by key.
247 return toStream(GaudiUtils::Map<KTYPE,VTYPE>{obj.begin(), obj.end()}, s);
248 }
GaudiUtils::Map
Extension of the STL map.
Definition: Map.h:82
GaudiUtils::Map::end
iterator end()
Definition: Map.h:132
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
GaudiUtils::Map::begin
iterator begin()
Definition: Map.h:131
gaudirun.s
string s
Definition: gaudirun.py:245

std::ostream & Gaudi::Utils::toStream | ( | const Gaudi::StringKey & | key,
|  | std::ostream & | s
| ) |  |

send the object to stream (needed to use it as property)

See also
  Gaudi::StringKey
  Gaudi::Utils::toString
  Gaudi::Utils::toStream

Parameters

  key | (INPUT) the object to be printed
  s | (OUTPUT) the stream

Returns
  the stream

Author
  Vanya BELYAEV Iavn..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-07

Definition at line 69 of file StringKey.cpp.

70 { return Gaudi::Utils::toStream ( key.str() , s ) ; }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
gaudirun.s
string s
Definition: gaudirun.py:245
Gaudi::StringKey::str
const std::string & str() const
the actual string
Definition: StringKey.h:47
template<class TYPE , unsigned int N>

std::ostream& Gaudi::Utils::toStream | ( | TYPE(&) | obj[N],
|  | std::ostream & | s
| ) |  |

the specialization for C-arrays, a'la python tuple

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-05

Definition at line 255 of file ToStream.h.

256 {
257 return toStream ( obj , obj + N , s , "( " , " )" , " , " ) ;
258 }
IOTest.N
int N
Definition: IOTest.py:90
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
template<class TYPE , unsigned int N>

std::ostream& Gaudi::Utils::toStream | ( | const TYPE(&) | obj[N],
|  | std::ostream & | s
| ) |  |

the specialization for C-arrays, a'la python tuple

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-05

Definition at line 265 of file ToStream.h.

266 {
267 return toStream ( obj , obj + N , s , "( " , " )" , " , " ) ;
268 }
IOTest.N
int N
Definition: IOTest.py:90
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
template<unsigned int N>

std::ostream& Gaudi::Utils::toStream | ( | char(&) | obj[N],
|  | std::ostream & | s
| ) |  |

the specialization for C-string, a'la python tuple

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-05

Definition at line 275 of file ToStream.h.

276 { return toStream ( std::string ( obj , obj+N ) , s ) ; }
std::string
STL class.
IOTest.N
int N
Definition: IOTest.py:90
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
template<unsigned int N>

std::ostream& Gaudi::Utils::toStream | ( | const char(&) | obj[N],
|  | std::ostream & | s
| ) |  |

the specialization for C-string, a'la python tuple

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-05

Definition at line 283 of file ToStream.h.

284 { return toStream ( std::string ( obj , obj+N ) , s ) ; }
std::string
STL class.
IOTest.N
int N
Definition: IOTest.py:90
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354

std::ostream& Gaudi::Utils::toStream | ( | const char * | obj,
|  | std::ostream & | s
| ) |  |
| inline

the specialization for C-string, a'la python tuple

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-10-05

Definition at line 290 of file ToStream.h.

291 { return toStream ( std::string ( obj ) , s ) ; }
std::string
STL class.
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
template<typename... Args>

std::ostream& Gaudi::Utils::toStream | ( | const std::tuple< Args... > & | tuple,
|  | std::ostream & | s
| ) |  |
| inline

the helper function to print the tuple

Parameters

  tulpe | (INPUT) tuple

Returns
  the stream

Author
  Aleander Mazurov alexa.nosp@m.nder.nosp@m..mazu.nosp@m.rov@.nosp@m.cern..nosp@m.ch

Date
  2015-03-21

Definition at line 354 of file ToStream.h.

354 {
355 return TuplePrinter<decltype(tuple), sizeof...(Args)>::toStream(tuple, s << " ( ")<< " ) ";
356 }
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354

std::string Gaudi::Utils::toString | ( | const TH1D & | histo,
|  | const bool | asXML = `false`
| ) |  |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 261 of file Histo2String.cpp.

263 {
264 std::ostringstream o ;
265 toStream ( histo , o , asXML ) ;
266 return o.str() ;
267 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)

std::string Gaudi::Utils::toString | ( | const TH2D & | histo,
|  | const bool | asXML = `false`
| ) |  |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 295 of file Histo2String.cpp.

297 {
298 std::ostringstream o ;
299 toStream ( histo , o , asXML ) ;
300 return o.str() ;
301 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)

std::string Gaudi::Utils::toString | ( | const TH1F & | histo,
|  | const bool | asXML = `false`
| ) |  |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 278 of file Histo2String.cpp.

280 {
281 std::ostringstream o ;
282 toStream ( histo , o , asXML ) ;
283 return o.str() ;
284 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)

std::string Gaudi::Utils::toString | ( | const TH2F & | histo,
|  | const bool | asXML = `false`
| ) |  |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 312 of file Histo2String.cpp.

314 {
315 std::ostringstream o ;
316 toStream ( histo , o , asXML ) ;
317 return o.str() ;
318 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)

std::string Gaudi::Utils::toString | ( | const AIDA::IHistogram1D & | histo,
|  | const bool | asXML = `false`
| ) |  |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 329 of file Histo2String.cpp.

331 {
332 std::ostringstream o ;
333 toStream ( histo , o , asXML ) ;
334 return o.str() ;
335 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)

std::string Gaudi::Utils::toString | ( | const AIDA::IHistogram2D & | histo,
|  | const bool | asXML = `false`
| ) |  |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 346 of file Histo2String.cpp.

348 {
349 std::ostringstream o ;
350 toStream ( histo , o , asXML ) ;
351 return o.str() ;
352 }
Gaudi::Utils::toStream
std::ostream & toStream(ITERATOR first, ITERATOR last, std::ostream &s, const std::string &open, const std::string &close, const std::string &delim)
the helper function to print the sequence
Definition: ToStream.h:315
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)

std::string Gaudi::Utils::toString | ( | const AIDA::IHistogram1D * | histo | ) |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 362 of file Histo2String.cpp.

363 {
364 return histo ? toString ( *histo ) : "{}";
365 }
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367

std::string Gaudi::Utils::toString | ( | AIDA::IHistogram1D * | histo | ) |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 375 of file Histo2String.cpp.

376 {
377 return histo ? toString ( *histo ) : "{}";
378 }
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367

std::string Gaudi::Utils::toString | ( | const TH1D * | histo | ) |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 388 of file Histo2String.cpp.

389 {
390 return histo ? toString ( *histo ) : "{}";
391 }
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367

std::string Gaudi::Utils::toString | ( | TH1D * | histo | ) |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 414 of file Histo2String.cpp.

415 {
416 return histo ? toString ( *histo ) : "{}";
417 }
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367

std::string Gaudi::Utils::toString | ( | const TH2D * | histo | ) |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 401 of file Histo2String.cpp.

402 {
403 return histo ? toString ( *histo ) : "{}";
404 }
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367

std::string Gaudi::Utils::toString | ( | TH2D * | histo | ) |

convert the histogram into the string

Parameters

  histo | (INPUT) the histogram to be streamed
  asXML | (INPUT) use XML-format

Returns
  the string representation of the histogram

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@n.nosp@m.ikhe.nosp@m.f.nl

Date
  2009-09-26

Definition at line 427 of file Histo2String.cpp.

428 {
429 return histo ? toString ( *histo ) : "{}";
430 }
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition: ToStream.h:367
template<class TYPE >

std::string Gaudi::Utils::toString | ( | const TYPE & | obj | ) |
| inline

the generic implementation of the type conversion to the string

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

See also
  Gaudi::Utils::toStream

Todo:
  need to be compared with boost::lexical_cast

Definition at line 367 of file ToStream.h.

368 {
369 std::ostringstream s;
370 std::ios::fmtflags orig_flags = s.flags();
371 s.setf(std::ios::showpoint); // to display correctly floats
372 toStream ( obj , s);
373 s.flags(orig_flags);
374 return s.str();
375 }
std::ostringstream::setf
T setf(T...args)
std::ostringstream::flags
T flags(T...args)
Gaudi::Utils::toStream
std::ostream & toStream(const std::tuple< Args... > &tuple, std::ostream &s)
the helper function to print the tuple
Definition: ToStream.h:354
std::ostringstream
STL class.
std::ostringstream::str
T str(T...args)
gaudirun.s
string s
Definition: gaudirun.py:245