#ifndef ALIMPFASTSEGMENTATION_H
#define ALIMPFASTSEGMENTATION_H
#ifndef ROOT_TObject
# include "TObject.h"
#endif
#ifndef ALI_MP_V_SEGMENTATION_H
# include "AliMpVSegmentation.h"
#endif
#ifndef ROOT_TObjArray
# include "TObjArray.h"
#endif
#ifndef ROOT_TExMap
# include "TExMap.h"
#endif
class AliMpMotifPosition;
class AliMpFastSegmentation : public AliMpVSegmentation
{
public:
AliMpFastSegmentation(AliMpVSegmentation* seg);
virtual ~AliMpFastSegmentation();
virtual AliMpVPadIterator* CreateIterator(const AliMpArea& area) const;
virtual AliMpVPadIterator* CreateIterator() const;
virtual Int_t GetNeighbours(const AliMpPad& pad, TObjArray& neighbours,
Bool_t includeSelf=kFALSE,
Bool_t includeVoid=kFALSE) const;
virtual Bool_t HasPadByIndices(Int_t ix, Int_t iy) const;
virtual Bool_t HasPadByLocation(Int_t manuId, Int_t manuChannel) const;
virtual AliMpPad PadByLocation(Int_t manuId, Int_t manuChannel, Bool_t warning = true) const;
virtual AliMpPad PadByIndices (Int_t ix, Int_t iy, Bool_t warning = true) const;
virtual AliMpPad PadByPosition(Double_t x, Double_t y, Bool_t warning = true) const;
virtual Int_t MaxPadIndexX() const;
virtual Int_t MaxPadIndexY() const;
virtual Int_t NofPads() const;
virtual void GetAllElectronicCardIDs(TArrayI& ecn) const;
virtual Int_t GetNofElectronicCards() const;
virtual AliMp::PlaneType PlaneType() const;
virtual Double_t GetDimensionX() const;
virtual Double_t GetDimensionY() const;
virtual Double_t GetPositionX() const;
virtual Double_t GetPositionY() const;
virtual AliMpMotifPosition* MotifPosition(Int_t manuId) const;
virtual Bool_t HasMotifPosition(Int_t manuId) const;
virtual void Print(Option_t* opt="") const;
AliMpVSegmentation* GetHelper() const { return fHelper; }
AliMp::StationType StationType() const { return fHelper->StationType(); }
private:
AliMpFastSegmentation(const AliMpFastSegmentation& rhs);
AliMpFastSegmentation& operator=(const AliMpFastSegmentation& rhs);
virtual AliMpMotifPosition* InternalMotifPosition(Int_t index) const;
private:
AliMpVSegmentation* fHelper;
TObjArray fMotifPositions;
mutable TExMap fIxIy;
mutable TExMap fManuId;
Double_t fPositionX;
Double_t fPositionY;
ClassDef(AliMpFastSegmentation,2)
};
#endif
AliMpFastSegmentation.h:1 AliMpFastSegmentation.h:2 AliMpFastSegmentation.h:3 AliMpFastSegmentation.h:4 AliMpFastSegmentation.h:5 AliMpFastSegmentation.h:6 AliMpFastSegmentation.h:7 AliMpFastSegmentation.h:8 AliMpFastSegmentation.h:9 AliMpFastSegmentation.h:10 AliMpFastSegmentation.h:11 AliMpFastSegmentation.h:12 AliMpFastSegmentation.h:13 AliMpFastSegmentation.h:14 AliMpFastSegmentation.h:15 AliMpFastSegmentation.h:16 AliMpFastSegmentation.h:17 AliMpFastSegmentation.h:18 AliMpFastSegmentation.h:19 AliMpFastSegmentation.h:20 AliMpFastSegmentation.h:21 AliMpFastSegmentation.h:22 AliMpFastSegmentation.h:23 AliMpFastSegmentation.h:24 AliMpFastSegmentation.h:25 AliMpFastSegmentation.h:26 AliMpFastSegmentation.h:27 AliMpFastSegmentation.h:28 AliMpFastSegmentation.h:29 AliMpFastSegmentation.h:30 AliMpFastSegmentation.h:31 AliMpFastSegmentation.h:32 AliMpFastSegmentation.h:33 AliMpFastSegmentation.h:34 AliMpFastSegmentation.h:35 AliMpFastSegmentation.h:36 AliMpFastSegmentation.h:37 AliMpFastSegmentation.h:38 AliMpFastSegmentation.h:39 AliMpFastSegmentation.h:40 AliMpFastSegmentation.h:41 AliMpFastSegmentation.h:42 AliMpFastSegmentation.h:43 AliMpFastSegmentation.h:44 AliMpFastSegmentation.h:45 AliMpFastSegmentation.h:46 AliMpFastSegmentation.h:47 AliMpFastSegmentation.h:48 AliMpFastSegmentation.h:49 AliMpFastSegmentation.h:50 AliMpFastSegmentation.h:51 AliMpFastSegmentation.h:52 AliMpFastSegmentation.h:53 AliMpFastSegmentation.h:54 AliMpFastSegmentation.h:55 AliMpFastSegmentation.h:56 AliMpFastSegmentation.h:57 AliMpFastSegmentation.h:58 AliMpFastSegmentation.h:59 AliMpFastSegmentation.h:60 AliMpFastSegmentation.h:61 AliMpFastSegmentation.h:62 AliMpFastSegmentation.h:63 AliMpFastSegmentation.h:64 AliMpFastSegmentation.h:65 AliMpFastSegmentation.h:66 AliMpFastSegmentation.h:67 AliMpFastSegmentation.h:68 AliMpFastSegmentation.h:69 AliMpFastSegmentation.h:70 AliMpFastSegmentation.h:71 AliMpFastSegmentation.h:72 AliMpFastSegmentation.h:73 AliMpFastSegmentation.h:74 AliMpFastSegmentation.h:75 AliMpFastSegmentation.h:76 AliMpFastSegmentation.h:77 AliMpFastSegmentation.h:78 AliMpFastSegmentation.h:79 AliMpFastSegmentation.h:80 AliMpFastSegmentation.h:81 AliMpFastSegmentation.h:82 AliMpFastSegmentation.h:83 AliMpFastSegmentation.h:84 AliMpFastSegmentation.h:85 AliMpFastSegmentation.h:86 AliMpFastSegmentation.h:87 AliMpFastSegmentation.h:88 AliMpFastSegmentation.h:89 AliMpFastSegmentation.h:90 AliMpFastSegmentation.h:91 AliMpFastSegmentation.h:92 AliMpFastSegmentation.h:93 AliMpFastSegmentation.h:94 AliMpFastSegmentation.h:95 AliMpFastSegmentation.h:96 AliMpFastSegmentation.h:97 AliMpFastSegmentation.h:98 AliMpFastSegmentation.h:99 AliMpFastSegmentation.h:100