![]() |
ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/master/Core/include/Acts/Utilities/BinningData.hpp>
Collaboration diagram for Acts::BinningData:Public Member Functions | |
| BinningData (BinningValue bValue, float bMin, float bMax) | |
| m_totalBins (1) | |
| m_totalBoundaries (std::vector< float >()) | |
| m_functionPtr | option (bOption) |
| m_functionPtr | binvalue (bValue) |
| m_functionPtr | min (bMin) |
| m_functionPtr | max (bMax) |
| m_functionPtr | step ((bMax-bMin)/bBins) |
| m_functionPtr | zdim (bBins==1?true:false) |
| m_functionPtr | subBinningData (std::move(sBinData)) |
| m_functionPtr | subBinningAdditive (sBinAdditive) |
| m_functionPtr | m_bins (bBins) |
| m_functionPtr | m_boundaries (std::vector< float >()) |
| m_functionPtr | m_totalBins (bBins) |
| m_functionPtr | m_totalBoundaries (std::vector< float >()) |
| m_functionPtr | m_functionPtr (nullptr) |
| BinningData (BinningOption bOption, BinningValue bValue, const std::vector< float > &bBoundaries, std::unique_ptr< const BinningData > sBinData=nullptr) | |
| BinningData (const BinningData &bdata) | |
| BinningData & | operator= (const BinningData &bdata) |
| ~BinningData ()=default | |
| Destructor. | |
| size_t | bins () const |
| Return the number of bins - including sub bins. | |
| bool | decrement (size_t &bin) const |
| bool | increment (size_t &bin) const |
| const std::vector< float > & | boundaries () const |
| float | value (const Vector2D &lposition) const |
| float | value (const Vector3D &position) const |
| float | center (size_t bin) const |
| bool | inside (const Vector3D &position) const |
| bool | inside (const Vector2D &lposition) const |
| size_t | searchLocal (const Vector2D &lposition) const |
| size_t | searchGlobal (const Vector3D &position) const |
| size_t | search (float value) const |
| size_t | searchWithSubStructure (float value) const |
| int | nextDirection (const Vector3D &position, const Vector3D &dir) const |
| float | centerValue (size_t bin) const |
| std::vector< size_t > | neighbourRange (size_t bin) const |
Public Attributes | |
| BinningType | type |
| binning type: equidistant, arbitrary | |
| BinningOption | option |
| binning option: open, closed | |
| BinningValue | binvalue |
| binning value: binX, binY, binZ, binR ... | |
| float | min |
| minimum value | |
| float | max |
| maximum value | |
| float | step |
| binning step | |
| bool | zdim |
| zero dimensional binning : direct access | |
| std::unique_ptr< const BinningData > | subBinningData |
| sub structure: describe some sub binning | |
| bool | subBinningAdditive |
| sub structure: additive or multipicative | |
| m_functionPtr | searchEquidistantWithBoundary |
Private Member Functions | |
| void | checkSubStructure () |
| function pointer | |
Static Private Member Functions | |
| static size_t | searchEquidistantWithBoundary (float value, const BinningData &bData) |
| static size_t | searchInVectorWithBoundary (float value, const BinningData &bData) |
| static size_t | binarySearchWithBoundary (float value, const BinningData &bData) |
Private Attributes | |
| size_t | m_bins |
| number of bins | |
| std::vector< float > | m_boundaries |
| vector of holding the bin boundaries | |
| size_t | m_totalBins |
| including potential substructure | |
| std::vector< float > | m_totalBoundaries |
| including potential substructure | |
| size_t(* | m_functionPtr )(float, const BinningData &) |
This class holds all the data necessary for the bin calculation
phi has a very particular behaviour:
structure is equidistant additive : sub structure replaces one bin (and one bin only)
Definition at line 40 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 40 of file BinningData.hpp
|
inline |
Constructor for 0D binning
| bValue | is the binning value: binX, binY, etc. |
| bMin | is the minum value |
| bMax | is the maxmimum value |
Definition at line 60 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 60 of file BinningData.hpp
|
inline |
Constructor for equidistant binning
| bOption | is the binning option : open / closed |
| bValue | is the binning value : binX, binY, etc. |
| bBoundaries | are the bin boundaries |
| sBinData | is (optional) sub structure |
Definition at line 122 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 122 of file BinningData.hpp
References binarySearchWithBoundary(), checkSubStructure(), m_bins, m_boundaries, m_functionPtr, max, min, searchInVectorWithBoundary(), and throw_assert.
Here is the call graph for this function:
|
inline |
Copy constructor
| bdata | is the source object |
Definition at line 153 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 153 of file BinningData.hpp
References binarySearchWithBoundary(), Acts::equidistant, m_bins, m_functionPtr, searchEquidistantWithBoundary, searchInVectorWithBoundary(), subBinningData, and type.
Here is the call graph for this function:
|
default |
Destructor.
|
inlinestaticprivate |
Definition at line 560 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 560 of file BinningData.hpp
References Acts::closed, m_bins, m_boundaries, max, and option.
Referenced by BinningData(), and operator=().
Here is the caller graph for this function:
|
inline |
Return the number of bins - including sub bins.
Definition at line 219 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 219 of file BinningData.hpp
References m_totalBins.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:| m_functionPtr Acts::BinningData::binvalue | ( | bValue | ) |
|
inline |
Return the boundaries - including sub boundaries
Definition at line 243 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 243 of file BinningData.hpp
References m_boundaries, m_totalBoundaries, and subBinningData.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and center().
Here is the caller graph for this function:
|
inline |
Get the center value of a bin
| bin | is the bin for which the center value is requested |
Definition at line 298 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 298 of file BinningData.hpp
References bin, boundaries(), and value().
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 |
access to the center value this uses the bin boundary vector, it also works with sub structure
| bin | is the bin for which the value is requested, if bin > nbins it is set to max |
Definition at line 422 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 422 of file BinningData.hpp
References bin, m_boundaries, max, min, and zdim.
|
inlineprivate |
function pointer
helper method to set the sub structure
Definition at line 463 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 463 of file BinningData.hpp
References kdfinder::abs(), e, m_bins, m_boundaries, m_totalBins, m_totalBoundaries, min, offset, step, subBinningAdditive, and subBinningData.
Referenced by BinningData(), and m_functionPtr().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Decrement the bin
| bin | is the bin to be decremented |
Definition at line 225 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 225 of file BinningData.hpp
References bin, m_bins, Acts::open, and option.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and neighbourRange().
Here is the caller graph for this function:
|
inline |
Increment the bin
| bin | the bin to be incremented |
Definition at line 235 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 235 of file BinningData.hpp
References bin, m_bins, Acts::open, and option.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and neighbourRange().
Here is the caller graph for this function:
|
inline |
Check if bin is inside from Vector3D
| position | is the search position in global coordinated |
Definition at line 310 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 310 of file BinningData.hpp
References Acts::closed, max, min, option, and value().
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 |
Check if bin is inside from Vector2D
| lposition | is the search position in global coordinated |
Definition at line 326 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 326 of file BinningData.hpp
References Acts::closed, max, min, option, and value().
Here is the call graph for this function:| m_functionPtr Acts::BinningData::m_bins | ( | bBins | ) |
| m_functionPtr Acts::BinningData::m_boundaries | ( | std::vector< float > | () | ) |
|
inline |
Definition at line 104 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 104 of file BinningData.hpp
References checkSubStructure(), m_bins, m_boundaries, m_functionPtr, min, searchEquidistantWithBoundary, and step.
Here is the call graph for this function:| Acts::BinningData::m_totalBins | ( | 1 | ) |
| m_functionPtr Acts::BinningData::m_totalBins | ( | bBins | ) |
| Acts::BinningData::m_totalBoundaries | ( | std::vector< float > | () | ) |
| m_functionPtr Acts::BinningData::m_totalBoundaries | ( | std::vector< float > | () | ) |
| m_functionPtr Acts::BinningData::max | ( | bMax | ) |
| m_functionPtr Acts::BinningData::min | ( | bMin | ) |
|
inline |
access to lower/higher bins
takes a bin entry and returns the lower/higher bound respecting open/closed
Definition at line 436 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 436 of file BinningData.hpp
References bin, decrement(), and increment().
Here is the call graph for this function:
|
inline |
Layer next direction is needed
| position | is the start search position |
| dir | is the direction |
Definition at line 405 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 405 of file BinningData.hpp
Here is the call graph for this function:
|
inline |
Assignment operator
| bdata | is the source object |
Definition at line 186 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 186 of file BinningData.hpp
References binarySearchWithBoundary(), binvalue, Acts::equidistant, m_bins, m_boundaries, m_functionPtr, m_totalBins, m_totalBoundaries, max, min, option, searchEquidistantWithBoundary, searchInVectorWithBoundary(), step, subBinningAdditive, subBinningData, type, and zdim.
Here is the call graph for this function:| m_functionPtr Acts::BinningData::option | ( | bOption | ) |
|
inline |
Generic search - forwards to correct function pointer
| value | is the searchvalue as float |
Definition at line 366 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 366 of file BinningData.hpp
References m_functionPtr, searchWithSubStructure(), subBinningData, value(), and zdim.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), searchGlobal(), and searchLocal().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestaticprivate |
Definition at line 514 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 514 of file BinningData.hpp
References bin, Acts::closed, m_bins, max, min, Acts::open, option, and step.
|
inline |
Generic search from a 3D position – corresponds to global coordinate schema
| position | is the search position in global coordinated |
Definition at line 354 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 354 of file BinningData.hpp
References search(), value(), and zdim.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestaticprivate |
Definition at line 537 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 537 of file BinningData.hpp
References bin, Acts::closed, m_bins, m_boundaries, max, option, and value().
Referenced by BinningData(), and operator=().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Generic search from a 2D position – corresponds to local coordinate schema
| lposition | is the search position in local coordinated |
Definition at line 342 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 342 of file BinningData.hpp
References search(), value(), and zdim.
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 |
Generic search with sub structure
| value | is the searchvalue as float |
Definition at line 381 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 381 of file BinningData.hpp
References subBinningAdditive, subBinningData, and value().
Referenced by search().
Here is the call graph for this function:
Here is the caller graph for this function:| m_functionPtr Acts::BinningData::step | ( | (bMax-bMin)/ | bBins | ) |
| m_functionPtr Acts::BinningData::subBinningAdditive | ( | sBinAdditive | ) |
| m_functionPtr Acts::BinningData::subBinningData | ( | std:: | movesBinData | ) |
|
inline |
Take the right float value
| lposition | assumes the correct local position expression |
Definition at line 255 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 255 of file BinningData.hpp
References Acts::binH, Acts::binPhi, Acts::binR, Acts::binRPhi, binvalue, and Acts::binX.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), center(), inside(), nextDirection(), search(), searchGlobal(), searchInVectorWithBoundary(), searchLocal(), and searchWithSubStructure().
Here is the caller graph for this function:
|
inline |
Take the right float value
| position | is the global position |
Definition at line 272 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 272 of file BinningData.hpp
References Acts::binEta, Acts::binH, Acts::binR, Acts::binRPhi, binvalue, Acts::VectorHelpers::eta(), Acts::VectorHelpers::perp(), Acts::VectorHelpers::phi(), and phi.
Here is the call graph for this function:| m_functionPtr Acts::BinningData::zdim | ( | bBins | = = 1 ? true : false | ) |
| BinningValue Acts::BinningData::binvalue |
binning value: binX, binY, binZ, binR ...
Definition at line 44 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 44 of file BinningData.hpp
Referenced by operator=(), and value().
|
private |
number of bins
Definition at line 455 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 455 of file BinningData.hpp
Referenced by binarySearchWithBoundary(), BinningData(), checkSubStructure(), decrement(), increment(), m_functionPtr(), operator=(), searchEquidistantWithBoundary(), and searchInVectorWithBoundary().
|
private |
vector of holding the bin boundaries
Definition at line 456 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 456 of file BinningData.hpp
Referenced by binarySearchWithBoundary(), BinningData(), boundaries(), centerValue(), checkSubStructure(), m_functionPtr(), operator=(), and searchInVectorWithBoundary().
|
private |
Definition at line 460 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 460 of file BinningData.hpp
Referenced by BinningData(), m_functionPtr(), operator=(), and search().
|
private |
including potential substructure
Definition at line 457 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 457 of file BinningData.hpp
Referenced by bins(), checkSubStructure(), and operator=().
|
private |
including potential substructure
Definition at line 458 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 458 of file BinningData.hpp
Referenced by boundaries(), checkSubStructure(), and operator=().
| float Acts::BinningData::max |
maximum value
Definition at line 46 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 46 of file BinningData.hpp
Referenced by binarySearchWithBoundary(), BinningData(), centerValue(), inside(), operator=(), searchEquidistantWithBoundary(), and searchInVectorWithBoundary().
| float Acts::BinningData::min |
minimum value
Definition at line 45 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 45 of file BinningData.hpp
Referenced by BinningData(), centerValue(), checkSubStructure(), inside(), m_functionPtr(), operator=(), and searchEquidistantWithBoundary().
| BinningOption Acts::BinningData::option |
binning option: open, closed
Definition at line 43 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 43 of file BinningData.hpp
Referenced by binarySearchWithBoundary(), decrement(), increment(), inside(), operator=(), searchEquidistantWithBoundary(), and searchInVectorWithBoundary().
| m_functionPtr Acts::BinningData::searchEquidistantWithBoundary |
Definition at line 74 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 74 of file BinningData.hpp
Referenced by BinningData(), m_functionPtr(), and operator=().
| float Acts::BinningData::step |
binning step
Definition at line 47 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 47 of file BinningData.hpp
Referenced by checkSubStructure(), m_functionPtr(), operator=(), and searchEquidistantWithBoundary().
| bool Acts::BinningData::subBinningAdditive |
sub structure: additive or multipicative
Definition at line 53 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 53 of file BinningData.hpp
Referenced by checkSubStructure(), operator=(), and searchWithSubStructure().
| std::unique_ptr<const BinningData> Acts::BinningData::subBinningData |
sub structure: describe some sub binning
Definition at line 51 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 51 of file BinningData.hpp
Referenced by BinningData(), boundaries(), checkSubStructure(), operator=(), search(), and searchWithSubStructure().
| BinningType Acts::BinningData::type |
binning type: equidistant, arbitrary
Definition at line 42 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 42 of file BinningData.hpp
Referenced by BinningData(), and operator=().
| bool Acts::BinningData::zdim |
zero dimensional binning : direct access
Definition at line 48 of file BinningData.hpp.
View newest version in sPHENIX GitHub at line 48 of file BinningData.hpp
Referenced by centerValue(), nextDirection(), operator=(), search(), searchGlobal(), and searchLocal().