ATLAS Offline Software
PLinks_v1.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 /*
3  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4  */
13 #ifndef DATAMODELTESTDATACOMMON_PLINKS_V1_H
14 #define DATAMODELTESTDATACOMMON_PLINKS_V1_H
15 
16 
19 #include "xAODCore/PackedLink.h"
20 #include "AthenaKernel/BaseInfo.h"
21 
22 
23 namespace DMTest {
24 
25 
32 class PLinks_v1
33  : public SG::AuxElement
34 {
35 private:
36  using plink_type = SG::PackedLink<CVec>;
37  using vlinks_type = std::vector<SG::PackedLink<CVec> >;
38 
39 
40 public:
41  // Get/set the single link.
42  ElementLink<CVec> plink() const;
43  void setPLink (const ElementLink<CVec>& l);
44 
45  // Get/set one element of the vector of links.
46  ElementLink<CVec> vlink (size_t i) const;
47  void setVLink (size_t i, const ElementLink<CVec>& l);
48 
49  // Get the vector of links, as a const range.
51  const_el_range vlinks() const;
52 
53  // Get the vector of links, as a non-const range.
55  el_range vlinks();
56 
57  // Set the vector of links.
58  void setVLinks (const std::vector<ElementLink<CVec> >& v);
59 };
60 
61 
62 } // namespace DMTest
63 
64 
66 
67 
68 #endif // not DATAMODELTESTDATACOMMON_PLINKS_V1_H
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:483
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:158
SG::ConstAccessor
Helper class to provide constant type-safe access to aux data.
Definition: ConstAccessor.h:55
CVec.h
Class used for testing xAOD data reading/writing.
lumiFormat.i
int i
Definition: lumiFormat.py:85
BaseInfo.h
Provide an interface for finding inheritance information at run time.
python.PyAthena.v
v
Definition: PyAthena.py:154
AuxElement.h
Base class for elements of a container that can have aux data.
DMTest
Definition: B.h:23