Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
MultiPandoraApi.cc
Go to the documentation of this file.
1
9#include "Pandora/Pandora.h"
10#include "Pandora/StatusCodes.h"
11
14
16
17//------------------------------------------------------------------------------------------------------------------------------------------
18
23
24//------------------------------------------------------------------------------------------------------------------------------------------
25
26const pandora::Pandora *MultiPandoraApi::GetPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const unsigned int volumeId)
27{
28 return m_multiPandoraApiImpl.GetPandoraInstance(pPrimaryPandora, volumeId);
29}
30
31//------------------------------------------------------------------------------------------------------------------------------------------
32
37
38//------------------------------------------------------------------------------------------------------------------------------------------
39
44
45//------------------------------------------------------------------------------------------------------------------------------------------
46
47unsigned int MultiPandoraApi::GetVolumeId(const pandora::Pandora *const pPandora)
48{
49 return m_multiPandoraApiImpl.GetVolumeId(pPandora);
50}
51
52//------------------------------------------------------------------------------------------------------------------------------------------
53
58
59//------------------------------------------------------------------------------------------------------------------------------------------
60
61void MultiPandoraApi::AddDaughterPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const pandora::Pandora *const pDaughterPandora)
62{
63 m_multiPandoraApiImpl.AddDaughterPandoraInstance(pPrimaryPandora, pDaughterPandora);
64}
65
66//------------------------------------------------------------------------------------------------------------------------------------------
67
69{
71}
72
73//------------------------------------------------------------------------------------------------------------------------------------------
74
75void MultiPandoraApi::SetVolumeId(const pandora::Pandora *const pPandora, const unsigned int volumeId)
76{
77 m_multiPandoraApiImpl.SetVolumeId(pPandora, volumeId);
78}
Header file for the MultiPandoraApi class.
std::unordered_map< const pandora::Pandora *, PandoraInstanceList > PandoraInstanceMap
std::vector< const pandora::Pandora * > PandoraInstanceList
Header file for the MultiPandoraApiImpl class.
Header file for the pandora class.
Header file defining status codes and relevant preprocessor macros.
static void AddDaughterPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const pandora::Pandora *const pDaughterPandora)
Add a pandora daughter instance, associated to a primary pandora instance.
static MultiPandoraApiImpl m_multiPandoraApiImpl
The multi pandora api implementation.
static const PandoraInstanceMap & GetPandoraInstanceMap()
Get the pandora instance map.
static const pandora::Pandora * GetPrimaryPandoraInstance(const pandora::Pandora *const pDaughterPandora)
Get the address of the primary pandora instance associated with a given daughter pandora instance.
static const PandoraInstanceList & GetDaughterPandoraInstanceList(const pandora::Pandora *const pPrimaryPandora)
Get the list of daughter pandora instances associated with a given primary pandora instance.
static void SetVolumeId(const pandora::Pandora *const pPandora, const unsigned int volumeId)
Set the volume id associated with a given pandora instance.
static unsigned int GetVolumeId(const pandora::Pandora *const pPandora)
Get the volume id associated with a given pandora instance.
static const pandora::Pandora * GetPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const unsigned int volumeId)
Get the address of the pandora instance associated with a given primary pandora instance and volume i...
static void DeletePandoraInstances(const pandora::Pandora *const pPrimaryPandora)
Delete all pandora instances associated with (and including) a specified primary pandora instance.
static void AddPrimaryPandoraInstance(const pandora::Pandora *const pPrimaryPandora)
Declare a new primary pandora instance and receive the relevant multi pandora book-keeping instance.
MultiPandoraApiImpl class.
const PandoraInstanceList & GetDaughterPandoraInstanceList(const pandora::Pandora *const pPrimaryPandora) const
Get the list of daughter pandora instances associated with a given primary pandora instance.
const pandora::Pandora * GetPrimaryPandoraInstance(const pandora::Pandora *const pDaughterPandora) const
Get the address of the primary pandora instance associated with a given daughter pandora instance.
void SetVolumeId(const pandora::Pandora *const pPandora, const unsigned int volumeId)
Set the volume id associated with a given pandora instance.
void AddPrimaryPandoraInstance(const pandora::Pandora *const pPrimaryPandora)
Declare a new primary pandora instance.
void AddDaughterPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const pandora::Pandora *const pDaughterPandora)
Add a pandora daughter instance, associated to a primary pandora instance.
const PandoraInstanceMap & GetPandoraInstanceMap() const
Get the pandora instance map.
unsigned int GetVolumeId(const pandora::Pandora *const pPandora) const
Get the volume id associated with a given pandora instance.
const pandora::Pandora * GetPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const unsigned int volumeId) const
Get the address of the pandora instance associated with a given primary pandora instance and volume i...
void DeletePandoraInstances(const pandora::Pandora *const pPrimaryPandora)
Delete all pandora instances associated with (and including) a specified primary pandora instance.
Pandora class.
Definition Pandora.h:40