Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
ObjectCreation.cc
Go to the documentation of this file.
1
11
12#include "Pandora/Algorithm.h"
13#include "Pandora/Pandora.h"
16
17namespace object_creation
18{
19
20using namespace pandora;
21
22//------------------------------------------------------------------------------------------------------------------------------------------
23
24template <typename PARAMETERS, typename METADATA, typename OBJECT>
27{
28 return pandora.GetPandoraApiImpl()->Create(parameters, factory);
29}
30
31//------------------------------------------------------------------------------------------------------------------------------------------
32
33template <typename PARAMETERS, typename METADATA, typename OBJECT>
34StatusCode ObjectCreationHelper<PARAMETERS, METADATA, OBJECT>::Create(const Algorithm &algorithm, const PARAMETERS &parameters,
35 const OBJECT *&pObject, const ObjectFactory<PARAMETERS, OBJECT> &factory)
36{
37 return algorithm.GetPandora().GetPandoraContentApiImpl()->Create(parameters, pObject, factory);
38}
39
40//------------------------------------------------------------------------------------------------------------------------------------------
41
42template <typename PARAMETERS, typename METADATA, typename OBJECT>
44 const METADATA &metadata)
45{
46 return algorithm.GetPandora().GetPandoraContentApiImpl()->AlterMetadata(pObject, metadata);
47}
48
49//------------------------------------------------------------------------------------------------------------------------------------------
50//------------------------------------------------------------------------------------------------------------------------------------------
51
63
64} // namespace object_creation
Header file for the algorithm class.
Header file for pandora object creation classes.
Header file for the object factory class.
Header file for the pandora class.
Header file for the pandora api implementation class.
Header file for the pandora content api implementation class.
Parameters class.
Definition Validation.h:20
Object creation helper class.
static pandora::StatusCode Create(const pandora::Pandora &pandora, const Parameters &parameters, const pandora::ObjectFactory< Parameters, Object > &factory=pandora::PandoraObjectFactory< Parameters, Object >())
Create a new object from a user factory.
static pandora::StatusCode AlterMetadata(const pandora::Algorithm &algorithm, const Object *const pObject, const Metadata &metadata)
Alter the metadata information stored in an object.
Algorithm class. Algorithm addresses are held only by the algorithm manager. They have a fully define...
Definition Algorithm.h:21
ObjectFactory class responsible for extended pandora object creation.
StatusCode AlterMetadata(const OBJECT *const pObject, const METADATA &metadata) const
Alter the metadata information stored in an object.
StatusCode Create(const PARAMETERS &parameters, const OBJECT *&pObject, const ObjectFactory< PARAMETERS, OBJECT > &factory) const
Create an object for pandora.
Pandora class.
Definition Pandora.h:40
const PandoraContentApiImpl * GetPandoraContentApiImpl() const
Get the pandora content api impl.
Definition Pandora.cc:175
const Pandora & GetPandora() const
Get the associated pandora instance.
Definition Process.h:116
StatusCode
The StatusCode enum.