ATLAS Offline Software
|
The main interface of the NswAsBuilt package: determines strip positions in the frame of the quadruplet. More...
#include <StgcStripCalculator.h>
Classes | |
struct | json_t |
struct | position_t |
The return object for querying strip positions with the method getPositionAlongStrip: a single point on strip is returned, in the coordinate system of the quadruplet. More... | |
struct | stgcStrip_t |
The return object for querying strip positions: three points along the strip are provided, in the coordinate system of the quadruplet. More... | |
Public Types | |
enum | IsValid { IsValid::INVALID =0, IsValid::VALID =1 } |
VALID: strip is found, INVALID: strip is not found. More... | |
using | ParameterClass = Element::ParameterClass |
Public Member Functions | |
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. More... | |
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 the quadruplet. More... | |
void | parseJSON (const std::string &in) |
Parses a std::istream with JSON-formatted configuration of the as-built parameters. More... | |
Private Member Functions | |
void | parseRootElement (json_t j) |
std::unique_ptr< Element > | buildElement (json_t j) const |
quadrupletIdentifier_t | getQuadrupletIdentifier (json_t j) const |
pcbIdentifier_t | getPcbIdentifier (quadrupletIdentifier_t quad_id, json_t j) const |
void | collectStrip (quadrupletIdentifier_t quad_id, Element &element, json_t j) |
CathodeBoardElement::stgcStripConfiguration_t | getStgcStripConfiguration (json_t j) const |
Private Attributes | |
std::vector< std::unique_ptr< Element > > | m_rootElements |
std::unordered_map< pcbIdentifier_t, CathodeBoardElement > | m_pcbMap |
The main interface of the NswAsBuilt package: determines strip positions in the frame of the quadruplet.
Once instanciated, the as-built geometry must be read in from a stream of JSON formatted data, using the method parseJSON.
Strip positions may then be queried, using the method getStgcStrip. (The method getStgcStrip is thread-safe.)
Definition at line 31 of file StgcStripCalculator.h.
Definition at line 33 of file StgcStripCalculator.h.
|
strong |
VALID: strip is found, INVALID: strip is not found.
Enumerator | |
---|---|
INVALID | |
VALID |
Definition at line 38 of file StgcStripCalculator.h.
Definition at line 61 of file StgcStripCalculator.cxx.
|
private |
Definition at line 142 of file StgcStripCalculator.cxx.
|
private |
Definition at line 112 of file StgcStripCalculator.cxx.
StgcStripCalculator::position_t StgcStripCalculator::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 the quadruplet.
s is in [-1,1]: -1 returns the left-most point along the strip, 0 returns the center point and +1 return the right-most point
Definition at line 34 of file StgcStripCalculator.cxx.
|
private |
Definition at line 96 of file StgcStripCalculator.cxx.
StgcStripCalculator::stgcStrip_t StgcStripCalculator::getStgcStrip | ( | ParameterClass | iclass, |
stripIdentifier_t | strip_id | ||
) | const |
Computes 3 reference points along a strip identified by strip_id, in coordinate system of quadruplet.
Use iclass=ParameterClass::NOMINAL or ParameterClass::CORRECTION to get the nominal or as-built values, respectively.
Definition at line 22 of file StgcStripCalculator.cxx.
|
private |
Definition at line 119 of file StgcStripCalculator.cxx.
void StgcStripCalculator::parseJSON | ( | const std::string & | in | ) |
Parses a std::istream with JSON-formatted configuration of the as-built parameters.
Definition at line 46 of file StgcStripCalculator.cxx.
|
private |
Definition at line 150 of file StgcStripCalculator.cxx.
|
private |
Definition at line 88 of file StgcStripCalculator.h.
|
private |
Definition at line 87 of file StgcStripCalculator.h.