5#ifndef MUONNSWASBUILT_STGCSTRIPCALCULATOR_H
6#define MUONNSWASBUILT_STGCSTRIPCALCULATOR_H
9#include <unordered_map>
88 std::unordered_map<pcbIdentifier_t, CathodeBoardElement>
m_pcbMap;
Element: a node in a hierarchy of alignment frames.
The main interface of the NswAsBuilt package: determines strip positions in the frame of the quadrupl...
CathodeBoardElement::stgcStripConfiguration_t getStgcStripConfiguration(json_t j) const
void parseJSON(const std::string &in)
Parses a std::istream with JSON-formatted configuration of the as-built parameters.
void collectStrip(quadrupletIdentifier_t quad_id, Element &element, json_t j)
quadrupletIdentifier_t getQuadrupletIdentifier(json_t j) const
Element::ParameterClass ParameterClass
position_t getPositionAlongStgcStrip(ParameterClass iclass, stripIdentifier_t strip_id, double sx, double sy) const
Returns a the position of a point along the strip, parameterized by s, in the coordinate system of th...
IsValid
VALID: strip is found, INVALID: strip is not found.
std::unordered_map< pcbIdentifier_t, CathodeBoardElement > m_pcbMap
std::vector< std::unique_ptr< Element > > m_rootElements
pcbIdentifier_t getPcbIdentifier(quadrupletIdentifier_t quad_id, json_t j) const
stgcStrip_t getStgcStrip(ParameterClass iclass, stripIdentifier_t strip_id) const
Computes 3 reference points along a strip identified by strip_id, in coordinate system of quadruplet.
void parseRootElement(json_t j)
std::unique_ptr< Element > buildElement(json_t j) const
Eigen::Matrix< double, 3, 1 > Vector3D
The return object for querying strip positions with the method getPositionAlongStrip: a single point ...
The return object for querying strip positions: three points along the strip are provided,...
Athena indices for a MM quadruplet:
Athena indices of a MM strip.