File indexing completed on 2026-09-27 09:15:19
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef PANDORA_VERTEX_MANAGER_H
0009 #define PANDORA_VERTEX_MANAGER_H 1
0010
0011 #include "Managers/AlgorithmObjectManager.h"
0012
0013 #include "Pandora/ObjectCreation.h"
0014 #include "Pandora/PandoraInternal.h"
0015
0016 namespace pandora
0017 {
0018
0019
0020
0021
0022 class VertexManager : public AlgorithmObjectManager<Vertex>
0023 {
0024 public:
0025
0026
0027
0028
0029
0030 VertexManager(const Pandora *const pPandora);
0031
0032
0033
0034
0035 ~VertexManager();
0036
0037 private:
0038
0039
0040
0041
0042
0043
0044
0045 StatusCode Create(const object_creation::Vertex::Parameters ¶meters, const Vertex *&pVertex,
0046 const ObjectFactory<object_creation::Vertex::Parameters, object_creation::Vertex::Object> &factory);
0047
0048
0049
0050
0051
0052
0053
0054 StatusCode AlterMetadata(const Vertex *const pVertex, const object_creation::Vertex::Metadata &metadata) const;
0055
0056
0057
0058
0059
0060
0061
0062
0063 template <typename T>
0064 bool IsAvailable(const T *const pT) const;
0065
0066
0067
0068
0069
0070
0071
0072 template <typename T>
0073 void SetAvailability(const T *const pT, bool isAvailable) const;
0074
0075 friend class PandoraContentApiImpl;
0076 friend class PandoraImpl;
0077 };
0078
0079 }
0080
0081 #endif