APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
ListMergingAlgorithm.h
Go to the documentation of this file.
1 /*
3  *
4  * ListMergingAlgorithm.h header template automatically generated by a class generator
5  * Creation date : ven. oct. 9 2015
6  *
7  * This file is part of ListMergingAlgorithm libraries.
8  *
9  * ListMergingAlgorithm 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  * ListMergingAlgorithm 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 ListMergingAlgorithm. If not, see <http://www.gnu.org/licenses/>.
23  *
24  * @author Remi Ete
25  * @copyright CNRS , IPNL
26  */
27 
28 
29 #ifndef LISTMERGINGALGORITHM_H
30 #define LISTMERGINGALGORITHM_H
31 
32 #include "Pandora/Algorithm.h"
33 #include "Pandora/PandoraInputTypes.h"
34 #include "Pandora/PandoraInternal.h"
35 //#include "Pandora/AlgorithmHeaders.h"
36 
37 namespace april_content
38 {
39 
43 template <typename T>
44 class ListMergingAlgorithm : public pandora::Algorithm
45 {
46 protected:
47  virtual pandora::StatusCode Run() = 0;
48  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
49 
50  pandora::StringVector m_inputListNames;
51  std::string m_outputListName;
52 };
53 
54 //------------------------------------------------------------------------------------------------------------------------------------------
55 //------------------------------------------------------------------------------------------------------------------------------------------
56 
57 template <typename T>
59 {
60 public:
64  class Factory : public pandora::AlgorithmFactory
65  {
66  public:
67  pandora::Algorithm *CreateAlgorithm() const;
68  };
69 
70  pandora::StatusCode Run();
71 };
72 
73 //------------------------------------------------------------------------------------------------------------------------------------------
74 //------------------------------------------------------------------------------------------------------------------------------------------
75 
76 template <typename T>
78 {
79 public:
83  class Factory : public pandora::AlgorithmFactory
84  {
85  public:
86  pandora::Algorithm *CreateAlgorithm() const;
87  };
88 
89  pandora::StatusCode Run();
90 };
91 
92 }
93 
94 #endif // LISTMERGINGALGORITHM_H
ListMergingAlgorithm class.
Definition: ListMergingAlgorithm.h:44
Definition: ListMergingAlgorithm.h:58
Definition: ListMergingAlgorithm.h:77
Factory class for instantiating algorithm.
Definition: ListMergingAlgorithm.h:83
Factory class for instantiating algorithm.
Definition: ListMergingAlgorithm.h:64