diff --git a/DDSegmentation/include/DDSegmentation/WaferGridXY.h b/DDSegmentation/include/DDSegmentation/WaferGridXY.h index 0bbd1dd8f86f24590a0bd0036075dee12ae702cb..8dd758b4e282fc4ec636d67f73b367ae08cc02ce 100644 --- a/DDSegmentation/include/DDSegmentation/WaferGridXY.h +++ b/DDSegmentation/include/DDSegmentation/WaferGridXY.h @@ -10,7 +10,7 @@ #include "DDSegmentation/CartesianGrid.h" -#define MAX_LAYERS 100 +#define MAX_GROUPS 100 #define MAX_WAFERS 100 namespace DD4hep { @@ -43,13 +43,13 @@ public: double offsetY() const { return _offsetY; } - /// access the coordinate waferOffset for inLayer in X - double waferOffsetX(int inLayer, int inWafer) const { - return _waferOffsetX[inLayer][inWafer]; + /// access the coordinate waferOffset for inGroup in X + double waferOffsetX(int inGroup, int inWafer) const { + return _waferOffsetX[inGroup][inWafer]; } - /// access the coordinate waferOffset for inLayer in Y - double waferOffsetY(int inLayer, int inWafer) const { - return _waferOffsetY[inLayer][inWafer]; + /// access the coordinate waferOffset for inGroup in Y + double waferOffsetY(int inGroup, int inWafer) const { + return _waferOffsetY[inGroup][inWafer]; } /// access the field name used for X @@ -77,12 +77,12 @@ public: _offsetY = offset; } /// set the coordinate waferOffset for inlayer in X - void setWaferOffsetX(int inLayer,int inWafer, double offset) { - _waferOffsetX[inLayer][inWafer] = offset; + void setWaferOffsetX(int inGroup,int inWafer, double offset) { + _waferOffsetX[inGroup][inWafer] = offset; } - /// set the coordinate waferOffset for inLayer in Y - void setWaferOffsetY(int inLayer,int inWafer, double offset) { - _waferOffsetY[inLayer][inWafer] = offset; + /// set the coordinate waferOffset for inGroup in Y + void setWaferOffsetY(int inGroup,int inWafer, double offset) { + _waferOffsetY[inGroup][inWafer] = offset; } /// set the field name used for X @@ -113,16 +113,16 @@ protected: double _gridSizeY; /// the coordinate offset in Y double _offsetY; - /// list of wafer x offset for each layer - double _waferOffsetX[MAX_LAYERS][MAX_WAFERS]; - /// list of wafer y offset for each layer - double _waferOffsetY[MAX_LAYERS][MAX_WAFERS]; + /// list of wafer x offset for each group + double _waferOffsetX[MAX_GROUPS][MAX_WAFERS]; + /// list of wafer y offset for each group + double _waferOffsetY[MAX_GROUPS][MAX_WAFERS]; /// the field name used for X std::string _xId; /// the field name used for Y std::string _yId; - /// encoding field used for the layer - std::string _identifierLayer; + /// encoding field used for the Magic Wafer group + std::string _identifierMGWaferGroup; /// encoding field used for the wafer std::string _identifierWafer; }; diff --git a/DDSegmentation/src/WaferGridXY.cpp b/DDSegmentation/src/WaferGridXY.cpp index 46e592490fcf1759ab058405cb208aafd73ebbfd..d11adf21fe83eff480a19d56d334215a4fec325b 100644 --- a/DDSegmentation/src/WaferGridXY.cpp +++ b/DDSegmentation/src/WaferGridXY.cpp @@ -24,7 +24,7 @@ WaferGridXY::WaferGridXY(const std::string& cellEncoding) : registerParameter("offset_y", "Cell offset in Y", _offsetY, 0., SegmentationParameter::LengthUnit, true); registerIdentifier("identifier_x", "Cell ID identifier for X", _xId, "x"); registerIdentifier("identifier_y", "Cell ID identifier for Y", _yId, "y"); - registerParameter("identifier_layer", "Cell encoding identifier for layer", _identifierLayer, std::string("layer"), + registerParameter("identifier_groupMGWafer", "Cell encoding identifier for Magic Wafer group", _identifierMGWaferGroup, std::string("layer"), SegmentationParameter::NoUnit, true); registerParameter("identifier_wafer", "Cell encoding identifier for wafer", _identifierWafer, std::string("wafer"), SegmentationParameter::NoUnit, true); @@ -38,25 +38,25 @@ WaferGridXY::~WaferGridXY() { /// determine the position based on the cell ID Vector3D WaferGridXY::position(const CellID& cID) const { _decoder->setValue(cID); - unsigned int _layerIndex; + unsigned int _groupMGWaferIndex; unsigned int _waferIndex; Vector3D cellPosition; - _layerIndex = (*_decoder)[_identifierLayer]; + _groupMGWaferIndex = (*_decoder)[_identifierMGWaferGroup]; _waferIndex = (*_decoder)[_identifierWafer]; - if ( _waferOffsetX[_layerIndex][_waferIndex] > 0 || _waferOffsetX[_layerIndex][_waferIndex] < 0 ) + if ( _waferOffsetX[_groupMGWaferIndex][_waferIndex] > 0 || _waferOffsetX[_groupMGWaferIndex][_waferIndex] < 0 ) { - cellPosition.X = binToPosition((*_decoder)[_xId].value(), _gridSizeX, _offsetX+_waferOffsetX[_layerIndex][_waferIndex]); + cellPosition.X = binToPosition((*_decoder)[_xId].value(), _gridSizeX, _offsetX+_waferOffsetX[_groupMGWaferIndex][_waferIndex]); } else { cellPosition.X = binToPosition((*_decoder)[_xId].value(), _gridSizeX, _offsetX); } - if ( _waferOffsetY[_layerIndex][_waferIndex] > 0 || _waferOffsetY[_layerIndex][_waferIndex] < 0 ) + if ( _waferOffsetY[_groupMGWaferIndex][_waferIndex] > 0 || _waferOffsetY[_groupMGWaferIndex][_waferIndex] < 0 ) { - cellPosition.Y = binToPosition((*_decoder)[_yId].value(), _gridSizeY, _offsetY+_waferOffsetY[_layerIndex][_waferIndex]); + cellPosition.Y = binToPosition((*_decoder)[_yId].value(), _gridSizeY, _offsetY+_waferOffsetY[_groupMGWaferIndex][_waferIndex]); } else { @@ -69,24 +69,24 @@ Vector3D WaferGridXY::position(const CellID& cID) const { /// determine the cell ID based on the position CellID WaferGridXY::cellID(const Vector3D& localPosition, const Vector3D& /* globalPosition */, const VolumeID& vID) const { _decoder->setValue(vID); - unsigned int _layerIndex; + unsigned int _groupMGWaferIndex; unsigned int _waferIndex; - _layerIndex = (*_decoder)[_identifierLayer]; + _groupMGWaferIndex = (*_decoder)[_identifierMGWaferGroup]; _waferIndex = (*_decoder)[_identifierWafer]; - if ( _waferOffsetX[_layerIndex][_waferIndex] > 0 || _waferOffsetX[_layerIndex][_waferIndex] < 0 ) + if ( _waferOffsetX[_groupMGWaferIndex][_waferIndex] > 0 || _waferOffsetX[_groupMGWaferIndex][_waferIndex] < 0 ) { - (*_decoder)[_xId] = positionToBin(localPosition.X, _gridSizeX, _offsetX+_waferOffsetX[_layerIndex][_waferIndex]); + (*_decoder)[_xId] = positionToBin(localPosition.X, _gridSizeX, _offsetX+_waferOffsetX[_groupMGWaferIndex][_waferIndex]); } else { (*_decoder)[_xId] = positionToBin(localPosition.X, _gridSizeX, _offsetX); } - if ( _waferOffsetY[_layerIndex][_waferIndex] > 0 || _waferOffsetY[_layerIndex][_waferIndex] < 0) + if ( _waferOffsetY[_groupMGWaferIndex][_waferIndex] > 0 || _waferOffsetY[_groupMGWaferIndex][_waferIndex] < 0) { - (*_decoder)[_yId] = positionToBin(localPosition.Y, _gridSizeY, _offsetY+_waferOffsetY[_layerIndex][_waferIndex]); + (*_decoder)[_yId] = positionToBin(localPosition.Y, _gridSizeY, _offsetY+_waferOffsetY[_groupMGWaferIndex][_waferIndex]); } else {