![]() |
Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Surfaces/RectangleBounds.hpp>
Inheritance diagram for Acts::RectangleBounds:
Collaboration diagram for Acts::RectangleBounds:Public Types | |
| enum | BoundValues : int { eMinX = 0, eMinY = 1, eMaxX = 2, eMaxY = 3, eSize = 4 } |
Public Member Functions | |
| RectangleBounds ()=delete | |
| RectangleBounds (double halfX, double halfY) noexcept(false) | |
| m_max ({halfX, halfY}) | |
| RectangleBounds (const std::array< double, eSize > &values) noexcept(false) | |
| m_max ({values[eMaxX], values[eMaxY]}) | |
| RectangleBounds (const Vector2 &min, const Vector2 &max) noexcept(false) | |
| ~RectangleBounds () override=default | |
| BoundsType | type () const final |
| std::vector< double > | values () const final |
| bool | inside (const Vector2 &lposition, const BoundaryCheck &bcheck) const final |
| std::vector< Vector2 > | vertices (unsigned int lseg=1) const final |
| const RectangleBounds & | boundingBox () const final |
| std::ostream & | toStream (std::ostream &sl) const final |
| double | get (BoundValues bValue) const |
| double | halfLengthX () const |
| Access to the half length in X. | |
| double | halfLengthY () const |
| Access to the half length in Y. | |
| const Vector2 & | min () const |
| const Vector2 & | max () const |
Private Member Functions | |
| void | checkConsistency () noexcept(false) |
Private Attributes | |
| Vector2 | m_min |
| Vector2 | m_max |
Bounds for a rectangular, planar surface - it can be used to for rectangles that are symmetrically centered around (0./0.) and for generic shifted rectangles
Definition at line 30 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 30 of file RectangleBounds.hpp
| enum Acts::RectangleBounds::BoundValues : int |
Definition at line 32 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 32 of file RectangleBounds.hpp
|
delete |
Constructor with halflength in x and y - symmetric
| halfX | halflength in X |
| halfY | halflength in Y |
Definition at line 46 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 46 of file RectangleBounds.hpp
Constructor - from fixed size array - generic
| values | The parameter values |
Definition at line 54 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 54 of file RectangleBounds.hpp
References eMinX, eMinY, and values().
Here is the call graph for this function:Constructor - from min/max - generic
| min | The left bottom corner |
| max | The right top corning |
Definition at line 64 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 64 of file RectangleBounds.hpp
References checkConsistency().
Here is the call graph for this function:
|
overridedefault |
|
finalvirtual |
Bounding box parameters
Implements Acts::PlanarBounds.
Definition at line 25 of file RectangleBounds.cpp.
View newest version in sPHENIX GitHub at line 25 of file RectangleBounds.cpp
|
inlineprivatenoexcept |
Check the input values for consistency, will throw a logic_exception if consistency is not given
Definition at line 170 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 170 of file RectangleBounds.hpp
References eMaxX, eMaxY, eMinX, and eMinY.
Referenced by RectangleBounds().
Here is the caller graph for this function:
|
inline |
Access to the bound values
| bValue | the class nested enum for the array access |
Definition at line 154 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 154 of file RectangleBounds.hpp
References assert, eMaxX, eMaxY, eMinX, eMinY, m_max, and m_min.
Referenced by Acts::adjustBinUtility(), Acts::MappingMaterialDecorator::binnedSurfaceMaterial(), and Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
inline |
Access to the half length in X.
Definition at line 142 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 142 of file RectangleBounds.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and CylinderGeomMicromegas::find_strip_from_local_coords().
Here is the caller graph for this function:
|
inline |
Access to the half length in Y.
Definition at line 146 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 146 of file RectangleBounds.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
finalvirtual |
Inside check for the bounds object driven by the boundary check directive Each Bounds has a method inside, which checks if a LocalPosition is inside the bounds Inside can be called without/with tolerances.
| lposition | Local position (assumed to be in right surface frame) |
| bcheck | boundary check directive |
Implements Acts::SurfaceBounds.
Definition at line 14 of file RectangleBounds.cpp.
View newest version in sPHENIX GitHub at line 14 of file RectangleBounds.cpp
References Acts::BoundaryCheck::isInside(), m_max, and m_min.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 47 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 47 of file RectangleBounds.hpp
References Acts::Test::halfX, and Acts::Test::halfY.
Definition at line 56 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 56 of file RectangleBounds.hpp
References eMaxX, eMaxY, and values().
Here is the call graph for this function:
|
inline |
Get the max vertex defining the bounds
Definition at line 138 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 138 of file RectangleBounds.hpp
References m_max.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
inline |
Get the min vertex defining the bounds
Definition at line 134 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 134 of file RectangleBounds.hpp
References m_min.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
finalvirtual |
Output Method for std::ostream
| sl | is the ostream for the dump |
Implements Acts::SurfaceBounds.
Definition at line 30 of file RectangleBounds.cpp.
View newest version in sPHENIX GitHub at line 30 of file RectangleBounds.cpp
References Acts::UnitConstants::min.
|
inlinefinalvirtual |
Return the bounds type - for persistency optimization
Implements Acts::SurfaceBounds.
Definition at line 130 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 130 of file RectangleBounds.hpp
References Acts::SurfaceBounds::eRectangle.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
inlinefinalvirtual |
Access method for bound values, this is a dynamically sized vector containing the parameters needed to describe these bounds
Implements Acts::SurfaceBounds.
Definition at line 150 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 150 of file RectangleBounds.hpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), m_max(), and RectangleBounds().
Here is the caller graph for this function:
|
finalvirtual |
Return the vertices
| lseg | the number of segments used to approximate and eventually curved line |
Implements Acts::PlanarBounds.
Definition at line 19 of file RectangleBounds.cpp.
View newest version in sPHENIX GitHub at line 19 of file RectangleBounds.cpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::Test::dumpVertices().
Here is the caller graph for this function:
|
private |
Definition at line 123 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 123 of file RectangleBounds.hpp
Referenced by get(), halfLengthX(), halfLengthY(), inside(), max(), and values().
|
private |
Definition at line 122 of file RectangleBounds.hpp.
View newest version in sPHENIX GitHub at line 122 of file RectangleBounds.hpp
Referenced by get(), halfLengthX(), halfLengthY(), inside(), min(), and values().