PandaRoot
PndDrcLutNodeH.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 // -----------------------------------------
14 // PndDrcLutNodeH.h
15 //
16 // Created on: 09.07.2013
17 // Author: R.Dzhygadlo at gsi.de
18 // Author: M.Patsyuk at gsi.de
19 // -----------------------------------------
20 // Container for look-up table
21 
22 #ifndef PNDDRCLUTNODEH_H
23 #define PNDDRCLUTNODEH_H
24 
25 #include "TObject.h"
26 #include "TClonesArray.h"
27 #include "TVector3.h"
28 #include <vector>
29 
30 class PndDrcLutNodeH : public TObject {
31 
32  public:
33  // Default constructor
35 
36  // Standard constructors
37  PndDrcLutNodeH(Int_t nodeId);
38  PndDrcLutNodeH(Int_t nodeId, TVector3 dir, Double_t time);
39 
40  // Copy constructor
41  PndDrcLutNodeH(PndDrcLutNodeH &node) { *this = node; }
42 
43  // Modifiers
44  void AddEntry(TVector3 dir, Int_t amb, Double_t time);
45  void SetPos(TVector3 dir) { fNodePos = dir; }
46 
47  // Accessors
48  Int_t Entries() { return fSize; }
49  Int_t GetNodeId() { return fNodeId; }
50  Int_t GetAmbiguity(Int_t entry);
51  Double_t GetTime(Int_t entry);
52  TVector3 GetDirection(Int_t entry);
53  TVector3 GetPos() { return fNodePos; }
54 
55  protected:
56  Int_t fNodeId;
57  Int_t fSize;
58 
59  std::vector<TVector3> fNodeArray;
60  std::vector<Int_t> fAmbiguity;
61  std::vector<Double_t> fTimeArray;
62  TVector3 fNodePos;
63  ClassDef(PndDrcLutNodeH, 2)
64 };
65 
66 #endif // PNDDRCLUTNODEH_H
Double_t GetTime(Int_t entry)
TVector3 fNodePos
void AddEntry(TVector3 dir, Int_t amb, Double_t time)
PndDrcLutNodeH(PndDrcLutNodeH &node)
Int_t GetAmbiguity(Int_t entry)
std::vector< TVector3 > fNodeArray
std::vector< Double_t > fTimeArray
std::vector< Int_t > fAmbiguity
void SetPos(TVector3 dir)
TVector3 GetDirection(Int_t entry)
TVector3 GetPos()