Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:05:12

0001 #ifndef DataFormats_SiPixelDigi_interface_SiPixelErrorsSoA_h
0002 #define DataFormats_SiPixelDigi_interface_SiPixelErrorsSoA_h
0003 
0004 #include "DataFormats/SiPixelRawData/interface/SiPixelErrorCompact.h"
0005 #include "DataFormats/SiPixelRawData/interface/SiPixelFormatterErrors.h"
0006 
0007 #include <cstdint>
0008 #include <vector>
0009 
0010 class SiPixelErrorsSoA {
0011 public:
0012   SiPixelErrorsSoA() = default;
0013   explicit SiPixelErrorsSoA(size_t nErrors, const SiPixelErrorCompact *error, const SiPixelFormatterErrors *err)
0014       : error_(error, error + nErrors), formatterErrors_(err) {}
0015   ~SiPixelErrorsSoA() = default;
0016 
0017   auto size() const { return error_.size(); }
0018 
0019   const SiPixelFormatterErrors *formatterErrors() const { return formatterErrors_; }
0020 
0021   const SiPixelErrorCompact &error(size_t i) const { return error_[i]; }
0022 
0023   const std::vector<SiPixelErrorCompact> &errorVector() const { return error_; }
0024 
0025 private:
0026   std::vector<SiPixelErrorCompact> error_;
0027   const SiPixelFormatterErrors *formatterErrors_ = nullptr;
0028 };
0029 
0030 #endif