APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
ConnectorAlignmentTool.h
Go to the documentation of this file.
1 /*
3  *
4  * ConnectorAlignmentTool.h header template automatically generated by a class generator
5  * Creation date : lun. juin 27 2016
6  *
7  * This file is part of APRILContent libraries.
8  *
9  * APRILContent is free software: you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation, either version 3 of the License, or
12  * (at your option) any later version.
13  * based upon these libraries are permitted. Any copy of these libraries
14  * must include this copyright notice.
15  *
16  * APRILContent is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU General Public License for more details.
20  *
21  * You should have received a copy of the GNU General Public License
22  * along with APRILContent. If not, see <http://www.gnu.org/licenses/>.
23  *
24  * @author Remi Ete
25  * @copyright CNRS , IPNL
26  */
27 
28 
29 #ifndef CONNECTORALIGNMENTTOOL_H
30 #define CONNECTORALIGNMENTTOOL_H
31 
34 
35 namespace april_content
36 {
37 
42 {
43 public:
47  class Factory : public pandora::AlgorithmToolFactory
48  {
49  public:
50  pandora::AlgorithmTool *CreateAlgorithmTool() const;
51  };
52 
59  pandora::StatusCode Process(const pandora::Algorithm &algorithm, const pandora::CaloHitList *const pCaloHitList = nullptr);
60 
66  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
67 
68 private:
75  pandora::StatusCode GetOrderedCaloHitList(const pandora::Algorithm &algorithm, const pandora::CaloHitList *const pCaloHitList, pandora::OrderedCaloHitList &orderedCaloHitList) const;
76 
83  pandora::StatusCode GetConnectorList(const pandora::OrderedCaloHitList &orderedCaloHitList, ConnectorList &connectorList) const;
84 
91  pandora::StatusCode ConnectBackward(const pandora::OrderedCaloHitList &orderedCaloHitList, const Connector *const pConnector) const;
92 
99  pandora::StatusCode ConnectForward(const pandora::OrderedCaloHitList &orderedCaloHitList, const Connector *const pConnector) const;
100 
101 private:
110 };
111 
112 //------------------------------------------------------------------------------------------------------------------------------------------
113 
114 inline pandora::AlgorithmTool *ConnectorAlignmentTool::Factory::CreateAlgorithmTool() const
115 {
116  return new ConnectorAlignmentTool();
117 }
118 
119 }
120 
121 #endif // CONNECTORALIGNMENTTOOL_H
ConnectorAlignmentTool class.
Definition: ConnectorAlignmentTool.h:41
float m_maxConnectionDistanceFine
The maximum distance between hits (fine granularity) for a suitable connection.
Definition: ConnectorAlignmentTool.h:108
Connector class.
Definition: Connector.h:44
bool m_connectOnlyAvailable
Whether to connect only available hits.
Definition: ConnectorAlignmentTool.h:102
pandora::StatusCode GetConnectorList(const pandora::OrderedCaloHitList &orderedCaloHitList, ConnectorList &connectorList) const
Get the connector list to align.
Definition: ConnectorAlignmentTool.cc:101
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read settings from the xml handle.
Definition: ConnectorAlignmentTool.cc:231
Factory class for instantiating algorithm tool.
Definition: ConnectorAlignmentTool.h:47
bool m_shouldUseIsolatedHits
Whether to use isolated hits.
Definition: ConnectorAlignmentTool.h:103
pandora::StatusCode GetOrderedCaloHitList(const pandora::Algorithm &algorithm, const pandora::CaloHitList *const pCaloHitList, pandora::OrderedCaloHitList &orderedCaloHitList) const
Get the ordered calo hit list. Filter on availability in specified.
Definition: ConnectorAlignmentTool.cc:74
pandora::StatusCode ConnectForward(const pandora::OrderedCaloHitList &orderedCaloHitList, const Connector *const pConnector) const
Create new connection in the backward direction of the target connector.
Definition: ConnectorAlignmentTool.cc:180
float m_maxConnectionDistanceCoarse
The maximum distance between hits (coarse granularity) for a suitable connection. ...
Definition: ConnectorAlignmentTool.h:109
float m_maxConnectionAngleCoarse
The maximum angle (coarse granularity) for a suitable connection.
Definition: ConnectorAlignmentTool.h:107
pandora::StatusCode Process(const pandora::Algorithm &algorithm, const pandora::CaloHitList *const pCaloHitList=nullptr)
Seed connectors from the calo hit list.
Definition: ConnectorAlignmentTool.cc:41
float m_maxConnectionAngleFine
The maximum angle (fine granularity) for a suitable connection.
Definition: ConnectorAlignmentTool.h:106
pandora::StatusCode ConnectBackward(const pandora::OrderedCaloHitList &orderedCaloHitList, const Connector *const pConnector) const
Create new connection in the forward direction of the target connector.
Definition: ConnectorAlignmentTool.cc:126
unsigned int m_maxPseudoLayerConnection
The maximum pseudo layer for a suitable connection.
Definition: ConnectorAlignmentTool.h:105
bool m_shouldConnectOnlySameHitType
Whether to connect only hits with same type.
Definition: ConnectorAlignmentTool.h:104
ConnectorAlgorithmTool class.
Definition: ConnectorAlgorithmTool.h:41