//************************************************************************
#include <TObject.h>
#include <TString.h>
-#include <TGeoMatrix.h>
#include <Rtypes.h>
-#include <TMath.h>
-#include <TMatrixDSym.h>
#include "AliGeomManager.h"
+#include <TMatrixD.h>
+#include <TMatrixDSym.h>
class AliTrackPoint;
class AliTrackPointArray;
+class TGeoMatrix;
class AliAlignObj : public TObject {
void SetVolUID(AliGeomManager::ELayerID layerId, Int_t modId);
void SetCorrMatrix(Double_t *cov);
void SetCorrMatrix(TMatrixDSym& mcov);
+ Bool_t SetFromLocalCov(Double_t *lCov);
+ Bool_t SetFromLocalCov(TMatrixDSym& lCov);
//Getters
const char *GetSymName() const {return fVolPath.Data();}
virtual Bool_t GetLocalMatrix(TGeoHMatrix& m) const;
void GetCovMatrix(Double_t *cov) const;
void GetCovMatrix(TMatrixDSym& mcov) const;
+ Bool_t GetJacobian(TMatrixD& mJ) const;
+ Bool_t GetLocalCovMatrix(Double_t *cov) const;
+ Bool_t GetLocalCovMatrix(TMatrixDSym& lCov) const;
Bool_t IsSortable() const {return kTRUE;}
Int_t GetLevel() const;
virtual AliAlignObj& Inverse() const=0;
- void Transform(AliTrackPoint &p) const;
+ void Transform(AliTrackPoint &p, Bool_t copycov=kFALSE) const;
void Transform(AliTrackPointArray &array) const;
void Print(Option_t *) const;
static const char* SymName(UShort_t voluid) {return AliGeomManager::SymName(voluid);}
static const char* SymName(AliGeomManager::ELayerID layerId, Int_t modId) {return AliGeomManager::SymName(layerId, modId);}
- Bool_t ApplyToGeometry();
+ Bool_t ApplyToGeometry(Bool_t ovlpcheck=kFALSE);
static Bool_t GetFromGeometry(const char *symname, AliAlignObj &alobj) {return AliGeomManager::GetFromGeometry(symname, alobj);}
static AliAlignObj* GetAlignObj(UShort_t voluid) {return AliGeomManager::GetAlignObj(voluid);}