Warning, file /DD4hep/DDCore/include/DDSegmentation/CartesianGridYZ.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef DDSEGMENTATION_CARTESIANGRIDYZ_H
0012 #define DDSEGMENTATION_CARTESIANGRIDYZ_H
0013
0014 #include <DDSegmentation/CartesianGrid.h>
0015
0016 namespace dd4hep {
0017 namespace DDSegmentation {
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029 class CartesianGridYZ: public CartesianGrid {
0030 public:
0031
0032 CartesianGridYZ(const std::string& cellEncoding = "");
0033
0034 CartesianGridYZ(const BitFieldCoder* decoder);
0035
0036 virtual ~CartesianGridYZ();
0037
0038
0039 virtual Vector3D position(const CellID& cellID) const;
0040
0041 virtual CellID cellID(const Vector3D& localPosition, const Vector3D& globalPosition, const VolumeID& volumeID) const;
0042
0043 double gridSizeY() const {
0044 return _gridSizeY;
0045 }
0046
0047 double gridSizeZ() const {
0048 return _gridSizeZ;
0049 }
0050
0051 double offsetY() const {
0052 return _offsetY;
0053 }
0054
0055 double offsetZ() const {
0056 return _offsetZ;
0057 }
0058
0059 const std::string& fieldNameY() const {
0060 return _yId;
0061 }
0062
0063 const std::string& fieldNameZ() const {
0064 return _zId;
0065 }
0066
0067 void setGridSizeY(double cellSize) {
0068 _gridSizeY = cellSize;
0069 }
0070
0071 void setGridSizeZ(double cellSize) {
0072 _gridSizeZ = cellSize;
0073 }
0074
0075 void setOffsetY(double offset) {
0076 _offsetY = offset;
0077 }
0078
0079 void setOffsetZ(double offset) {
0080 _offsetZ = offset;
0081 }
0082
0083 void setFieldNameY(const std::string& fieldName) {
0084 _yId = fieldName;
0085 }
0086
0087 void setFieldNameZ(const std::string& fieldName) {
0088 _zId = fieldName;
0089 }
0090
0091
0092
0093
0094
0095
0096
0097
0098
0099 virtual std::vector<double> cellDimensions(const CellID& cellID) const;
0100
0101 protected:
0102
0103 double _gridSizeY;
0104
0105 double _offsetY;
0106
0107 double _gridSizeZ;
0108
0109 double _offsetZ;
0110
0111 std::string _yId;
0112
0113 std::string _zId;
0114 };
0115
0116 }
0117 }
0118 #endif