Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#ifndef MCPARTICLEPROCESSOR_H
#define MCPARTICLEPROCESSOR_H 1
// pandora
#include "Api/PandoraApi.h"
// slicPandora
#include "EventProcessor.h"
#include "DetectorGeometry.h"
// lcio
#include "EVENT/MCParticle.h"
using EVENT::MCParticle;
/**
* This is an event processor that converts collections of MCParticles
* to Pandora MCParticle::Parameters and registers them with the current
* Pandora instance.
*/
class MCParticleProcessor : public EventProcessor
{
public:
/**
* Standard ctor.
*/
MCParticleProcessor()
: EventProcessor("MCParticleProcessor")
{;}
/**
* Standard dtor.
*/
virtual ~MCParticleProcessor()
{;}
public:
/**
* This method converts LCIO MCParticles into Pandora CalHit::Parameters.
*/
void processEvent(EVENT::LCEvent*);
private:
/* /\** */
/* * Make a 64-bit ID from the two 32-bit cell IDs of a MCParticle. */
/* *\/ */
/* inline long long makeId64(MCParticle* hit) const */
/* { */
/* return ((long long)hit->getCellID1())<<32 | hit->getCellID0(); */
/* } */
/**
* Convert an LCIO MCParticle into a PandoraPFANew MCParticle Parameters.
*/
PandoraApi::MCParticle::Parameters makeMCParticleParameters(MCParticle*, int);
/**
* Print the given MCParticle::Parameters to cout.
*/
void printMCParticleParameters(const PandoraApi::MCParticle::Parameters&);
private:
static std::string mcParticleCollectionName;
};
#endif