CMS 3D CMS Logo

ColumnValues.h
Go to the documentation of this file.
1 #ifndef FWCore_SOA_ColumnValues_h
2 #define FWCore_SOA_ColumnValues_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/SOA
6 // Class : ColumnValues
7 //
15 //
16 // Original Author: Chris Jones
17 // Created: Thu, 24 Aug 2017 18:13:38 GMT
18 //
19 
20 // system include files
21 
22 // user include files
23 
24 // forward declarations
25 #include <cstddef>
26 namespace edm {
27  namespace soa {
28 
29  template <typename T>
30  class ColumnValues {
31  public:
32  ColumnValues(T const* iBegin, size_t iSize) : m_begin(iBegin), m_end(iBegin + iSize) {}
33 
34  T const* begin() const { return m_begin; }
35  T const* end() const { return m_end; }
36 
37  private:
38  T const* m_begin = nullptr;
39  T const* m_end = nullptr;
40  };
41 
42  template <typename T>
44  public:
45  MutableColumnValues(T* iBegin, size_t iSize) : m_begin(iBegin), m_end(iBegin + iSize) {}
46 
47  T* begin() const { return m_begin; }
48  T* end() const { return m_end; }
49 
50  private:
51  T* m_begin = nullptr;
52  T* m_end = nullptr;
53  };
54 
55  } // namespace soa
56 } // namespace edm
57 
58 #endif
edm::soa::MutableColumnValues::m_end
T * m_end
Definition: ColumnValues.h:52
edm::soa::ColumnValues::m_begin
T const * m_begin
Definition: ColumnValues.h:38
edm
HLT enums.
Definition: AlignableModifier.h:19
gpuVertexFinder::soa
ZVertexSoA * soa
Definition: gpuVertexFinderImpl.h:24
edm::soa::MutableColumnValues
Definition: ColumnValues.h:43
edm::soa::MutableColumnValues::m_begin
T * m_begin
Definition: ColumnValues.h:51
edm::soa::MutableColumnValues::begin
T * begin() const
Definition: ColumnValues.h:47
edm::soa::MutableColumnValues::end
T * end() const
Definition: ColumnValues.h:48
edm::soa::ColumnValues::m_end
T const * m_end
Definition: ColumnValues.h:39
edm::soa::ColumnValues::end
T const * end() const
Definition: ColumnValues.h:35
edm::soa::MutableColumnValues::MutableColumnValues
MutableColumnValues(T *iBegin, size_t iSize)
Definition: ColumnValues.h:45
edm::soa::ColumnValues
Definition: ColumnValues.h:30
T
long double T
Definition: Basic3DVectorLD.h:48
edm::soa::ColumnValues::ColumnValues
ColumnValues(T const *iBegin, size_t iSize)
Definition: ColumnValues.h:32
edm::soa::ColumnValues::begin
T const * begin() const
Definition: ColumnValues.h:34