4#ifndef INDETDD_PIXELDIODETREEBUILDER_H
5#define INDETDD_PIXELDIODETREEBUILDER_H
40 = std::function<std::tuple<PixelDiodeTree::AttributeType,PixelDiodeTree::AttributeType>
41 (
const std::array<PixelDiodeTree::IndexType,2> & ,
43 const std::array<bool,4> & ,
59 const std::array<unsigned int,2> &chip_matrix_dim,
61 const std::array<std::array<unsigned int,2>,2> &edge_dim,
62 const std::array<PixelDiodeTree::Vector2D,2> &edge_pitch,
63 const std::array<std::array<unsigned int,2>,2> &dead_zone,
65 std::ostream *debug_out=
nullptr);
73 T user_type =
static_cast<T
>(storage_type);
74 return val==user_type;
Tree structure to find the position, index or pitch of a pixel on a semi-regular grid The grid is con...
unsigned int AttributeType
bool validAttributeType(T val)
convenience method to test whether the given value can be converted into an attribute
InDetDD::PixelDiodeTree::AttributeType makeAttributeType(T val)
convenience method to convert the given value into an attribute
std::function< std::tuple< PixelDiodeTree::AttributeType, PixelDiodeTree::AttributeType >(const std::array< PixelDiodeTree::IndexType, 2 > &, const PixelDiodeTree::Vector2D &, const std::array< bool, 4 > &, unsigned int, PixelDiodeTree::AttributeType, PixelDiodeTree::AttributeType)> AttributeRefiner
PixelDiodeTree createPixelDiodeTree(const std::array< unsigned int, 2 > &chip_dim, const std::array< unsigned int, 2 > &chip_matrix_dim, const PixelDiodeTree::Vector2D &pitch, const std::array< std::array< unsigned int, 2 >, 2 > &edge_dim, const std::array< PixelDiodeTree::Vector2D, 2 > &edge_pitch, const std::array< std::array< unsigned int, 2 >, 2 > &dead_zone, const AttributeRefiner &func_compute_attribute, std::ostream *debug_out=nullptr)
Create a pixel diode tree.