BRAT 2.4.5
Class index
Full class index
brahmlib
BRAHMS
ROOT page

BrDriverDC


class description - source file - inheritance tree

class BrDriverDC : public TNamed


    public:
BrDriverDC BrDriverDC(const Char_t* Name, const Char_t* Title) BrDriverDC BrDriverDC(BrDriverDC&) void ~BrDriverDC() void At(Int_t, Int_t) void AtPlane(Int_t) void AtSubModule(Int_t) Bool_t CheckIfMatch(Float_t dev, Int_t iplane) Bool_t CheckIfMatch(Float_t proj, Int_t imodule, Int_t iplane, Int_t iwire) static TClass* Class() Int_t DebugLevel() void DefineCorrections() Float_t GetAngle() Float_t GetDriftDist(Int_t im, Int_t ip, Int_t iw, Int_t il) Float_t GetMatchEfficiency() Bool_t GetMatchingStatus() Int_t GetMaxPlaneNum() Int_t GetMaxTdc() Int_t GetMaxWireNum() Int_t GetMinTdc() Int_t GetMinWidth() Int_t GetMode() Int_t GetNumComfirmed() Float_t GetPlanePosition(Int_t imod, Int_t iplane) Float_t GetRefDist() Float_t GetSubModulePosition() Float_t* GetTrack() Int_t GetView(Int_t iplane) Float_t GetWirePosition(Int_t) Float_t GetX1() Float_t GetX2() Float_t GetY1() Float_t GetY2() Float_t GetZ() Int_t GetZPosRef() void GoThroughModule(Int_t* wires, Float_t* xdrifts) void GoThroughPlane(Int_t& wire, Float_t& xdrift) Bool_t HitIsOK(Int_t it, Int_t iw) Float_t HitToWireDist(Int_t) void Init() virtual TClass* IsA() const Int_t LineAcceptanceStatus(BrLine3D line, Int_t opt = 0) Float_t PlanePosition() void ReadCalibData(TString CalibFile, Int_t CalibChan) Bool_t ReadCuts() void ReadOffsets(TString OffsetFile, Int_t globalTdcOffset) void ResetMatchingStuff() void SetDebugLevel(Int_t debLev) void SetDetectorTrack(Float_t* trPar) void SetMatchCondition(Int_t ik, Float_t ASig) void SetMatchCondition(Float_t fraction) void SetMaxTdc(Int_t MaxTdc = 6000) void SetMinTdc(Int_t MinTdc = 0) void SetMinWidth(Int_t MinWidth = 11) void SetMode(Int_t) void SetRunNumber(Int_t irun) void SetSetupStatus(Bool_t status) void SetSubModuleTrack(Float_t* trPar) void SetZPosRef(Int_t ZRef) virtual void ShowMembers(TMemberInspector& insp, char* parent) void ShowPlaneSpecif() void ShowTrack() void ShowWord() Double_t Sil(Int_t n) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) Float_t SubModulePlanePosition() Int_t VirtualNumber(Int_t) Float_t WireEndPoints(Int_t) Float_t WirePosition(Int_t) Int_t WireStatus(Int_t) Float_t ZfromDCFront()

Data Members

    private:
Char_t fSlowo[7] Char_t detector[2] Int_t fNormalMode Int_t fZPosRef Float_t fWireDist Float_t fActiveRangeX Float_t fActiveRangeY Float_t fCenterToWindowDist Float_t fModuleDisp Float_t fBaseWirePosXA Float_t fBaseWirePosXB Float_t fBaseWirePosXC Float_t fBaseWirePosYA Float_t fBaseWirePosYB Float_t fBaseWirePosYC Float_t fBaseWirePosUA Float_t fBaseWirePosUB Float_t fBaseWirePosVA Float_t fBaseWirePosVB Float_t fXmax Float_t fXmin Float_t fYmax Float_t fYmin Float_t fDCX0 Float_t fDCY0 Float_t fXDCWide Float_t fYDCWide Float_t fRefDist Int_t fModuleNumber Int_t fPlaneNumber Int_t fNumberOfWires Float_t fAx Float_t fAy Float_t fX0 Float_t fY0 track parameters; Float_t fTrParam[4] diffrent way to keep track parameter Int_t fDebLevel Float_t fX1 Float_t fX2 Float_t fY1 Float_t fY2 Float_t fZ This public variables represent the ends of DC wires - to defined Int_t fMaxPlaneNum Int_t frunNumber Int_t fMinWidth Int_t fMinTdc Int_t fMaxTdc Int_t fnCuts[3][10] Int_t fTdcLowCut[3][10][15] Int_t fTdcUppCut[3][10][15] Float_t fWidthLowCut[3][10][15] Float_t fWidthUppCut[3][10][15] Float_t fDCCalib[3][10][1000] Int_t fOffset[3][10][48] Float_t fPlaneCorr[30] Bool_t fRealSetup Int_t fN Int_t fK Int_t fNumbOfMatching Float_t fEff Float_t fMeanX Float_t fMeanY Float_t fMeanU Float_t fSigmaX Float_t fSigmaY Float_t fSigmaU Float_t fASig Int_t fView[10] Int_t fException[3][10]

Class Description

 BrDriverDC is a BRAHMS class for serving the real geometry
 of T3, T4 and T5 detectors. This geometry directly refers
 to the construction properties of these detectors.
 NOTE: the units assumed in this code are in [cm].



BrDriverDC(const Char_t *Name,const Char_t *Title) :TNamed(Name,Title)

void Init()
 Here we define some parameters that describe construction of the DCs.

void ShowWord()

Float_t ZfromDCFront( )

void ShowPlaneSpecif()
 prints plane specifications on STDOUT

Float_t GetAngle()

Float_t SubModulePlanePosition()
 This Function returns the plane Z position.
 This position is in respect to the center point of
 the module we are just now At.

Float_t PlanePosition()
 This Function returns the Z position of plane.
 This position is in respect to the center point of
 the whole DC detector (T3, T4 or T5).

Float_t GetPlanePosition(Int_t imod, Int_t iplane)
 This Function returns the Z position of plane.
 This position is in respect to the center point of
 the whole DC detector (T3, T4 or T5).

Int_t VirtualNumber(Int_t wire)
 This function returns the wire position which is
 the distance between the wire and the center of the
 West-North Positioning Pin.

Float_t WirePosition(Int_t wire)
 This function returns the wire position which is
 the distance between the wire and the center of the
 West-North Positioning Pin.

Int_t WireStatus(Int_t wire)
 This function returns status of the particular channel:
      0 - when the channel 'GlobalChan' is empty
      1 - when the channel 'GlobalChan' is connected to existed wire

Float_t WireEndPoints(Int_t wire)
 This function calculate wire end points coordinates and
 return the length of wire

void AtSubModule(Int_t modulNum)
 This function set the pointer to the Submodule numbered 'modulNumb'

void AtPlane(Int_t planeNum)
 This function set the pointer to the plane numbered 'planeNum'.
 This function will be changed in the future !!!

void At(Int_t modulNum, Int_t planeNum)
 This function set the pointer to the Submodule numbered 'modulNumb'
 and to the plane numbered 'planeNum'.

void SetMode(Int_t i)

Int_t GetMode( )

void SetDetectorTrack(Float_t* trPar)
 Use this method when your initial track parameters are defined in
 local Detector frame.

void SetSubModuleTrack(Float_t* trPar)
 Use this method when your initial track parameters are defined in
 local SubModule frame.

void ShowTrack()
 This method print parameters of the actual track defined
 in the center of the detector frame.
if(GetZPosRef()) {
   Float_t z = (1-fModuleNumber) * fModuleDisp;
   Float_t x = fAx*z + fX0;
   Float_t y = fAy*z + fY0;
   cout<<"track1 (ax,ay,x0,y0): "<<fAx<<" "<<fAy<<" "<<x<<" "<<y<<endl;
   }
   else
   {
   cout<<"track0 (ax,ay,x0,y0): "<<fAx<<" "<<fAy<<" "<<fX0<<" "<<fY0<<endl;
   }

Float_t* GetTrack()
 This method returns pointer to the vector
 that contains the actual track parameters defined
 in the center of detector frame (local detector track).
/if(GetZPosRef()) {
   Float_t z = (1-fModuleNumber) * fModuleDisp;
   fTrParam[2] = fAx*z + fX0; // now fTrParam are define in center of the detector frame
   fTrParam[3] = fAy*z + fY0;

void GoThroughModule(Int_t* wires, Float_t* xdrifts)

void GoThroughPlane(Int_t& wire, Float_t& xdrift)
 This function looks for the wire that has the smallest distance to
 the track defined by 'ax', 'ay', 'x0', 'y0'. This is for module
 'ModulNum' and plane 'planeNum' (see function 'SimulMode').
 This wire number and distance between wire and track are indicated
 by 'wire' and 'xdrift', respectively.

Float_t HitToWireDist(Int_t iw)
 This function return the distance between  the particular track
 and the wire numbered 'iw'.
 The track should be previously defined by calling the function
 ReadTrack with the actual track parameters: fAx, fAy, fX0, fX0.
 If the hit is out the plane active area it returns value '-1'

void DefineCorrections()

Int_t LineAcceptanceStatus(BrLine3D line,Int_t opt)
 This method returns line acceptance status defined in the
 following way:
 0 - line out of detector acceptance
 1 - line within acceptance only at detector entry or only
     at detector exit
 2 - line within acceptance at entry and at exit

Float_t GetWirePosition(Int_t iw)
 This function return the distance between  the center of the plane
 and the wire numbered 'iw'.
 first define correction for planes

Bool_t ReadCuts()
 Here we open a file with cuts for a given run
 This cuts alow to remove noisy areas in the
 Time vs SignaWidth plane.

Bool_t HitIsOK(Int_t it,Int_t iw)
 This method check whether a given hit is from noise or from
 clean Time vs HitWidth region.
 It also impose common requirement on hit's width and hit's time
cout<<"In HitIsOK: "<<it<<" "<<GetMinTdc()<<" "<<GetMaxTdc()<<endl;

void ReadCalibData(TString CalibFile,Int_t CalibChan)
 This method read matrix from the disk

void ReadOffsets(TString OffsetFile, Int_t globalTdcOffset)
 This method read matrix from the disk

Float_t GetDriftDist(Int_t im,Int_t ip,Int_t iw,Int_t il)

void SetRunNumber(Int_t irun)
 This function define number of operating plane and detection efficiency
 for given run.

void SetMatchCondition(Int_t ik, Float_t ASig)
 Here you define minimum number of planes with
 hit that matches a given global track.

void SetMatchCondition(Float_t fraction)

Float_t GetMatchEfficiency()

Double_t Sil(Int_t n)

void ResetMatchingStuff()

Bool_t CheckIfMatch(Float_t dev, Int_t iplane)

Bool_t CheckIfMatch(Float_t proj, Int_t imodule, Int_t iplane, Int_t iwire)

Bool_t GetMatchingStatus()



Inline Functions


            Float_t GetRefDist()
            Float_t GetSubModulePosition()
               void SetMinWidth(Int_t MinWidth = 11)
               void SetMinTdc(Int_t MinTdc = 0)
               void SetMaxTdc(Int_t MaxTdc = 6000)
               void SetSetupStatus(Bool_t status)
               void SetZPosRef(Int_t ZRef)
              Int_t GetZPosRef()
               void SetDebugLevel(Int_t debLev)
              Int_t DebugLevel()
              Int_t GetMaxPlaneNum()
              Int_t GetMaxWireNum()
              Int_t GetView(Int_t iplane)
            Float_t GetZ()
            Float_t GetX1()
            Float_t GetY1()
            Float_t GetX2()
            Float_t GetY2()
              Int_t GetMinWidth()
              Int_t GetMinTdc()
              Int_t GetMaxTdc()
              Int_t GetNumComfirmed()
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
         BrDriverDC BrDriverDC(BrDriverDC&)
               void ~BrDriverDC()

This page automatically generated by script docBrat by Christian Holm

Copyright ; 2002 BRAHMS Collaboration <brahmlib@rcf.rhic.bnl.gov>
Last Update on 2002/08/08 15:39:32 $ by ufstasze $

Validate HTML
Validate CSS