15#ifndef ALICEO2_ITSMFT_CLUSTERSHAPE_H_
16#define ALICEO2_ITSMFT_CLUSTERSHAPE_H_
40 ClusterShape(UInt_t, UInt_t,
const std::vector<UInt_t>&);
44 inline void SetNRows(UInt_t Nrows) { mNrows = Nrows; }
47 inline void SetNCols(UInt_t Ncols) { mNcols = Ncols; }
59 inline UInt_t
GetNRows()
const {
return mNrows; }
80 inline UInt_t
GetNCols()
const {
return mNcols; }
89 inline void GetShape(std::vector<UInt_t>&
v)
const {
v = mShape; }
103 return r * mNcols +
c;
108 static std::string
ShapeSting(
const std::vector<UInt_t>& shape)
110 std::stringstream out;
111 for (UInt_t
i = 0;
i < shape.size(); ++
i) {
113 if (
i < shape.size() - 1) {
123 for (Int_t
r = -1;
r < (Int_t)
v.mNrows; ++
r) {
124 for (UInt_t
c = 0;
c <
v.mNcols; ++
c) {
130 if (
c <
v.mNcols - 1) {
138 if (std::find(begin(
v.mShape),
end(
v.mShape),
index) !=
end(
v.mShape)) {
143 if (
c <
v.mNcols - 1) {
154 UInt_t ComputeCenter(UInt_t);
160 std::vector<UInt_t> mShape;
UInt_t RowColToIndex(UInt_t r, UInt_t c) const
UInt_t GetCenterIndex() const
UInt_t GetNFiredPixels() const
UInt_t GetValue(UInt_t index) const
friend std::ostream & operator<<(std::ostream &out, const ClusterShape &v)
UInt_t GetCenterR() const
void AddShapeValue(UInt_t pos)
void GetShape(std::vector< UInt_t > &v) const
Bool_t HasElement(UInt_t) const
void SetNCols(UInt_t Ncols)
void SetCenter(UInt_t r, UInt_t c)
UInt_t GetCenterC() const
static std::string ShapeSting(const std::vector< UInt_t > &shape)
Long64_t GetShapeID() const
std::string ShapeSting() const
void SetNRows(UInt_t Nrows)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...