PandaRoot
PndHoughTransformation.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
14
// PndHoughTransformation
15
// Hough transformation based on the apollonius problem
17
28
#ifndef PndHoughTransformation_H_
29
#define PndHoughTransformation_H_
30
31
#include "
PndHoughMultipletCreator.h
"
32
#include "
PndHoughApollonius.h
"
33
#include "
PndHoughSpace.h
"
34
#include "
PndHoughUtilities.h
"
35
#include "
PndHoughData.h
"
36
37
#include <vector>
38
39
class
PndHoughTransformation
{
40
41
public
:
42
PndHoughTransformation
(
PndHoughData
*data)
//: fHoughSpace(data->GetHoughSpace())
43
{
44
fPndHoughMultipletCreator =
new
PndHoughMultipletCreator
();
45
fPndHoughApollonius =
new
PndHoughApollonius
(data);
46
// fPndHoughUtilities = new PndHoughUtilities(data);
47
fData = data;
48
};
49
50
virtual
~PndHoughTransformation
()
51
{
52
delete
fPndHoughMultipletCreator;
53
delete
fPndHoughApollonius;
54
// delete fPndHoughUtilities;
55
};
56
58
vector<TVector3>
FindMaximaWithHoughTransformation
(
PndTrackCand
&trackCand);
60
void
HoughSpace
(
PndTrackCand
&trackCand);
62
TVector3
MaximumSelectiondCandToTrack
(
PndTrackCand
&trackCand, vector<TVector3> &TrackCircleVec);
63
64
virtual
void
SetUtilities
(
PndHoughUtilities
*utilities) { fPndHoughUtilities = utilities; };
65
66
private
:
67
// PndHoughSpace *fHoughSpace = nullptr;
68
PndHoughMultipletCreator
*fPndHoughMultipletCreator =
nullptr
;
69
PndHoughApollonius
*fPndHoughApollonius =
nullptr
;
70
PndHoughUtilities
*fPndHoughUtilities =
nullptr
;
71
PndHoughData
*fData =
nullptr
;
72
73
ClassDef(
PndHoughTransformation
, 1);
74
};
75
76
#endif
/*PndHoughTransformation_H_*/
PndHoughTransformation
Definition:
PndHoughTransformation.h:39
PndHoughTransformation::FindMaximaWithHoughTransformation
vector< TVector3 > FindMaximaWithHoughTransformation(PndTrackCand &trackCand)
Main class of the Hough transformation: the Hough space is filled and the maximum is returned...
PndHoughTransformation::HoughSpace
void HoughSpace(PndTrackCand &trackCand)
Here the Hough space is filled by calcualting all Apollonius circles.
PndHoughData.h
PndHoughSpace.h
PndHoughUtilities.h
PndHoughTransformation::SetUtilities
virtual void SetUtilities(PndHoughUtilities *utilities)
Definition:
PndHoughTransformation.h:64
PndHoughMultipletCreator.h
PndHoughApollonius.h
PndHoughData
Definition:
PndHoughData.h:43
PndHoughMultipletCreator
Definition:
PndHoughMultipletCreator.h:34
PndHoughTransformation::~PndHoughTransformation
virtual ~PndHoughTransformation()
Definition:
PndHoughTransformation.h:50
PndHoughApollonius
Definition:
PndHoughApollonius.h:36
PndHoughTransformation::PndHoughTransformation
PndHoughTransformation(PndHoughData *data)
Definition:
PndHoughTransformation.h:42
PndHoughTransformation::MaximumSelectiondCandToTrack
TVector3 MaximumSelectiondCandToTrack(PndTrackCand &trackCand, vector< TVector3 > &TrackCircleVec)
Selects one maximum of many by choosing the one with the smalles RMS to the track.
PndTrackCand
Definition:
PndTrackCand.h:53
PndHoughUtilities
Definition:
PndHoughUtilities.h:49
home
gitlab-runner
builds
Vxspf1vo
0
PandaRootGroup
PandaRoot
tracking
PndHoughTrackFinder
PndHoughTransformation.h
Generated on Fri Nov 29 2024 06:04:42 for PandaRoot by
1.8.13