#endif
class AliMUONAttPainter;
-class AliMUONPainterContour;
-class AliMUONPainterContourMaker;
+class AliMUONContour;
+class AliMUONContourHandler;
class AliMUONPainterEnv;
-class AliMUONPainterPadStore;
class AliMUONVCalibParam;
class AliMUONVTrackerData;
class AliMpExMap;
class AliMpSlat;
class TArrayI;
class TList;
-class TMap;
class TObjArray;
class AliMUONPainterHelper : public TObject
Int_t ColorFromValue(Double_t value, Double_t min, Double_t max) const;
- Int_t FindPadID(const TArrayI& pads, Double_t x, Double_t y) const;
-
AliMp::CathodType GetCathodeType(Int_t detElemId, Int_t manuId) const;
- AliMUONPainterContour* GenerateManuContour(Int_t detElemId, Int_t manuId,
- AliMUONAttPainter viewType,
- const char* contourName);
-
- void GetBoundaries(const TArrayI& pads, Double_t& xmin, Double_t& ymin,
- Double_t& xmax, Double_t& ymax) const;
-
- AliMUONPainterContour* GetContour(const char* contourName) const;
+ AliMUONContour* GetContour(const char* contourName, Bool_t explodedGeometry=kTRUE) const;
/// Return a contour by name
- AliMUONPainterContour* GetContour(const TString& contourName) const { return GetContour(contourName.Data()); }
-
- AliMUONPainterContour* GetLocalManuContour(Int_t detElemId, Int_t manuId) const;
+ AliMUONContour* GetContour(const TString& contourName) const { return GetContour(contourName.Data()); }
AliMpMotifPosition* GetMotifPosition(Int_t detElemId, Int_t manuId) const;
static AliMUONPainterHelper* Instance();
- AliMpPad PadByExplodedPosition(Int_t detElemId, Int_t manuId, Double_t x, Double_t y) const;
-
- void Exploded2Real(Int_t detElemId, Double_t xe, Double_t ye, Double_t ze,
- Double_t& xr, Double_t& yr, Double_t& zr) const;
-
void Local2Global(Int_t detElemId, Double_t xl, Double_t yl, Double_t zl,
Double_t& xg, Double_t& yg, Double_t& zg) const;
- void Local2GlobalReal(Int_t detElemId, Double_t xl, Double_t yl, Double_t zl,
- Double_t& xg, Double_t& yg, Double_t& zg) const;
-
void Global2Local(Int_t detElemId, Double_t xg, Double_t yg, Double_t zg,
Double_t& xl, Double_t& yl, Double_t& zl) const;
- void Global2LocalReal(Int_t detElemId, Double_t xg, Double_t yg, Double_t zg,
- Double_t& xl, Double_t& yl, Double_t& zl) const;
-
- AliMUONPainterContour* MergeContours(const TObjArray& contours,
- const char* contourName);
+ AliMUONContour* MergeContours(const TObjArray& contours, const char* contourName, Bool_t explodedGeometry=kTRUE);
virtual void Print(Option_t* opt="") const;
- void RegisterContour(AliMUONPainterContour* contour);
-
- /// Whether we were modified since our creation
- Bool_t IsModified() const { return fIsModified; }
-
- /// Set the modified flag
- void Modified(Bool_t value=kTRUE) { fIsModified = value; }
-
- void Save();
-
- /// Return the pad store
- const AliMUONPainterPadStore& PadStore() const { return *fPadStore; }
+ void RegisterContour(AliMUONContour* contour, Bool_t explodedView=kTRUE);
TString FormatValue(const char* name, Double_t value) const;
/// Return the environment
AliMUONPainterEnv* Env() { return fEnv; }
+ TObjArray* GetAllContoursAsArray(Bool_t explodedView=kTRUE) const;
+
private:
/// Not implemented
/// Not implemented
AliMUONPainterHelper& operator=(const AliMUONPainterHelper&);
- void GenerateDefaultMatrices();
- void GenerateGeometry();
- void GeneratePadStore();
- void GeneratePadStore(Int_t detElemId);
-
+ AliMUONContourHandler* Exploded() const;
+ AliMUONContourHandler* Real() const;
+
private:
static AliMUONPainterHelper* fgInstance; ///< global instance
- AliMUONPainterPadStore* fPadStore; ///< the pad store
- Double_t fExplodeFactor[2]; ///< explosing factors for representation
- AliMpExMap* fExplodedGlobalTransformations; ///< global geometric transformations (exploded)
- AliMpExMap* fRealGlobalTransformations; ///< global geometric transformations (real)
- Bool_t fIsModified; ///< whether we've been modified since creation
- mutable AliMUONPainterContourMaker* fContourMaker; ///< the contour builder
- TObjArray* fPainterMatrices; ///< default matrices
AliMUONPainterEnv* fEnv; ///< resources
+ mutable AliMUONContourHandler* fReal; ///< contours in real coordinates
+ mutable AliMUONContourHandler* fExploded; ///< contours in exploded coordinates
- ClassDef(AliMUONPainterHelper,1) // Helper class for painters
+ ClassDef(AliMUONPainterHelper,4) // Helper class for painters
};
#endif