MultiPandoraApiImpl class.
More...
#include <MultiPandoraApiImpl.h>
|
typedef std::unordered_map
< const pandora::Pandora
*, const pandora::Pandora * > | PandoraRelationMap |
|
typedef std::unordered_map
< const pandora::Pandora
*, unsigned int > | PandoraToVolumeIdMap |
|
MultiPandoraApiImpl::MultiPandoraApiImpl |
( |
| ) |
|
|
private |
MultiPandoraApiImpl::~MultiPandoraApiImpl |
( |
| ) |
|
|
private |
Destructor;.
Definition at line 96 of file MultiPandoraApiImpl.cc.
101 for (
const auto &mapElement : pandoraInstanceMap)
void DeletePandoraInstances(const pandora::Pandora *const pPrimaryPandora)
Delete all pandora instances associated with (and including) a specified primary pandora instance...
std::unordered_map< const pandora::Pandora *, PandoraInstanceList > PandoraInstanceMap
PandoraInstanceMap m_primaryToDaughtersMap
The map from primary pandora instance to list of daughter pandora instances.
void MultiPandoraApiImpl::AddDaughterPandoraInstance |
( |
const pandora::Pandora *const |
pPrimaryPandora, |
|
|
const pandora::Pandora *const |
pDaughterPandora |
|
) |
| |
|
private |
Add a pandora daughter instance, associated to a primary pandora instance.
- Parameters
-
pPrimaryPandora | the address of the primary pandora instance |
pDaughterPandora | the address of the daughter pandora instance |
Definition at line 115 of file MultiPandoraApiImpl.cc.
120 throw pandora::StatusCodeException(pandora::STATUS_CODE_NOT_FOUND);
122 iter->second.push_back(pDaughterPandora);
124 if (!
m_daughterToPrimaryMap.insert(PandoraRelationMap::value_type(pDaughterPandora, pPrimaryPandora)).second)
125 throw pandora::StatusCodeException(pandora::STATUS_CODE_FAILURE);
PandoraRelationMap m_daughterToPrimaryMap
The map from daughter pandora instance to primary pandora instance.
PandoraInstanceMap m_primaryToDaughtersMap
The map from primary pandora instance to list of daughter pandora instances.
void MultiPandoraApiImpl::AddPrimaryPandoraInstance |
( |
const pandora::Pandora *const |
pPrimaryPandora | ) |
|
|
private |
Declare a new primary pandora instance.
- Parameters
-
pPrimaryPandora | the address of the primary pandora instance |
Definition at line 107 of file MultiPandoraApiImpl.cc.
110 throw pandora::StatusCodeException(pandora::STATUS_CODE_ALREADY_PRESENT);
std::vector< const pandora::Pandora * > PandoraInstanceList
PandoraInstanceMap m_primaryToDaughtersMap
The map from primary pandora instance to list of daughter pandora instances.
void MultiPandoraApiImpl::DeletePandoraInstances |
( |
const pandora::Pandora *const |
pPrimaryPandora | ) |
|
|
private |
Delete all pandora instances associated with (and including) a specified primary pandora instance.
- Parameters
-
pPrimaryPandora | the address of the primary pandora instance |
Definition at line 130 of file MultiPandoraApiImpl.cc.
138 catch (
const pandora::StatusCodeException &)
140 std::cout <<
"MultiPandoraApiImpl::DeletePandoraInstances - unable to find daughter instances associated with primary "
141 << pPrimaryPandora << std::endl;
144 pandoraInstanceList.push_back(pPrimaryPandora);
147 for (
const pandora::Pandora *
const pPandora : pandoraInstanceList)
PandoraToVolumeIdMap m_pandoraToVolumeIdMap
The map from pandora instance to volume id.
std::vector< const pandora::Pandora * > PandoraInstanceList
PandoraRelationMap m_daughterToPrimaryMap
The map from daughter pandora instance to primary 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...
PandoraInstanceMap m_primaryToDaughtersMap
The map from primary pandora instance to list of daughter pandora instances.
BEGIN_PROLOG could also be cout
const PandoraInstanceList & MultiPandoraApiImpl::GetDaughterPandoraInstanceList |
( |
const pandora::Pandora *const |
pPrimaryPandora | ) |
const |
|
private |
Get the list of daughter pandora instances associated with a given primary pandora instance.
- Parameters
-
pPrimaryPandora | the address of the primary pandora instance |
- Returns
- the daughter pandora instance list
Definition at line 43 of file MultiPandoraApiImpl.cc.
48 throw pandora::StatusCodeException(pandora::STATUS_CODE_NOT_FOUND);
PandoraInstanceMap m_primaryToDaughtersMap
The map from primary pandora instance to list of daughter pandora instances.
const pandora::Pandora * MultiPandoraApiImpl::GetPandoraInstance |
( |
const pandora::Pandora *const |
pPrimaryPandora, |
|
|
const unsigned int |
volumeId |
|
) |
| const |
|
private |
Get the address of the pandora instance associated with a given primary pandora instance and volume id number.
- Parameters
-
pPrimaryPandora | the address of the primary pandora instance |
volumeId | the volume identifier number |
- Returns
- the address of the pandora instance
Definition at line 21 of file MultiPandoraApiImpl.cc.
24 instanceList.push_back(pPrimaryPandora);
26 for (
const pandora::Pandora *
const pPandora : instanceList)
33 catch (
const pandora::StatusCodeException &)
38 throw pandora::StatusCodeException(pandora::STATUS_CODE_NOT_FOUND);
std::vector< const pandora::Pandora * > PandoraInstanceList
const PandoraInstanceList & GetDaughterPandoraInstanceList(const pandora::Pandora *const pPrimaryPandora) const
Get the list of daughter pandora instances associated with a given primary pandora instance...
unsigned int GetVolumeId(const pandora::Pandora *const pPandora) const
Get the volume id associated with a given pandora instance.
Get the pandora instance map.
- Returns
- the pandora instance map
Definition at line 14 of file MultiPandoraApiImpl.cc.
PandoraInstanceMap m_primaryToDaughtersMap
The map from primary pandora instance to list of daughter pandora instances.
const pandora::Pandora * MultiPandoraApiImpl::GetPrimaryPandoraInstance |
( |
const pandora::Pandora *const |
pDaughterPandora | ) |
const |
|
private |
Get the address of the primary pandora instance associated with a given daughter pandora instance.
- Parameters
-
pDaughterPandora | the address of the daughter pandora instance |
- Returns
- the address of the primary pandora instance
Definition at line 55 of file MultiPandoraApiImpl.cc.
60 throw pandora::StatusCodeException(pandora::STATUS_CODE_NOT_FOUND);
PandoraRelationMap m_daughterToPrimaryMap
The map from daughter pandora instance to primary pandora instance.
unsigned int MultiPandoraApiImpl::GetVolumeId |
( |
const pandora::Pandora *const |
pPandora | ) |
const |
|
private |
Get the volume id associated with a given pandora instance.
- Parameters
-
pPandora | the address of the pandora instance |
- Returns
- the volume id
Definition at line 67 of file MultiPandoraApiImpl.cc.
72 throw pandora::StatusCodeException(pandora::STATUS_CODE_NOT_FOUND);
PandoraToVolumeIdMap m_pandoraToVolumeIdMap
The map from pandora instance to volume id.
void MultiPandoraApiImpl::SetVolumeId |
( |
const pandora::Pandora *const |
pPandora, |
|
|
const unsigned int |
volumeId |
|
) |
| |
|
private |
Set the volume id associated with a given pandora instance.
- Parameters
-
pPandora | the address of the pandora instance |
volumeId | the volume id |
Definition at line 79 of file MultiPandoraApiImpl.cc.
82 throw pandora::StatusCodeException(pandora::STATUS_CODE_ALREADY_PRESENT);
85 throw pandora::StatusCodeException(pandora::STATUS_CODE_FAILURE);
PandoraToVolumeIdMap m_pandoraToVolumeIdMap
The map from pandora instance to volume id.
The map from daughter pandora instance to primary pandora instance.
Definition at line 112 of file MultiPandoraApiImpl.h.
The map from primary pandora instance to list of daughter pandora instances.
Definition at line 111 of file MultiPandoraApiImpl.h.
The documentation for this class was generated from the following files: