]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONSegmentationV02.h
Transition to NewIO
[u/mrichter/AliRoot.git] / MUON / AliMUONSegmentationV02.h
CommitLineData
a9e2aefa 1#ifndef ALIMUONSEGMENTATIONV02_H
2#define ALIMUONSEGMENTATIONV02_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
a897a37a 8/////////////////////////////////////////////////////
a1001283 9// Segmentation and Response classes version 02 //
a897a37a 10/////////////////////////////////////////////////////
11
a9e2aefa 12
13#include "AliMUONSegmentationV01.h"
14
15class AliMUONSegmentationV02 :
16public AliMUONSegmentationV01 {
a897a37a 17 public:
e9e4cdf2 18 AliMUONSegmentationV02(){}
19 AliMUONSegmentationV02(Int_t nsec);
20
a9e2aefa 21 virtual ~AliMUONSegmentationV02(){}
a897a37a 22 //
a9e2aefa 23 // Pad size Dx*Dy
24 virtual void SetPadSize(Float_t p1, Float_t p2);
a897a37a 25 //
26 // Get member data
27 // Pad size in x
c3eff6ad 28 virtual Float_t Dpx() const {return fDpy;}
a897a37a 29 // Pad size in y
c3eff6ad 30 virtual Float_t Dpy() const {return fDpx;}
a897a37a 31 // Pad size in x by Sector
c3eff6ad 32 virtual Float_t Dpx(Int_t isec) const;
a897a37a 33 // Pad size in y by Sector
c3eff6ad 34 virtual Float_t Dpy(Int_t isec) const;
a897a37a 35 // Max number of Pads in x
c3eff6ad 36 virtual Int_t Npx() const;
a897a37a 37 // max number of Pads in y
c3eff6ad 38 virtual Int_t Npy() const;
a897a37a 39 // calculate sector from pad coordinates
40 virtual Int_t Sector(Int_t ix, Int_t iy);
c3eff6ad 41 virtual void Draw(const char *opt="") const {}
a897a37a 42 //
43 // Transform from pad (wire) to real coordinates and vice versa
44 // Transform from pad to real coordinates
a30a000f 45 virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x ,Float_t &y );
c3eff6ad 46 virtual void GetPadC(Int_t ix, Int_t iy, Float_t &x, Float_t &y, Float_t &z)
3e1872ed 47 {z=fZ; GetPadC(ix, iy, x , y);}
a897a37a 48 // Transform from pad to real coordinates
a30a000f 49 virtual void GetPadI(Float_t x ,Float_t y , Int_t &ix, Int_t &iy);
c3eff6ad 50 virtual void GetPad(Float_t x, Float_t y , Float_t z, Int_t &ix, Int_t &iy)
a30a000f 51 {GetPadI(x, y, ix, iy);}
a9e2aefa 52 // Set pad position
a897a37a 53 virtual void SetPad(Int_t ix,Int_t iy);
54 // Stepper
55 virtual void NextPad();
56 // Condition
57 virtual Int_t MorePads();
a9e2aefa 58 // Get next neighbours
a897a37a 59 virtual void Neighbours
60 (Int_t iX, Int_t iY, Int_t* Nlist, Int_t Xlist[10], Int_t Ylist[10]);
61 // Get next neighbours
a9e2aefa 62 ClassDef(AliMUONSegmentationV02,1) // Segmentation approximating circular zones with different pad size
a897a37a 63 };
64#endif
65
66
67
68
69
70
71
72
73