PandaRoot
PndFtsMapCreator2.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 #ifndef PNDFTSMAPCREATOR2_H
14 #define PNDFTSMAPCREATOR2_H
15 
16 #include <iostream>
17 #include <map>
18 #include "TObject.h"
19 
20 class PndFtsTube;
21 class PndGeoFtsPar;
22 
23 class PndFtsMapCreator2 : public TObject {
24  public:
26  PndFtsMapCreator2(Int_t geoType);
29 
30  // general functions
31  void SetGeneralParameters();
32 
33  // general functions, to be specified depending on geo type
34  Int_t GetTubeIDFromPath(TString path);
35  PndFtsTube *GetTubeFromTubeID(Int_t tubeid);
36  TClonesArray *FillTubeArray();
37  Int_t GetChamberIDFromPath(TString path);
38  Int_t GetChamberIDFromName(TString name);
39  Int_t GetLayerID(Int_t chamberid, Int_t tubeid, TString path);
40  Int_t GetTubeIDTot(Int_t chamberid, Int_t layerid, Int_t tubeid, TString path);
41 
42  private:
43  // geometry type 1 specific functions
44  Int_t GetTubeIDFromPathGeoType1(TString path);
45  Int_t GetTubeIDFromNameGeoType1(TString name);
46  TString GetNameFromPathGeoType1(TString path);
47  TString GetNameFromTubeIDGeoType1(Int_t tubeid, Bool_t isCopy);
48  PndFtsTube *GetTubeFromTubeIDToFillGeoType1(Int_t tubeid);
49  PndFtsTube *GetTubeFromNameToFillGeoType1(TString tubename);
50  TClonesArray *FillTubeArrayGeoType1();
51 
52  Int_t fGeoType;
53  PndGeoFtsPar *fFtsParameters;
54  Double_t fTubeInRad, fTubeOutRad;
55 
56  // fGeoType1
57  std::map<int, int> copy_map;
58 
60  PndFtsMapCreator2 &operator=(const PndFtsMapCreator2 &) { return *this; }
61 
62  protected:
63  ClassDef(PndFtsMapCreator2, 1)
64 };
65 
66 #endif
PndFtsTube * GetTubeFromTubeID(Int_t tubeid)
Int_t GetLayerID(Int_t chamberid, Int_t tubeid, TString path)
Int_t GetChamberIDFromPath(TString path)
void SetGeneralParameters()
Int_t GetChamberIDFromName(TString name)
Int_t GetTubeIDFromPath(TString path)
Int_t GetTubeIDTot(Int_t chamberid, Int_t layerid, Int_t tubeid, TString path)
TClonesArray * FillTubeArray()