39#include <TMatrixDSym.h>
62namespace globaltracking
68class TrackletTransformer;
72class TreeStreamRedirector;
88class ResidualsControllerFast;
182 bool readParameters(
const std::string& parfile =
"millepede.res",
bool useErrors =
true);
243 void Print(
const Option_t* opt =
"") const final;
248 static void MPRec2Mille(
const std::string& mprecfile,
const std::string& millefile =
"mpData.mille",
bool bindata =
true);
249 static void MPRec2Mille(TTree* mprTree,
const std::string& millefile =
"mpData.mille",
bool bindata =
true);
254 void checkSol(TTree* mpRecTree,
bool store =
true,
bool verbose =
false,
bool loc =
true,
const char* outName =
"resFast");
Base class for detector: wrapper for set of volumes.
Track model for the alignment.
Collection of auxillary methods.
Definition of the GeometryManager class.
Descriptor of geometrical constraint.
Class to write C binary file.
Millepede record in root format (can be converted to proper pede binary format.
Container for control residuals.
Result of top-bottom cosmic tracks leg matching.
calibration data from laser track calibration
void setDebugStream(o2::utils::TreeStreamRedirector *d)
static const int sSkipLayers[kNLrSkip]
const ResidualsController & getContResid() const
const GeometricalConstraint & getConstraint(int i) const
o2::tpc::VDriftCorrFact mTPCDrift
const o2::globaltracking::RecoContainer * getRecoContainer() const
void addAutoConstraints()
void writeCalibrationResults() const
bool getUseRecoOCDB() const
const o2::gpu::TPCFastTransformPOD * mTPCCorrMaps
bool mTRDTrigRecFilterActive
std::unique_ptr< TTree > mMPRecTree
control residuals
bool readParameters(const std::string &parfile="millepede.res", bool useErrors=true)
ResidualsController mCResid
MP record.
AlignableDetector * getDetector(DetID id) const
bool fillControlData(o2::dataformats::GlobalTrackID tid)
void setObligatoryDetector(DetID id, int tp, bool v=true)
std::vector< GeometricalConstraint > mConstraints
AlignableDetector * getDetOfDOFID(int id) const
void setControlFrac(float v=1.)
void setTimingInfo(const o2::framework::TimingInfo &ti)
std::string mMilleFileName
file to store control residuals tree
int getRefOCDBLoaded() const
bool getTRDTrigRecFilterActive() const
void setUseRecoOCDB(bool v=true)
void setInstanceID(int i)
int getDebugOutputLevel() const
AlignmentTrack * getAlgTrack() const
const o2::gpu::GPUParam * mTPCParam
bool checkDetectorPattern(DetID::mask_t patt) const
Char_t * getDOFLabelTxt(int idf) const
const Millepede2Record & getMPRecord() const
void expandGlobalsBy(int n)
std::unique_ptr< Mille > mMille
int getTracksType() const
void checkSol(TTree *mpRecTree, bool store=true, bool verbose=false, bool loc=true, const char *outName="resFast")
void addDetector(AlignableDetector *det)
bool storeProcessedTrack(o2::dataformats::GlobalTrackID tid={})
const std::vector< GeometricalConstraint > & getConstraints() const
static const Char_t * sDetectorName[kNDetectors]
std::array< DetID::mask_t, utils::NTrackTypes > mObligatoryDetPattern
TTree * getMPRecTree() const
float getControlFrac() const
int getGloParLab(int i) const
void checkConstraints(const char *params=nullptr)
AlignmentPoint * getRefPoint() const
int parID2Label(int i) const
int getInstanceID() const
o2::utils::TreeStreamRedirector * mDBGOut
void setRecoContainer(const o2::globaltracking::RecoContainer *cont)
std::vector< float > mGloParErr
void setDebugOutputLevel(int i)
void setTrackSourceMask(GTrackID::mask_t m)
bool getInitDOFsDone() const
void writeLabeledPedeResults() const
void setFieldOn(bool v=true)
o2::utils::TreeStreamRedirector * getDebugStream()
const o2::gpu::GPUParam * getTPCParam() const
std::unique_ptr< AlignmentPoint > mRefPoint
std::vector< int > mTrackSources
void setTRDTransformer(const o2::trd::TrackletTransformer *trans)
int label2ParID(int lab) const
bool getMPAlignDone() const
void genPedeSteerFile(const Option_t *opt="") const
void setAllowAfterburnerTracks(bool v)
int getNDetectors() const
Millepede2Record * mMPRecordPtr
MP record.
bool getAllowAfterburnerTracks() const
static Char_t * getDetNameByDetID(int id)
bool getInitGeomDone() const
GTrackID::mask_t getTrackSourceMask() const
void writePedeConstraints() const
const o2::globaltracking::RecoContainer * mRecoData
Controller(const Controller &)
std::unique_ptr< AlignmentTrack > mAlgTrack
auto getStat(int cls, int tp) const
static const Char_t * sMPDataTxtExt
const o2::trd::TrackletTransformer * getTRDTransformer() const
bool fillMPRecData(o2::dataformats::GlobalTrackID tid)
std::vector< float > mGloParVal
ResidualsController * mCResidPtr
control residuals
void setTRDTrigRecFilterActive(bool v)
static const Char_t * sMPDataExt
const o2::trd::TrackletTransformer * mTRDTransformer
int mDebugOutputLevel
reference point for track definition
void Print(const Option_t *opt="") const final
void applyAlignmentFromMPSol()
Controller & operator=(const Controller &)
std::unique_ptr< EventVertex > mVtxSens
void setDetectorsMask(DetID::mask_t m)
void setCosmic(bool v=true)
int getNConstraints() const
void setTPCParam(const o2::gpu::GPUParam *par)
DetID::mask_t getDetectorsMask() const
std::unique_ptr< TFile > mMPRecFile
tree to store control residuals
int getRefRunNumber() const
AlignableVolume * getVolOfLabel(int label) const
std::unique_ptr< TFile > mResidFile
file to store MP record tree
std::array< std::unique_ptr< AlignableDetector >, DetID::nDetectors > mDetectors
void setRefRunNumber(int r=-1)
const o2::tpc::VDriftCorrFact & getTPCVDrift() const
std::vector< GeometricalConstraint > & getConstraints()
void setTracksType(int t=utils::Coll)
void printStatistics() const
bool addVertexConstraint(const o2::dataformats::PrimaryVertex &vtx)
static void MPRec2Mille(const std::string &mprecfile, const std::string &millefile="mpData.mille", bool bindata=true)
std::unique_ptr< TTree > mResidTree
tree to store MP record
void setTPCCorrMaps(const o2::gpu::TPCFastTransformPOD *maph)
bool mAllowAfterburnerTracks
std::unordered_map< int, int > mLbl2ID
AlignableVolume * getVolOfDOFID(int id) const
Millepede2Record mMPRecord
Mille interface.
const o2::gpu::TPCFastTransformPOD * getTPCCorrMaps()
o2::framework::TimingInfo mTimingInfo
void setTPCVDrift(const o2::tpc::VDriftCorrFact &v)
EventVertex * getVertexSensor() const
bool checkDetectorPoints(const int *npsel) const
std::vector< int > mGloParLab
Static class with identifiers, bitmasks and names for ALICE detectors.
static constexpr int nDetectors
number of defined detectors
GLenum const GLfloat * params
GLuint GLsizei const GLchar * label
void align(gsl::span< ElinkEncoder< BareFormat, CHARGESUM > > elinks)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
Common utility functions.
std::array< std::array< size_t, kMaxStat >, kNStatCl > data