23#ifndef REST_TRestRingsMask
24#define REST_TRestRingsMask
26#include <TRestPatternMask.h>
51 virtual Int_t
GetRegion(Double_t& x, Double_t& y)
override;
66 void SetRadii(
const std::vector<Double_t>& innerR,
const std::vector<Double_t>& outterR) {
67 if (innerR.size() != outterR.size()) {
68 RESTWarning <<
"TRestRingsMask::SetRadii. Vectors have not the same size!" <<
RESTendl;
72 for (
unsigned int n = 0; n < innerR.size(); n++) {
73 std::pair<Double_t, Double_t> p(innerR[n], outterR[n]);
An abstract class used to encapsulate different mask pattern class definitions.
A class used to define a rings mask pattern.
void GenerateRings()
It will initialize the variable fRingsRadii using the number of radius, initial radius,...
virtual Int_t GetRegion(Double_t &x, Double_t &y) override
It returns a number identifying the region where the particle with coordinates (x,...
Double_t GetNumberOfRings()
It returns the number of rings to be generated.
void Initialize() override
Function to initialize input/output event members and define the section name.
Double_t fRingsGap
The periodity of the rings structure in mm. Optionally used to initialize the rings.
void SetRadii(const std::vector< Double_t > &innerR, const std::vector< Double_t > &outterR)
It allows to redefine the inner and outter rings radii directly.
void PrintMask() override
Prints on screen the information about the metadata members of TRestRingsMask, including common patte...
Double_t GetRingsGap()
It returns the gap/periodicity of the rings in mm.
TRestRingsMask()
Default constructor.
Double_t fRingsThickness
The width of the rings structure in mm. Optionally used to initialize the rings.
Double_t GetRingsThickness()
It returns the thickness of the rings in mm.
Double_t GetInitialRadius()
It returns the most inner ring radius.
void PrintMetadata() override
Prints on screen the information about the metadata members from this class.
~TRestRingsMask()
Default destructor.
Int_t fNRings
The number of rings inside the structure.
void PrintMaskMembers() override
Prints on screen the information about the metadata members of TRestRingsMask, excluding common metad...
Double_t fInitialRadius
The initial radius for the inner ring.
std::vector< std::pair< Double_t, Double_t > > fRingsRadii
A pair containing inner/outter radius for each ring.
void PrintRings()
Prints on screen the information about the metadata members of TRestRingsMask, excluding common metad...