![]() |
LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
MultiPandoraApiImpl class. More...
#include "MultiPandoraApiImpl.h"
Private Types | |
| typedef std::unordered_map< const pandora::Pandora *, const pandora::Pandora * > | PandoraRelationMap |
| typedef std::unordered_map< const pandora::Pandora *, unsigned int > | PandoraToVolumeIdMap |
Private Member Functions | |
| MultiPandoraApiImpl () | |
| Default constructor;. More... | |
| ~MultiPandoraApiImpl () | |
| Destructor;. More... | |
| const PandoraInstanceMap & | GetPandoraInstanceMap () const |
| Get the pandora instance map. More... | |
| 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 id number. More... | |
| const PandoraInstanceList & | GetDaughterPandoraInstanceList (const pandora::Pandora *const pPrimaryPandora) const |
| Get the list of daughter pandora instances associated with a given primary pandora instance. More... | |
| 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. More... | |
| unsigned int | GetVolumeId (const pandora::Pandora *const pPandora) const |
| Get the volume id associated with a given pandora instance. More... | |
| void | AddPrimaryPandoraInstance (const pandora::Pandora *const pPrimaryPandora) |
| Declare a new primary pandora instance. More... | |
| void | AddDaughterPandoraInstance (const pandora::Pandora *const pPrimaryPandora, const pandora::Pandora *const pDaughterPandora) |
| Add a pandora daughter instance, associated to a primary pandora instance. More... | |
| void | DeletePandoraInstances (const pandora::Pandora *const pPrimaryPandora) |
| Delete all pandora instances associated with (and including) a specified primary pandora instance. More... | |
| void | SetVolumeId (const pandora::Pandora *const pPandora, const unsigned int volumeId) |
| Set the volume id associated with a given pandora instance. More... | |
Private Attributes | |
| PandoraInstanceMap | m_primaryToDaughtersMap |
| The map from primary pandora instance to list of daughter pandora instances. More... | |
| PandoraRelationMap | m_daughterToPrimaryMap |
| The map from daughter pandora instance to primary pandora instance. More... | |
| PandoraToVolumeIdMap | m_pandoraToVolumeIdMap |
| The map from pandora instance to volume id. More... | |
Friends | |
| class | MultiPandoraApi |
MultiPandoraApiImpl class.
Definition at line 21 of file MultiPandoraApiImpl.h.
|
private |
Definition at line 108 of file MultiPandoraApiImpl.h.
|
private |
Definition at line 109 of file MultiPandoraApiImpl.h.
|
private |
|
private |
Destructor;.
Definition at line 94 of file MultiPandoraApiImpl.cc.
References DeletePandoraInstances(), and m_primaryToDaughtersMap.
|
private |
Add a pandora daughter instance, associated to a primary pandora instance.
| pPrimaryPandora | the address of the primary pandora instance |
| pDaughterPandora | the address of the daughter pandora instance |
Definition at line 113 of file MultiPandoraApiImpl.cc.
References m_daughterToPrimaryMap, and m_primaryToDaughtersMap.
Referenced by MultiPandoraApi::AddDaughterPandoraInstance().
|
private |
Declare a new primary pandora instance.
| pPrimaryPandora | the address of the primary pandora instance |
Definition at line 105 of file MultiPandoraApiImpl.cc.
References m_primaryToDaughtersMap.
Referenced by MultiPandoraApi::AddPrimaryPandoraInstance().
|
private |
Delete all pandora instances associated with (and including) a specified primary pandora instance.
| pPrimaryPandora | the address of the primary pandora instance |
Definition at line 128 of file MultiPandoraApiImpl.cc.
References GetDaughterPandoraInstanceList(), m_daughterToPrimaryMap, m_pandoraToVolumeIdMap, and m_primaryToDaughtersMap.
Referenced by MultiPandoraApi::DeletePandoraInstances(), and ~MultiPandoraApiImpl().
|
private |
Get the list of daughter pandora instances associated with a given primary pandora instance.
| pPrimaryPandora | the address of the primary pandora instance |
Definition at line 41 of file MultiPandoraApiImpl.cc.
References m_primaryToDaughtersMap.
Referenced by DeletePandoraInstances(), MultiPandoraApi::GetDaughterPandoraInstanceList(), and GetPandoraInstance().
|
private |
Get the address of the pandora instance associated with a given primary pandora instance and volume id number.
| pPrimaryPandora | the address of the primary pandora instance |
| volumeId | the volume identifier number |
Definition at line 21 of file MultiPandoraApiImpl.cc.
References GetDaughterPandoraInstanceList(), and GetVolumeId().
Referenced by MultiPandoraApi::GetPandoraInstance().
|
private |
Get the pandora instance map.
Definition at line 14 of file MultiPandoraApiImpl.cc.
References m_primaryToDaughtersMap.
Referenced by MultiPandoraApi::GetPandoraInstanceMap().
|
private |
Get the address of the primary pandora instance associated with a given daughter pandora instance.
| pDaughterPandora | the address of the daughter pandora instance |
Definition at line 53 of file MultiPandoraApiImpl.cc.
References m_daughterToPrimaryMap.
Referenced by MultiPandoraApi::GetPrimaryPandoraInstance().
|
private |
Get the volume id associated with a given pandora instance.
| pPandora | the address of the pandora instance |
Definition at line 65 of file MultiPandoraApiImpl.cc.
References m_pandoraToVolumeIdMap.
Referenced by GetPandoraInstance(), and MultiPandoraApi::GetVolumeId().
|
private |
Set the volume id associated with a given pandora instance.
| pPandora | the address of the pandora instance |
| volumeId | the volume id |
Definition at line 77 of file MultiPandoraApiImpl.cc.
References m_pandoraToVolumeIdMap.
Referenced by MultiPandoraApi::SetVolumeId().
|
friend |
Definition at line 115 of file MultiPandoraApiImpl.h.
|
private |
The map from daughter pandora instance to primary pandora instance.
Definition at line 112 of file MultiPandoraApiImpl.h.
Referenced by AddDaughterPandoraInstance(), DeletePandoraInstances(), and GetPrimaryPandoraInstance().
|
private |
The map from pandora instance to volume id.
Definition at line 113 of file MultiPandoraApiImpl.h.
Referenced by DeletePandoraInstances(), GetVolumeId(), and SetVolumeId().
|
private |
The map from primary pandora instance to list of daughter pandora instances.
Definition at line 111 of file MultiPandoraApiImpl.h.
Referenced by AddDaughterPandoraInstance(), AddPrimaryPandoraInstance(), DeletePandoraInstances(), GetDaughterPandoraInstanceList(), GetPandoraInstanceMap(), and ~MultiPandoraApiImpl().