src
DataFormats
SiStripCluster
interface
SiStripClustersSOABase.h
Go to the documentation of this file.
1
#ifndef DataFormats_SiStripCluster_interface_SiStripClustersSOABase_
2
#define DataFormats_SiStripCluster_interface_SiStripClustersSOABase_
3
4
#include "
DataFormats/SiStripCluster/interface/SiStripTypes.h
"
5
6
#include <cstdint>
7
#include <limits>
8
9
template
<
template
<
typename
>
class
T
>
10
class
SiStripClustersSOABase
{
11
public
:
12
//static constexpr uint32_t kClusterMaxStrips = 16;
13
14
SiStripClustersSOABase
() =
default
;
15
//explicit SiStripClustersSOABase(uint32_t maxClusters, uint32_t maxStripsPerCluster);
16
virtual
~SiStripClustersSOABase
() =
default
;
17
18
SiStripClustersSOABase
(
const
SiStripClustersSOABase
&) =
delete
;
19
SiStripClustersSOABase
&
operator=
(
const
SiStripClustersSOABase
&) =
delete
;
20
SiStripClustersSOABase
(
SiStripClustersSOABase
&&) =
default
;
21
SiStripClustersSOABase
&
operator=
(
SiStripClustersSOABase
&&) =
default
;
22
23
void
setNClusters
(uint32_t
nClusters
) {
nClusters_
=
nClusters
; }
24
uint32_t
nClusters
()
const
{
return
nClusters_
; }
25
26
void
setMaxClusterSize
(uint32_t
maxClusterSize
) {
maxClusterSize_
=
maxClusterSize
; }
27
uint32_t
maxClusterSize
()
const
{
return
maxClusterSize_
; }
28
29
const
auto
&
clusterIndex
()
const
{
return
clusterIndex_
; }
30
const
auto
&
clusterSize
()
const
{
return
clusterSize_
; }
31
const
auto
&
clusterADCs
()
const
{
return
clusterADCs_
; }
32
const
auto
&
clusterDetId
()
const
{
return
clusterDetId_
; }
33
const
auto
&
firstStrip
()
const
{
return
firstStrip_
; }
34
const
auto
&
trueCluster
()
const
{
return
trueCluster_
; }
35
const
auto
&
barycenter
()
const
{
return
barycenter_
; }
36
const
auto
&
charge
()
const
{
return
charge_
; }
37
38
auto
&
clusterIndex
() {
return
clusterIndex_
; }
39
auto
&
clusterSize
() {
return
clusterSize_
; }
40
auto
&
clusterADCs
() {
return
clusterADCs_
; }
41
auto
&
clusterDetId
() {
return
clusterDetId_
; }
42
auto
&
firstStrip
() {
return
firstStrip_
; }
43
auto
&
trueCluster
() {
return
trueCluster_
; }
44
auto
&
barycenter
() {
return
barycenter_
; }
45
auto
&
charge
() {
return
charge_
; }
46
47
protected
:
48
T<uint32_t[]>
clusterIndex_
;
49
T<uint32_t[]>
clusterSize_
;
50
T<uint8_t[]>
clusterADCs_
;
51
T<stripgpu::detId_t[]>
clusterDetId_
;
52
T<stripgpu::stripId_t[]>
firstStrip_
;
53
T<bool[]>
trueCluster_
;
54
T<float[]>
barycenter_
;
55
T<float[]>
charge_
;
56
uint32_t
nClusters_
;
57
uint32_t
maxClusterSize_
;
58
};
59
#endif
SiStripClustersSOABase::operator=
SiStripClustersSOABase & operator=(const SiStripClustersSOABase &)=delete
SiStripClustersSOABase::clusterSize
const auto & clusterSize() const
Definition:
SiStripClustersSOABase.h:30
SiStripClustersSOABase::SiStripClustersSOABase
SiStripClustersSOABase()=default
SiStripClustersSOABase::clusterADCs_
T< uint8_t[]> clusterADCs_
Definition:
SiStripClustersSOABase.h:50
SiStripClustersSOABase::clusterSize_
T< uint32_t[]> clusterSize_
Definition:
SiStripClustersSOABase.h:49
SiStripClustersSOABase::clusterDetId
auto & clusterDetId()
Definition:
SiStripClustersSOABase.h:41
SiStripClustersSOABase::charge_
T< float[]> charge_
Definition:
SiStripClustersSOABase.h:55
SiStripClustersSOABase::clusterDetId_
T< stripgpu::detId_t[]> clusterDetId_
Definition:
SiStripClustersSOABase.h:51
SiStripClustersSOABase::setMaxClusterSize
void setMaxClusterSize(uint32_t maxClusterSize)
Definition:
SiStripClustersSOABase.h:26
SiStripTypes.h
SiStripClustersSOABase::clusterIndex
const auto & clusterIndex() const
Definition:
SiStripClustersSOABase.h:29
SiStripClustersSOABase
Definition:
SiStripClustersSOABase.h:10
SiStripClustersSOABase::nClusters
uint32_t nClusters() const
Definition:
SiStripClustersSOABase.h:24
SiStripClustersSOABase::barycenter
const auto & barycenter() const
Definition:
SiStripClustersSOABase.h:35
SiStripClustersSOABase::firstStrip
const auto & firstStrip() const
Definition:
SiStripClustersSOABase.h:33
SiStripClustersSOABase::clusterADCs
auto & clusterADCs()
Definition:
SiStripClustersSOABase.h:40
SiStripClustersSOABase::nClusters_
uint32_t nClusters_
Definition:
SiStripClustersSOABase.h:56
SiStripClustersSOABase::setNClusters
void setNClusters(uint32_t nClusters)
Definition:
SiStripClustersSOABase.h:23
SiStripClustersSOABase::trueCluster
const auto & trueCluster() const
Definition:
SiStripClustersSOABase.h:34
SiStripClustersSOABase::charge
const auto & charge() const
Definition:
SiStripClustersSOABase.h:36
SiStripClustersSOABase::clusterADCs
const auto & clusterADCs() const
Definition:
SiStripClustersSOABase.h:31
SiStripClustersSOABase::clusterSize
auto & clusterSize()
Definition:
SiStripClustersSOABase.h:39
SiStripClustersSOABase::maxClusterSize
uint32_t maxClusterSize() const
Definition:
SiStripClustersSOABase.h:27
SiStripClustersSOABase::firstStrip
auto & firstStrip()
Definition:
SiStripClustersSOABase.h:42
SiStripClustersSOABase::barycenter_
T< float[]> barycenter_
Definition:
SiStripClustersSOABase.h:54
SiStripClustersSOABase::clusterIndex_
T< uint32_t[]> clusterIndex_
Definition:
SiStripClustersSOABase.h:48
SiStripClustersSOABase::~SiStripClustersSOABase
virtual ~SiStripClustersSOABase()=default
SiStripClustersSOABase::barycenter
auto & barycenter()
Definition:
SiStripClustersSOABase.h:44
SiStripClustersSOABase::maxClusterSize_
uint32_t maxClusterSize_
Definition:
SiStripClustersSOABase.h:57
SiStripClustersSOABase::clusterDetId
const auto & clusterDetId() const
Definition:
SiStripClustersSOABase.h:32
T
long double T
Definition:
Basic3DVectorLD.h:48
SiStripClustersSOABase::trueCluster_
T< bool[]> trueCluster_
Definition:
SiStripClustersSOABase.h:53
SiStripClustersSOABase::charge
auto & charge()
Definition:
SiStripClustersSOABase.h:45
SiStripClustersSOABase::clusterIndex
auto & clusterIndex()
Definition:
SiStripClustersSOABase.h:38
SiStripClustersSOABase::trueCluster
auto & trueCluster()
Definition:
SiStripClustersSOABase.h:43
SiStripClustersSOABase::firstStrip_
T< stripgpu::stripId_t[]> firstStrip_
Definition:
SiStripClustersSOABase.h:52
Generated for CMSSW Reference Manual by
1.8.14