| The Gaudi Framework v27r1

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

- Namespace List
- Namespace Members

Namespaces | Classes | Functions
Gaudi Namespace Reference

Helper functions to set/get the application return code. More...

## Namespaces
| CommonGaudiConfigurables
| Configuration
| CounterSummary
| details
| Guards
| Guards.h GaudiKernel/Guards.h Collection of very simple classes which allows to execution of some functions within the given well-defined and exception-safe context.
| Histos
| collection of simple utilities to deal with histograms
| Hive
| iid_cast_details
| Main
| Math
| meta
| Parsers
| PluginService
| ReturnCode
| ApplicationMgr return code definitions.
| StateMachine
| Units
| Utils

## Classes
class | _ConfigurablesModule
| Small class that allows to access all the configurables as attributes of the instance. More...
class | Axis
| An IAxis represents a binned histogram axis. More...
class | BootSvcLocator
| A dual-stage boostrap mechanism is used to ensure an orderly startup of the ApplicationMgr. More...
class | DataHandle
struct | fullMatch_t
class | Generic1D
| Common AIDA implementation stuff for histograms and profiles using ROOT implementations. More...
class | Generic2D
| Common AIDA implementation stuff for histograms and profiles using ROOT implementations. More...
class | Generic3D
| Common AIDA implementation stuff for histograms and profiles using ROOT implementations. More...
class | Histo1DDef
| Simple helper class for description of 1D-histogram The class is targeted to act as the primary "histogram property", but clearly have significantly wider application range. More...
class | Histogram1D
| AIDA implementation for 1 D histograms using ROOT THD1. More...
class | Histogram2D
| AIDA implementation for 2 D histograms using ROOT THD2. More...
class | Histogram3D
| AIDA implementation for 2 D histograms using ROOT THD2. More...
class | HistogramBase
| Common base class for all histograms Use is solely functional to minimize dynamic_casts inside HistogramSvc. More...
class | IDataConnection
| ABC describing basic data connection. More...
class | IFileCatalog
| File catalog interface. More...
class | IFileCatalogMgr
| File catalog manager. More...
class | IIODataManager
struct | interface_list
struct | interface_list_append
struct | interface_list_append< interface_list< Is...>, I >
struct | interface_list_cat
struct | interface_list_cat< interface_list< I...> >
struct | interface_list_cat< interface_list< I1...>, interface_list< I2...> >
struct | interface_list_cat< interface_list< I1...>, interface_list< I2...>, Others...>
struct | InterfaceId
| Class to handle automatically the versioning of the interfaces when they are inheriting from other interfaces. More...
class | IODataManager
class | ISignalMonitor
| Interface for the service that monitors the occurrences of system signals. More...
struct | majorMatch_t
class | MetaDataSvc
class | MultiFileCatalog
| This class constitutes the core of the XML based FileCatalog API for using POOL within Gaudi. More...
class | NamedRange_
class | ParticlePropertySvc
| This service provides access to particle properties. More...
class | PoolTool
class | Profile1D
| AIDA implementation for 1 D profiles using ROOT TProfile. More...
class | Profile2D
| AIDA implementation for 2 D profiles using ROOT TProfile2D. More...
class | Range_
| Useful class for representation of "sequence" of the objects through the range of valid iterators. More...
struct | RangeBase_
| helper class to simplify the dealing with ranges in Python More...
class | RootAddress
| Description: More...
class | RootCnvSvc
| Description: More...
class | RootConnectionSetup
class | RootConverter
| Description: Definition of the ROOT data converter. More...
class | RootDatabaseCnv
| Statistics file converter class definition. More...
class | RootDataConnection
| Concrete implementation of the IDataConnection interface to access ROOT files. More...
class | RootDirectoryCnv
| Description: NTuple directory converter class definition Definition of the converter to manage the directories in an database representing N-Tuples. More...
class | RootEvtSelector
| Concrete event selector implementation to access ROOT files. More...
class | RootEvtSelectorContext
| ROOT specific event selector context. More...
class | RootNTupleCnv
| NTuple converter class definition for NTuples writted/read using ROOT. More...
class | RootNTupleDescriptor
| Description: More...
struct | RootObjectRefs
| Persistent reference object containing all leafs and links corresponding to a Gaudi DataObject. More...
class | RootPerfMonSvc
| Description: More...
struct | RootRef
| Persistent reference object. More...
class | RootStatCnv
| Description: Base class converter for N-tuples and related classes. More...
class | RootTool
| Description: More...
class | SerialTaskQueue
| Class for a generic serial queue of tasks (modeled on the Intel Threading Building Blocks Design Pattern "Local Serializer"). More...
class | StringKey
| The helper class to represent the efficient "key" for access. More...
class | SysProcStat
class | Time
| Based on seal::Time. More...
class | TimeSpan
| Based on seal::TimeSpan. More...
class | XMLFileCatalog
| This class constitutes the core of the XML based FileCatalog API for POOL. More...

## Functions
template<class Q , class T >
T * | getRepresentation (const Q &hist)
std::pair< DataObject *, AIDA::IHistogram1D * > | createH1D (const AIDA::IHistogram1D &hist)
| Copy constructor. More...
std::pair< DataObject *, AIDA::IHistogram1D * > | createH1D (const std::string &title, int nBins=10, double lowerEdge=0., double upperEdge=1.)
| Creator for 1D histogram with fixed bins. More...
std::pair< DataObject *, AIDA::IHistogram1D * > | createH1D (const std::string &title, const Edges &e)
| Creator for 1D histogram with variable bins. More...
std::pair< DataObject *, AIDA::IHistogram2D * > | createH2D (const AIDA::IHistogram2D &hist)
| Copy constructor. More...
std::pair< DataObject *, AIDA::IHistogram2D * > | createH2D (TH2D *rep)
| "Adopt" constructor More...
std::pair< DataObject *, AIDA::IHistogram2D * > | createH2D (const std::string &title, int binsX, double iminX, double imaxX, int binsY, double iminY, double imaxY)
| Creator for 2 D histograms with fixed bins. More...
std::pair< DataObject *, AIDA::IHistogram2D * > | createH2D (const std::string &title, const Edges &eX, const Edges &eY)
| Creator for 2 D histograms with variable bins. More...
std::pair< DataObject *, AIDA::IHistogram1D * > | slice1DX (const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
| Create 1D slice from 2D histogram. More...
std::pair< DataObject *, AIDA::IProfile1D * > | profile1DX (const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
| Create 1D profile in X from 2D histogram. More...
std::pair< DataObject *, AIDA::IHistogram1D * > | project1DX (const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
| Create 1D projection in X from 2D histogram. More...
std::pair< DataObject *, AIDA::IHistogram1D * > | slice1DY (const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
| Create 1D slice from 2D histogram. More...
std::pair< DataObject *, AIDA::IProfile1D * > | profile1DY (const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
| Create 1D profile in Y from 2D histogram. More...
std::pair< DataObject *, AIDA::IHistogram1D * > | project1DY (const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
| Create 1D projection in Y from 2D histogram. More...
std::pair< DataObject *, AIDA::IHistogram3D * > | createH3D (const AIDA::IHistogram3D &hist)
| Copy constructor. More...
std::pair< DataObject *, AIDA::IHistogram3D * > | createH3D (const std::string &title, int nBinsX, double xlow, double xup, int nBinsY, double ylow, double yup, int nBinsZ, double zlow, double zup)
| Create 3D histogram with fixed bins. More...
std::pair< DataObject *, AIDA::IHistogram3D * > | createH3D (const std::string &title, const Edges &eX, const Edges &eY, const Edges &eZ)
| Create 3D histogram with variable bins. More...
std::pair< DataObject *, AIDA::IProfile1D * > | createProf1D (const AIDA::IProfile1D &hist)
| Copy constructor. More...
std::pair< DataObject *, AIDA::IProfile1D * > | createProf1D (const std::string &title, int nBins, double xlow, double xup, double ylow, double yup, const std::string &opt="")
| Creator of 1D profile with fixed bins. More...
std::pair< DataObject *, AIDA::IProfile1D * > | createProf1D (const std::string &title, const Edges &e, double ylow, double yup, const std::string &opt="")
| Creator of 1D profile with variable bins. More...
std::pair< DataObject *, AIDA::IProfile2D * > | createProf2D (const AIDA::IProfile2D &hist)
| Copy constructor. More...
std::pair< DataObject *, AIDA::IProfile2D * > | createProf2D (const std::string &title, int binsX, double iminX, double imaxX, int binsY, double iminY, double imaxY, double lowerValue, double upperValue)
| Creator for 2 D profile with fixed bins. More...
std::pair< DataObject *, AIDA::IProfile2D * > | createProf2D (const std::string &title, const Edges &eX, const Edges &eY, double lowerValue, double upperValue)
| Creator for 2 D profile with variable bins. More...
StatusCode | setAppReturnCode (SmartIF< IProperty > &appmgr, int value, bool force=false)
| Set the application return code. More...
int | getAppReturnCode (const SmartIF< IProperty > &appmgr)
| Get the application (current) return code. More...
GAUDI_API IAppMgrUI * | createApplicationMgrEx (const std::string &dllname, const std::string &factname)
GAUDI_API IAppMgrUI * | createApplicationMgr (const std::string &dllname, const std::string &factname)
GAUDI_API IAppMgrUI * | createApplicationMgr (const std::string &dllname)
GAUDI_API IAppMgrUI * | createApplicationMgr ()
GAUDI_API IInterface * | createInstance (const std::string &name, const std::string &factname, const std::string &ddlname)
GAUDI_API ISvcLocator * | svcLocator ()
GAUDI_API ISvcLocator * | setInstance (ISvcLocator *newInstance)
| Set new instance of service locator. More...
GAUDI_API IAppMgrUI * | setInstance (IAppMgrUI *newInstance)
| Set new instance of service locator. More...
GAUDI_API void | pushCurrentDataObject (DataObject **pobjAddr)
GAUDI_API void | popCurrentDataObject ()
GAUDI_API DataObject * | getCurrentDataObject ()
GAUDI_API std::ostream & | operator<< (std::ostream &o, const Gaudi::Histo1DDef &histo)
| the streamer operator for class Gaudi::Histo1DDef More...
template<typename... Is>
std::vector< std::string > | getInterfaceNames (Gaudi::interface_list< Is...>)
template<typename... Is, typename P >
void * | iid_cast (const InterfaceID &tid, Gaudi::interface_list< Is...>, P *ptr)
template<typename TARGET >
TARGET * | Cast (IInterface *i)
| Cast a IInterface pointer to an IInterface specialization (TARGET). More...
template<typename TARGET >
const TARGET * | Cast (const IInterface *i)
| Cast a IInterface pointer to an IInterface specialization (TARGET). More...
template<class CONTAINER >
NamedRange_< CONTAINER > | range (const CONTAINER &cnt, std::string name)
| simple function to create the named range form arbitrary container More...
template<class CONTAINER >
Range_< CONTAINER > | range (const CONTAINER &cnt)
| simple function to create the range from the arbitrary container More...
GAUDI_API void | Sleep (int sec)
| Simple sleep function. More...
GAUDI_API void | NanoSleep (long long nsec)
| Small variation on the sleep function for nanoseconds sleep. More...
template<unsigned int N>
bool | operator== (const Gaudi::StringKey &key1, const char(&key2)[N])
| equality operator with C-arrays More...
template<unsigned int N>
bool | operator!= (const Gaudi::StringKey &key1, const char(&key2)[N])
| non-equality operator with C-arrays More...
bool | operator== (const std::string &key1, const Gaudi::StringKey &key2)
| "right" form of equality operator More...
template<unsigned int N>
bool | operator== (const char(&key1)[N], const Gaudi::StringKey &key2)
| "right" form of equality operator More...
bool | operator!= (const std::string &key1, const Gaudi::StringKey &key2)
| "right" form of non-equality operator More...
template<unsigned int N>
bool | operator!= (const char(&key1)[N], const Gaudi::StringKey &key2)
| "right" form of non-equality operator More...
std::size_t | hash_value (const Gaudi::StringKey &key)
| hash-function: heeded for boost::hash More...
std::ostream & | operator<< (std::ostream &o, const Gaudi::StringKey &key)
| printout of the object reply on the native printout for the string More...
std::ostream & | operator<< (std::ostream &out, const Gaudi::Time &time)
| Output operator. More...
std::ostream & | operator<< (std::ostream &out, const Gaudi::TimeSpan &time)
| Output operator. More...
std::string | createGuidAsString ()
| Create file identifier using UUID mechanism. More...

## Detailed Description

Helper functions to set/get the application return code.

Create a hash with a large avalanche effect from 32 or 64 bit integers or a string.

rebuild "the linear container" from the map

General Gaudi namepace.

< AIDA

General Gaudi namespace.

Fix-Me:
  : AIDA interfaces visibility

Fix-Me:
  : AIDA interfaces visibility

Fix-Me:
  : AIDA interfaces visibility

Fix-Me:
  : AIDA interfaces visibility

Author
  Marco Clemencic
  Juan PALACIOS

Date
  2005-11-21

Author
  Juan PALACIOS

Date
  2005-11-23

note: the constants below are not arbitrary, but are picked carefully such that the bit shuffling has a large 'avalanche' effect... Code by Brett Mulvey (old link: http://bretm.home.comcast.net/~bretm/hash/)

note: as a result, you might call this a quasi-random (not to be confused with psuedo-random!) number generator, in that it generates an output which satisfies a requirement on the uniformity of its output distribution. (and not on the predictability of the next number in the sequence, based on knowledge of the preceding numbers)

note: another way to look at this is is as an (approximation of an) evaporating black hole: whatever you dump in to it, you get something uniformly distributed back ;-)

## Function Documentation

template<typename TARGET >

TARGET* Gaudi::Cast | ( | IInterface * | i | ) |

Cast a IInterface pointer to an IInterface specialization (TARGET).

Definition at line 301 of file IInterface.h.

301 {
302 return reinterpret_cast<TARGET*>(i->i_cast(TARGET::interfaceID()));
303 }
IInterface::i_cast
virtual void * i_cast(const InterfaceID &) const =0
main cast function
template<typename TARGET >

const TARGET* Gaudi::Cast | ( | const IInterface * | i | ) |

Cast a IInterface pointer to an IInterface specialization (TARGET).

const version

Definition at line 307 of file IInterface.h.

307 {
308 return reinterpret_cast<const TARGET*>(i->i_cast(TARGET::interfaceID()));
309 }
IInterface::i_cast
virtual void * i_cast(const InterfaceID &) const =0
main cast function

GAUDI_API IAppMgrUI* Gaudi::createApplicationMgr | ( | const std::string & | dllname,
|  | const std::string & | factname
| ) |  |

GAUDI_API IAppMgrUI* Gaudi::createApplicationMgr | ( | const std::string & | dllname | ) |

GAUDI_API IAppMgrUI* Gaudi::createApplicationMgr | ( |  | ) |

Definition at line 246 of file Bootstrap.cpp.

246 {
247 return Gaudi::createApplicationMgr();
248 }
Gaudi::createApplicationMgr
GAUDI_API IAppMgrUI * createApplicationMgr(const std::string &dllname, const std::string &factname)

GAUDI_API IAppMgrUI* Gaudi::createApplicationMgrEx | ( | const std::string & | dllname,
|  | const std::string & | factname
| ) |  |

std::string Gaudi::createGuidAsString | ( |  | ) |

Create file identifier using UUID mechanism.

Definition at line 188 of file XMLFileCatalog.cpp.

188 {
189 uuid_t uuid;
190 ::uuid_generate_time(uuid);
191 struct Guid {
192 unsigned int Data1;
193 unsigned short Data2;
194 unsigned short Data3;
195 unsigned char Data4[8];
196 } *g = (Guid*)&uuid;
197
198 boost::format text("%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X");
199 text % g->Data1 % g->Data2 % g->Data3;
200 for (int i = 0; i < 8; ++i)
201 text % (unsigned short)g->Data4[i];
202 return text.str();
203 }
format
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
Definition: MsgStream.cpp:119
gaudirun.g
dictionary g
Definition: gaudirun.py:420
ana.i
list i
Definition: ana.py:128

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::createH1D | ( | const AIDA::IHistogram1D & | hist | ) |

Copy constructor.

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::createH1D | ( | const std::string & | title,
|  | int | nBins = `10`,
|  | double | lowerEdge = `0.`,
|  | double | upperEdge = `1.`
| ) |  |

Creator for 1D histogram with fixed bins.

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::createH1D | ( | const std::string & | title,
|  | const Edges & | e
| ) |  |

Creator for 1D histogram with variable bins.

std::pair<DataObject*,AIDA::IHistogram2D*> Gaudi::createH2D | ( | const AIDA::IHistogram2D & | hist | ) |

Copy constructor.

std::pair<DataObject*,AIDA::IHistogram2D*> Gaudi::createH2D | ( | TH2D * | rep | ) |

"Adopt" constructor

std::pair<DataObject*,AIDA::IHistogram2D*> Gaudi::createH2D | ( | const std::string & | title,
|  | int | binsX,
|  | double | iminX,
|  | double | imaxX,
|  | int | binsY,
|  | double | iminY,
|  | double | imaxY
| ) |  |

Creator for 2 D histograms with fixed bins.

std::pair<DataObject*,AIDA::IHistogram2D*> Gaudi::createH2D | ( | const std::string & | title,
|  | const Edges & | eX,
|  | const Edges & | eY
| ) |  |

Creator for 2 D histograms with variable bins.

std::pair<DataObject*,AIDA::IHistogram3D*> Gaudi::createH3D | ( | const AIDA::IHistogram3D & | hist | ) |

Copy constructor.

std::pair<DataObject*,AIDA::IHistogram3D*> Gaudi::createH3D | ( | const std::string & | title,
|  | int | nBinsX,
|  | double | xlow,
|  | double | xup,
|  | int | nBinsY,
|  | double | ylow,
|  | double | yup,
|  | int | nBinsZ,
|  | double | zlow,
|  | double | zup
| ) |  |

Create 3D histogram with fixed bins.

std::pair<DataObject*,AIDA::IHistogram3D*> Gaudi::createH3D | ( | const std::string & | title,
|  | const Edges & | eX,
|  | const Edges & | eY,
|  | const Edges & | eZ
| ) |  |

Create 3D histogram with variable bins.

GAUDI_API IInterface* Gaudi::createInstance | ( | const std::string & | name,
|  | const std::string & | factname,
|  | const std::string & | ddlname
| ) |  |

std::pair<DataObject*,AIDA::IProfile1D*> Gaudi::createProf1D | ( | const AIDA::IProfile1D & | hist | ) |

Copy constructor.

std::pair<DataObject*,AIDA::IProfile1D*> Gaudi::createProf1D | ( | const std::string & | title,
|  | int | nBins,
|  | double | xlow,
|  | double | xup,
|  | double | ylow,
|  | double | yup,
|  | const std::string & | opt = `""`
| ) |  |

Creator of 1D profile with fixed bins.

std::pair<DataObject*,AIDA::IProfile1D*> Gaudi::createProf1D | ( | const std::string & | title,
|  | const Edges & | e,
|  | double | ylow,
|  | double | yup,
|  | const std::string & | opt = `""`
| ) |  |

Creator of 1D profile with variable bins.

std::pair<DataObject*,AIDA::IProfile2D*> Gaudi::createProf2D | ( | const AIDA::IProfile2D & | hist | ) |

Copy constructor.

std::pair<DataObject*,AIDA::IProfile2D*> Gaudi::createProf2D | ( | const std::string & | title,
|  | int | binsX,
|  | double | iminX,
|  | double | imaxX,
|  | int | binsY,
|  | double | iminY,
|  | double | imaxY,
|  | double | lowerValue,
|  | double | upperValue
| ) |  |

Creator for 2 D profile with fixed bins.

std::pair<DataObject*,AIDA::IProfile2D*> Gaudi::createProf2D | ( | const std::string & | title,
|  | const Edges & | eX,
|  | const Edges & | eY,
|  | double | lowerValue,
|  | double | upperValue
| ) |  |

Creator for 2 D profile with variable bins.

int Gaudi::getAppReturnCode | ( | const SmartIF< IProperty > & | appmgr | ) |
| inline

Get the application (current) return code.

Returns
  the return code or 0 if it was not possible to get it

Definition at line 70 of file AppReturnCode.h.

70 {
71 if (appmgr) {
72 IntegerProperty returnCode("ReturnCode", 0);
73 if (appmgr->getProperty(&returnCode).isSuccess())
74 return returnCode.value();
75 }
76 return 0;
77 }
IProperty::getProperty
virtual StatusCode getProperty(Property *p) const =0
Get the property by property.
StatusCode::isSuccess
bool isSuccess() const
Test for a status code of SUCCESS.
Definition: StatusCode.h:76
SimpleProperty< int >

GAUDI_API DataObject* Gaudi::getCurrentDataObject | ( |  | ) |

template<typename... Is>

std::vector<std::string> Gaudi::getInterfaceNames | ( | Gaudi::interface_list< Is...> |  | ) |

Definition at line 177 of file IInterface.h.

177 {
178 return { Is::name()... };
179 }
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:28
template<class Q , class T >

T* Gaudi::getRepresentation | ( | const Q & | hist | ) |

Definition at line 21 of file GaudiPI.h.

21 {
22 T* result = nullptr;
23 const HistogramBase *p = dynamic_cast<const HistogramBase*>(&hist);
24 if ( p ) {
25 result = dynamic_cast<T*>(p->representation());
26 }
27 return result;
28 }

std::size_t Gaudi::hash_value | ( | const Gaudi::StringKey & | key | ) |
| inline

hash-function: heeded for boost::hash

Attention
  NEVER use the actual hash value for anything stored in files, as it is not guaranteed that the hashing scheme will remain the same. The only reason for this function is Python and transparent usage of this object for hashmap-like containers

See also
  Gaudi::Hash

Returns
  the actual hash value

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 216 of file StringKey.h.

217 { return key.__hash__ () ; }
Gaudi::StringKey::__hash__
std::size_t __hash__() const
the actual access to the hash
Definition: StringKey.h:116
template<typename... Is, typename P >

void* Gaudi::iid_cast | ( | const InterfaceID & | tid,
|  | Gaudi::interface_list< Is...> | ,
|  | P * | ptr
| ) |  |
| inline

Definition at line 182 of file IInterface.h.

182 {
183 constexpr auto iid_cast_ = iid_cast_details::iid_cast_t<Is...>{};
184 return iid_cast_(tid,ptr);
185 }

GAUDI_API void Gaudi::NanoSleep | ( | long long | nsec | ) |

Small variation on the sleep function for nanoseconds sleep.

Author
  Marco Clemencic

Definition at line 11 of file Sleep.cpp.

11 {
12 std::this_thread::sleep_for(std::chrono::nanoseconds(nsec));
13 }
std::chrono::nanoseconds
std::this_thread::sleep_for
T sleep_for(T...args)
template<unsigned int N>

bool Gaudi::operator!= | ( | const Gaudi::StringKey & | key1,
|  | const char(&) | key2[N]
| ) |  |
| inline

non-equality operator with C-arrays

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 165 of file StringKey.h.

167 { return ! ( key1 == key2 ) ; }

bool Gaudi::operator!= | ( | const std::string & | key1,
|  | const Gaudi::StringKey & | key2
| ) |  |
| inline

"right" form of non-equality operator

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 193 of file StringKey.h.

195 { return key2 != key1 ; }
template<unsigned int N>

bool Gaudi::operator!= | ( | const char(&) | key1[N],
|  | const Gaudi::StringKey & | key2
| ) |  |
| inline

"right" form of non-equality operator

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 203 of file StringKey.h.

204 { return key2 != key1 ; }

GAUDI_API std::ostream& Gaudi::operator<< | ( | std::ostream & | o,
|  | const Gaudi::Histo1DDef & | histo
| ) |  |

the streamer operator for class Gaudi::Histo1DDef

Definition at line 109 of file HistoDef.cpp.

110 { return histo.fillStream ( o ) ; }
Gaudi::Histo1DDef::fillStream
std::ostream & fillStream(std::ostream &o) const
printout of the histogram definition
Definition: HistoDef.cpp:58

std::ostream& Gaudi::operator<< | ( | std::ostream & | out,
|  | const Gaudi::Time & | time
| ) |  |
| inline

Output operator.

Definition at line 185 of file Time.icpp.

185 {
186 return out << Gaudi::TimeSpan(time).seconds() << '.' << time.nanoformat();
187 }
Gaudi::TimeSpan::seconds
ValueType seconds(void) const
Get the number of complete seconds in the span.
Definition: Time.icpp:123
Gaudi::Time::nanoformat
std::string nanoformat(size_t minwidth=1, size_t maxwidth=9) const
Format the nanosecond fractional part of the time as a string.
Definition: Time.cpp:322
Gaudi::TimeSpan
Based on seal::TimeSpan.
Definition: Time.h:56

std::ostream& Gaudi::operator<< | ( | std::ostream & | out,
|  | const Gaudi::TimeSpan & | time
| ) |  |
| inline

Output operator.

Definition at line 190 of file Time.icpp.

190 {
191 return out << time.seconds() << '.' << Gaudi::Time(time).nanoformat();
192 }
Gaudi::TimeSpan::seconds
ValueType seconds(void) const
Get the number of complete seconds in the span.
Definition: Time.icpp:123
Gaudi::Time
Based on seal::Time.
Definition: Time.h:213
Gaudi::Time::nanoformat
std::string nanoformat(size_t minwidth=1, size_t maxwidth=9) const
Format the nanosecond fractional part of the time as a string.
Definition: Time.cpp:322

std::ostream& Gaudi::operator<< | ( | std::ostream & | o,
|  | const Gaudi::StringKey & | key
| ) |  |
| inline

printout of the object reply on the native printout for the string

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 251 of file StringKey.h.

252 { return o << key.str() ; }
Gaudi::StringKey::str
const std::string & str() const
the actual string
Definition: StringKey.h:47
template<unsigned int N>

bool Gaudi::operator== | ( | const Gaudi::StringKey & | key1,
|  | const char(&) | key2[N]
| ) |  |
| inline

equality operator with C-arrays

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 151 of file StringKey.h.

153 {
154 return
155 key1.str().size() == N &&
156 std::equal ( key2 , key2 + N , key1.str().begin() ) ;
157 }
IOTest.N
int N
Definition: IOTest.py:90
std::string::size
T size(T...args)
std::string::begin
T begin(T...args)
std::equal
T equal(T...args)
Gaudi::StringKey::str
const std::string & str() const
the actual string
Definition: StringKey.h:47

bool Gaudi::operator== | ( | const std::string & | key1,
|  | const Gaudi::StringKey & | key2
| ) |  |
| inline

"right" form of equality operator

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 174 of file StringKey.h.

176 { return key2 == key1 ; }
template<unsigned int N>

bool Gaudi::operator== | ( | const char(&) | key1[N],
|  | const Gaudi::StringKey & | key2
| ) |  |
| inline

"right" form of equality operator

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 184 of file StringKey.h.

186 { return key2 == key1 ; }

GAUDI_API void Gaudi::popCurrentDataObject | ( |  | ) |

Definition at line 38 of file RootIOHandler.cpp.

38 {
39 Gaudi::popCurrentDataObject();
40 resetLastLink();
41 }
Gaudi::popCurrentDataObject
GAUDI_API void popCurrentDataObject()
Definition: RootIOHandler.cpp:38
GaudiRoot::resetLastLink
void resetLastLink()
Definition: RootIOHandler.cpp:30

std::pair<DataObject*,AIDA::IProfile1D*> Gaudi::profile1DX | ( | const std::string & | name,
|  | const AIDA::IHistogram2D & | h,
|  | int | firstbin,
|  | int | lastbin
| ) |  |

Create 1D profile in X from 2D histogram.

std::pair<DataObject*,AIDA::IProfile1D*> Gaudi::profile1DY | ( | const std::string & | name,
|  | const AIDA::IHistogram2D & | h,
|  | int | firstbin,
|  | int | lastbin
| ) |  |

Create 1D profile in Y from 2D histogram.

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::project1DX | ( | const std::string & | name,
|  | const AIDA::IHistogram2D & | h,
|  | int | firstbin,
|  | int | lastbin
| ) |  |

Create 1D projection in X from 2D histogram.

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::project1DY | ( | const std::string & | name,
|  | const AIDA::IHistogram2D & | h,
|  | int | firstbin,
|  | int | lastbin
| ) |  |

Create 1D projection in Y from 2D histogram.

GAUDI_API void Gaudi::pushCurrentDataObject | ( | DataObject ** | pobjAddr | ) |

Definition at line 34 of file RootIOHandler.cpp.

34 {
35 Gaudi::pushCurrentDataObject(pobjAddr);
36 resetLastLink();
37 }
Gaudi::pushCurrentDataObject
GAUDI_API void pushCurrentDataObject(DataObject **pobjAddr)
Definition: RootIOHandler.cpp:34
GaudiRoot::resetLastLink
void resetLastLink()
Definition: RootIOHandler.cpp:30
template<class CONTAINER >

NamedRange_<CONTAINER> Gaudi::range | ( | const CONTAINER & | cnt,
|  | std::string | name
| ) |  |
| inline

simple function to create the named range form arbitrary container

1 const CONTAINER& cnt = ... ;
2 auto r = range ( cnt , "some name") ;

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

Date
  2007-11-29

Definition at line 130 of file NamedRange.h.

132 { return NamedRange_<CONTAINER>( cnt.begin() , cnt.end() , std::move(name) ) ; }
std::move
T move(T...args)
template<class CONTAINER >

Range_<CONTAINER> Gaudi::range | ( | const CONTAINER & | cnt | ) |
| inline

simple function to create the range from the arbitrary container

1 const CONTAINER& cnt = ... ;
2
3 Range_<CONTAINER> r = range ( cnt ) ;

The range could be created over ALL container types which supports at least the bidirectional iterators.

The minimum requirements from the container type:

- support the concept of "CONTAINER::value_type"
- support the concept of "CONTAINER::const_iterator"
- support the concept of "CONTAINER::const_reference"
- support the concept of "CONTAINER::const_reverse_iterator"
- the iterator should be ok for "std::distance" and "std::advance"
- support for "const_iterator CONTAINER::begin () const"
- support for "const_iterator CONTAINER::end () const"
- support for "const_reverse_iterator CONTAINER::rbegin () const"
- support for "const_reverse_iterator CONTAINER::rend () const"

Author
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yre.e.nosp@m.du

Date
  2007-11-29

Definition at line 265 of file Range.h.

266 { return Range_<CONTAINER>( cnt.begin() , cnt.end() ) ; }

StatusCode Gaudi::setAppReturnCode | ( | SmartIF< IProperty > & | appmgr,
|  | int | value,
|  | bool | force = `false`
| ) |  |
| inline

Set the application return code.

By default the return code of the application is modified only if the original value was 0 (i.e. no error). In this way we keep the first cause of error.

Parameters

  appmgr | IProperty interface of the ApplicationMgr
  value | value to assign to the return code
  force | if set to true, the return code is set even if it was already set

Returns
  SUCCESS if it was possible to set the return code or the return code was already set

Definition at line 50 of file AppReturnCode.h.

50 {
51 if (appmgr) {
52 IntegerProperty returnCode("ReturnCode", 0);
53 if (appmgr->getProperty(&returnCode).isSuccess()) {
54 if (returnCode.value() == 0 || force) {
55 returnCode.setValue(value);
56 return appmgr->setProperty(returnCode);
57 }
58 // Consider is a success if we do already have an error code.
59 return StatusCode::SUCCESS;
60 }
61 }
62 return StatusCode::FAILURE;
63 }
IProperty::getProperty
virtual StatusCode getProperty(Property *p) const =0
Get the property by property.
StatusCode::isSuccess
bool isSuccess() const
Test for a status code of SUCCESS.
Definition: StatusCode.h:76
SimpleProperty< int >
StatusCode::FAILURE
Definition: StatusCode.h:29
StatusCode::SUCCESS
Definition: StatusCode.h:30
IProperty::setProperty
virtual StatusCode setProperty(const Property &p)=0
Set the property by property.
dump_component_properties.value
list value
Definition: dump_component_properties.py:12

GAUDI_API ISvcLocator* Gaudi::setInstance | ( | ISvcLocator * | newInstance | ) |

Set new instance of service locator.

Parameters

  newInstance | Current instance of service locator.

Returns
  Previous instance of service locator object.

GAUDI_API IAppMgrUI* Gaudi::setInstance | ( | IAppMgrUI * | newInstance | ) |

Set new instance of service locator.

Parameters

  newInstance | Current instance of service locator.

Returns
  Previous instance of service locator object.

GAUDI_API void Gaudi::Sleep | ( | int | sec | ) |

Simple sleep function.

Author
  Marco Clemencic

Definition at line 7 of file Sleep.cpp.

7 {
8 std::this_thread::sleep_for(std::chrono::seconds(sec));
9 }
std::chrono::seconds
std::this_thread::sleep_for
T sleep_for(T...args)

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::slice1DX | ( | const std::string & | name,
|  | const AIDA::IHistogram2D & | h,
|  | int | firstbin,
|  | int | lastbin
| ) |  |

Create 1D slice from 2D histogram.

std::pair<DataObject*,AIDA::IHistogram1D*> Gaudi::slice1DY | ( | const std::string & | name,
|  | const AIDA::IHistogram2D & | h,
|  | int | firstbin,
|  | int | lastbin
| ) |  |

Create 1D slice from 2D histogram.

GAUDI_API ISvcLocator* Gaudi::svcLocator | ( |  | ) |