ROOT logo
#ifndef HALIGNMENTGCOSMICS_H
#define HALIGNMENTGCOSMICS_H
#include "TObject.h"
#include "hsymmat.h"
#include "fstream"
#include "iostream"
#include "TString.h"
#include "halignmentgparticle.h"
#include "hgeomtransform.h"


class TClonesArray;
class HAlignmentGGeom;
class HAlignmentGRotations;
class TH2F;
class TH1F;
class TMinuit;
class TFile;
class SplineGeantMy;
class TNtuple;

class HAlignmentGCosmics:public TObject
{
 public:
  HAlignmentGCosmics();
  virtual ~HAlignmentGCosmics();
  void SetNtuple(TNtuple *_nt);// { nt = _nt;} 
  TNtuple *GetNtuple()         {return nt;} 
  HAlignmentGGeom*  GetAlignGeom()      {return fAlignGeom;}
  HAlignmentGRotations*  GetAlignRot()  {return fAlignRot  ;}
  HGeomTransform GetRefTrans(Int_t i)   {return refTrans[i];}
  HGeomTransform GetTransGSI(TString,Int_t);
  //  void  SetRefTrans(HGeomTransform  *trans);
  void Align();
  void AlignLocal();
  void checkAlignment();
  void Yoxlama();
  Float_t GetMinFunction(HGeomTransform *, Bool_t test = kFALSE, TString option="");
  void changename(TH1F *, TString);
  void fillHistograms(HGeomVector &, HGeomVector &, Int_t, TString);
  Float_t GetMinFunction3(HGeomVector *,HGeomTransform *,Bool_t test = kFALSE, TString = "");
  void fillHistograms3(HGeomVector &, Int_t , TString);
  Int_t GetFixedSector() {return fixedSector;}
  void SetFixedSector(Int_t _fixedSector ) {fixedSector = _fixedSector;}

 private:
  Float_t accRange;
  Float_t accRange3;
  Int_t localAlign;
  Int_t fixedSector;
  
  TMinuit *fMinuit;
  TNtuple *nt;
  HGeomTransform refTrans[6]       ;   //gsi 0-ci modulun o biri sectoralara nisbeten
  HGeomTransform transGSIBefore[6] ;   //gsi modules before alignment
  HGeomTransform transGSIAfter[6]  ;
  HGeomTransform transDubna[6]     ;
  HAlignmentGGeom      *fAlignGeom ;
  HAlignmentGRotations *fAlignRot  ;
  TH1F *histoX0;
  TH1F *histoY0;
  TH1F *histoX0After;
  TH1F *histoY0After;
  
  TH1F *histoX1;
  TH1F *histoY1;
  TH1F *histoX1After;
  TH1F *histoY1After;
  
  TH1F *histoX2;
  TH1F *histoY2;
  TH1F *histoX2After;
  TH1F *histoY2After;


  //////////////

  TH1F *histoX03;
  TH1F *histoY03;
  TH1F *histoX0After3;
  TH1F *histoY0After3;
  
  TH1F *histoX13;
  TH1F *histoY13;
  TH1F *histoX1After3;
  TH1F *histoY1After3;
  
  TH1F *histoX23;
  TH1F *histoY23;
  TH1F *histoX2After3;
  TH1F *histoY2After3;

  
  
  Float_t x1, y1, x2, y2, x3, y3, x4, y4;
  Float_t sec1, sec2;
  Float_t missing;  
  ClassDef(HAlignmentGCosmics,0)
};   
#endif
    
 halignmentgcosmics.h:1
 halignmentgcosmics.h:2
 halignmentgcosmics.h:3
 halignmentgcosmics.h:4
 halignmentgcosmics.h:5
 halignmentgcosmics.h:6
 halignmentgcosmics.h:7
 halignmentgcosmics.h:8
 halignmentgcosmics.h:9
 halignmentgcosmics.h:10
 halignmentgcosmics.h:11
 halignmentgcosmics.h:12
 halignmentgcosmics.h:13
 halignmentgcosmics.h:14
 halignmentgcosmics.h:15
 halignmentgcosmics.h:16
 halignmentgcosmics.h:17
 halignmentgcosmics.h:18
 halignmentgcosmics.h:19
 halignmentgcosmics.h:20
 halignmentgcosmics.h:21
 halignmentgcosmics.h:22
 halignmentgcosmics.h:23
 halignmentgcosmics.h:24
 halignmentgcosmics.h:25
 halignmentgcosmics.h:26
 halignmentgcosmics.h:27
 halignmentgcosmics.h:28
 halignmentgcosmics.h:29
 halignmentgcosmics.h:30
 halignmentgcosmics.h:31
 halignmentgcosmics.h:32
 halignmentgcosmics.h:33
 halignmentgcosmics.h:34
 halignmentgcosmics.h:35
 halignmentgcosmics.h:36
 halignmentgcosmics.h:37
 halignmentgcosmics.h:38
 halignmentgcosmics.h:39
 halignmentgcosmics.h:40
 halignmentgcosmics.h:41
 halignmentgcosmics.h:42
 halignmentgcosmics.h:43
 halignmentgcosmics.h:44
 halignmentgcosmics.h:45
 halignmentgcosmics.h:46
 halignmentgcosmics.h:47
 halignmentgcosmics.h:48
 halignmentgcosmics.h:49
 halignmentgcosmics.h:50
 halignmentgcosmics.h:51
 halignmentgcosmics.h:52
 halignmentgcosmics.h:53
 halignmentgcosmics.h:54
 halignmentgcosmics.h:55
 halignmentgcosmics.h:56
 halignmentgcosmics.h:57
 halignmentgcosmics.h:58
 halignmentgcosmics.h:59
 halignmentgcosmics.h:60
 halignmentgcosmics.h:61
 halignmentgcosmics.h:62
 halignmentgcosmics.h:63
 halignmentgcosmics.h:64
 halignmentgcosmics.h:65
 halignmentgcosmics.h:66
 halignmentgcosmics.h:67
 halignmentgcosmics.h:68
 halignmentgcosmics.h:69
 halignmentgcosmics.h:70
 halignmentgcosmics.h:71
 halignmentgcosmics.h:72
 halignmentgcosmics.h:73
 halignmentgcosmics.h:74
 halignmentgcosmics.h:75
 halignmentgcosmics.h:76
 halignmentgcosmics.h:77
 halignmentgcosmics.h:78
 halignmentgcosmics.h:79
 halignmentgcosmics.h:80
 halignmentgcosmics.h:81
 halignmentgcosmics.h:82
 halignmentgcosmics.h:83
 halignmentgcosmics.h:84
 halignmentgcosmics.h:85
 halignmentgcosmics.h:86
 halignmentgcosmics.h:87
 halignmentgcosmics.h:88
 halignmentgcosmics.h:89
 halignmentgcosmics.h:90
 halignmentgcosmics.h:91
 halignmentgcosmics.h:92
 halignmentgcosmics.h:93
 halignmentgcosmics.h:94
 halignmentgcosmics.h:95
 halignmentgcosmics.h:96
 halignmentgcosmics.h:97
 halignmentgcosmics.h:98
 halignmentgcosmics.h:99
 halignmentgcosmics.h:100
 halignmentgcosmics.h:101