MultiPandoraApi.cc
Go to the documentation of this file.
1 /**
2  * @file larpandoracontent/LArControlFlow/MultiPandoraApi.cc
3  *
4  * @brief Implementation of the MultiPandoraApi class.
5  *
6  * $Log: $
7  */
8 
9 #include "Pandora/Pandora.h"
10 #include "Pandora/StatusCodes.h"
11 
14 
16 
17 //------------------------------------------------------------------------------------------------------------------------------------------
18 
20 {
22 }
23 
24 //------------------------------------------------------------------------------------------------------------------------------------------
25 
26 const 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 
33 const PandoraInstanceList &MultiPandoraApi::GetDaughterPandoraInstanceList(const pandora::Pandora *const pPrimaryPandora)
34 {
36 }
37 
38 //------------------------------------------------------------------------------------------------------------------------------------------
39 
40 const pandora::Pandora *MultiPandoraApi::GetPrimaryPandoraInstance(const pandora::Pandora *const pDaughterPandora)
41 {
42  return m_multiPandoraApiImpl.GetPrimaryPandoraInstance(pDaughterPandora);
43 }
44 
45 //------------------------------------------------------------------------------------------------------------------------------------------
46 
47 unsigned int MultiPandoraApi::GetVolumeId(const pandora::Pandora *const pPandora)
48 {
49  return m_multiPandoraApiImpl.GetVolumeId(pPandora);
50 }
51 
52 //------------------------------------------------------------------------------------------------------------------------------------------
53 
54 void MultiPandoraApi::AddPrimaryPandoraInstance(const pandora::Pandora *const pPrimaryPandora)
55 {
57 }
58 
59 //------------------------------------------------------------------------------------------------------------------------------------------
60 
61 void MultiPandoraApi::AddDaughterPandoraInstance(const pandora::Pandora *const pPrimaryPandora, const pandora::Pandora *const pDaughterPandora)
62 {
63  m_multiPandoraApiImpl.AddDaughterPandoraInstance(pPrimaryPandora, pDaughterPandora);
64 }
65 
66 //------------------------------------------------------------------------------------------------------------------------------------------
67 
68 void MultiPandoraApi::DeletePandoraInstances(const pandora::Pandora *const pPrimaryPandora)
69 {
71 }
72 
73 //------------------------------------------------------------------------------------------------------------------------------------------
74 
75 void MultiPandoraApi::SetVolumeId(const pandora::Pandora *const pPandora, const unsigned int volumeId)
76 {
77  m_multiPandoraApiImpl.SetVolumeId(pPandora, volumeId);
78 }
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 void DeletePandoraInstances(const pandora::Pandora *const pPrimaryPandora)
Delete all pandora instances associated with (and including) a specified primary pandora instance...
static unsigned int GetVolumeId(const pandora::Pandora *const pPandora)
Get the volume id associated with a given 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.
void DeletePandoraInstances(const pandora::Pandora *const pPrimaryPandora)
Delete all pandora instances associated with (and including) a specified primary pandora instance...
void AddPrimaryPandoraInstance(const pandora::Pandora *const pPrimaryPandora)
Declare a new primary pandora instance.
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...
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...
std::vector< const pandora::Pandora * > PandoraInstanceList
static void AddPrimaryPandoraInstance(const pandora::Pandora *const pPrimaryPandora)
Declare a new primary pandora instance and receive the relevant multi pandora book-keeping instance...
Header file for the MultiPandoraApiImpl class.
std::unordered_map< const pandora::Pandora *, PandoraInstanceList > PandoraInstanceMap
void SetVolumeId(const pandora::Pandora *const pPandora, const unsigned int volumeId)
Set the volume id associated with a given pandora instance.
Header file for the MultiPandoraApi class.
static const PandoraInstanceList & GetDaughterPandoraInstanceList(const pandora::Pandora *const pPrimaryPandora)
Get the list of daughter pandora instances associated with a given primary pandora instance...
const PandoraInstanceMap & GetPandoraInstanceMap() const
Get the pandora instance map.
static void SetVolumeId(const pandora::Pandora *const pPandora, const unsigned int volumeId)
Set the volume id associated with a given pandora instance.
const PandoraInstanceList & GetDaughterPandoraInstanceList(const pandora::Pandora *const pPrimaryPandora) const
Get the list of daughter pandora instances associated with a given primary pandora instance...
static const PandoraInstanceMap & GetPandoraInstanceMap()
Get the pandora instance map.
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...
unsigned int GetVolumeId(const pandora::Pandora *const pPandora) const
Get the volume id associated with a given pandora instance.
MultiPandoraApiImpl class.
static MultiPandoraApiImpl m_multiPandoraApiImpl
The multi pandora api implementation.
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...