void SetTrackFitter(AliTrackFitter *fitter) { fTrackFitter = fitter; }
void SetMinimizer(AliTrackResiduals *minimizer) { fMinimizer = minimizer; }
- void AlignDetector(AliGeomManager::ELayerID firstLayer,
- AliGeomManager::ELayerID lastLayer,
- AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
- AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer,Int_t iterations = 1);
- void AlignLayer(AliGeomManager::ELayerID layer,
- AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
- AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer,
- Int_t iterations = 1);
- void AlignVolume(UShort_t volId, UShort_t volIdFit,
- Int_t iterations);
- void AlignVolumes(const TArrayI *volids, const TArrayI *volidsfit = 0x0,
- AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
- AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer,
- Int_t iterations = 1);
+ Bool_t AlignDetector(AliGeomManager::ELayerID firstLayer,
+ AliGeomManager::ELayerID lastLayer,
+ AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
+ AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer,Int_t iterations = 1);
+ Bool_t AlignLayer(AliGeomManager::ELayerID layer,
+ AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
+ AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer,
+ Int_t iterations = 1);
+ Bool_t AlignVolume(UShort_t volId, UShort_t volIdFit,
+ Int_t iterations);
+ Bool_t AlignVolumes(const TArrayI *volids, const TArrayI *volidsfit = 0x0,
+ AliGeomManager::ELayerID layerRangeMin = AliGeomManager::kFirstLayer,
+ AliGeomManager::ELayerID layerRangeMax = AliGeomManager::kLastLayer,
+ Int_t iterations = 1);
AliAlignObj* GetAlignObj(UShort_t volid) const {
Int_t iModule;
return fAlignObjs[iLayer-AliGeomManager::kFirstLayer][iModule];
}
void SetUpdate(Bool_t update){fDoUpdate = update;}
+ void SetCovIsUsed(Bool_t covisused){fCovIsUsed=covisused;}
Bool_t GetUpdate() const { return fDoUpdate;}
- void WriteRealignObjArray(TString outfilename,AliGeomManager::ELayerID layerRangeMin,AliGeomManager::ELayerID layerRangeMin);
-
+ void WriteRealignObjArray(TString outfilename,AliGeomManager::ELayerID layerRangeMin,AliGeomManager::ELayerID layerRangeMax);
Int_t GetLastIndex(Int_t iLayer,Int_t iModule) const { return fLastIndex[iLayer][iModule]; }
protected:
void ResetAlignObjs();
void DeleteAlignObjs();
- Int_t LoadPoints(const TArrayI *volids, AliTrackPointArray** &points);
+ Int_t LoadPoints(const TArrayI *volids, AliTrackPointArray** &points,Int_t &pointsdim);
void UnloadPoints(Int_t n, AliTrackPointArray **points);
AliTrackFitter *CreateFitter();
AliTrackFitter *fTrackFitter; // Pointer to the track fitter
AliTrackResiduals*fMinimizer; // Pointer to track residuals minimizer
Bool_t fDoUpdate; // Indicator - update Alignment object after minimization
+ Bool_t fCovIsUsed; // Indicator - use AlignObjs' Cov matrices
private:
AliAlignmentTracks(const AliAlignmentTracks & alignment);