All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
ReconstructedParticleImpl_CopyProcessor Class Reference

ReconstructedParticleImpl_CopyProcessor
More...

#include <ReconstructedParticleImpl_CopyProcessor.h>

Inheritance diagram for ReconstructedParticleImpl_CopyProcessor:
[legend]

Public Member Functions

virtual ProcessornewProcessor ()
 
 ReconstructedParticleImpl_CopyProcessor ()
 
virtual ~ReconstructedParticleImpl_CopyProcessor ()=default
 
 ReconstructedParticleImpl_CopyProcessor (const ReconstructedParticleImpl_CopyProcessor &)=delete
 
ReconstructedParticleImpl_CopyProcessoroperator= (const ReconstructedParticleImpl_CopyProcessor &)=delete
 
virtual void init ()
 
virtual void processEvent (LCEvent *evt)
 
virtual void end ()
 

Protected Attributes

std::string _description = ""
 
int _nEvt {}
 
std::string _InputColName {}
 
std::string _OutputColName {}
 
std::string _RelationColName {}
 
bool _copyType = true
 
bool _copyMomentum = true
 
bool _copyEnergy = true
 
bool _copyCovMatrix = true
 
bool _copyMass = true
 
bool _copyCharge = true
 
bool _copyReferencePoint = true
 
bool _copyParticleIDs = true
 
bool _copyParticleIDUsed = true
 
bool _copyGoodnessOfPID = true
 
bool _copyParticles = true
 
bool _copyClusters = true
 
bool _copyTracks = true
 
bool _copyStartVertex = true
 

Detailed Description

ReconstructedParticleImpl_CopyProcessor

Copies an LCIOCollection of ReconstructedParticleImpl including copying each member attribute and each element of the member vectors. In addition, an LCRelation is created, linking the original ReconstructedParticleImpl to their copies. This indirect accessibility allows for principal compatibility with existing LCRelations, like recoMCTruthLink. Necessary input are the names of the one input and two output collections.

For every member attribute or member vector there is a boolean optional parameter with which the copying of the respective element can be switched off by setting the parameter to false. This way, certain Marlin processors, that only modify the ReconstructedParticleImpl can be selectively run again instead of running the whole processor chain from the creation of the ReconstructedParticleImpl again. It was initially written to selectively re-run the LikelihoodPIDProcessor (part of HighLevelReco of MarlinStdReco) on existing DST-files after certain changes in the processor parameters were made post production. If the input collection does not exist in an event, or does not contain any elements, an empty instance of the output collection is added to the event.

To use pre-existing LCRelations, use that relation to access the old ReconstructedParticleImpl, and then use the LCRelation created by this processor to access the new one (or the other way around).

Author
U. Einhaus, DESY
Version
$1$

Definition at line 28 of file ReconstructedParticleImpl_CopyProcessor.h.

Constructor & Destructor Documentation

ReconstructedParticleImpl_CopyProcessor::ReconstructedParticleImpl_CopyProcessor ( )

Definition at line 10 of file ReconstructedParticleImpl_CopyProcessor.cc.

virtual ReconstructedParticleImpl_CopyProcessor::~ReconstructedParticleImpl_CopyProcessor ( )
virtualdefault
ReconstructedParticleImpl_CopyProcessor::ReconstructedParticleImpl_CopyProcessor ( const ReconstructedParticleImpl_CopyProcessor )
delete

Member Function Documentation

void ReconstructedParticleImpl_CopyProcessor::end ( )
virtual

Definition at line 169 of file ReconstructedParticleImpl_CopyProcessor.cc.

void ReconstructedParticleImpl_CopyProcessor::init ( )
virtual

Definition at line 104 of file ReconstructedParticleImpl_CopyProcessor.cc.

virtual Processor* ReconstructedParticleImpl_CopyProcessor::newProcessor ( )
inlinevirtual

Definition at line 32 of file ReconstructedParticleImpl_CopyProcessor.h.

ReconstructedParticleImpl_CopyProcessor& ReconstructedParticleImpl_CopyProcessor::operator= ( const ReconstructedParticleImpl_CopyProcessor )
delete
void ReconstructedParticleImpl_CopyProcessor::processEvent ( LCEvent *  evt)
virtual

Definition at line 112 of file ReconstructedParticleImpl_CopyProcessor.cc.

Member Data Documentation

bool ReconstructedParticleImpl_CopyProcessor::_copyCharge = true
protected

Definition at line 68 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyClusters = true
protected

Definition at line 74 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyCovMatrix = true
protected

Definition at line 66 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyEnergy = true
protected

Definition at line 65 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyGoodnessOfPID = true
protected

Definition at line 72 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyMass = true
protected

Definition at line 67 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyMomentum = true
protected

Definition at line 64 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyParticleIDs = true
protected

Definition at line 70 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyParticleIDUsed = true
protected

Definition at line 71 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyParticles = true
protected

Definition at line 73 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyReferencePoint = true
protected

Definition at line 69 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyStartVertex = true
protected

Definition at line 76 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyTracks = true
protected

Definition at line 75 of file ReconstructedParticleImpl_CopyProcessor.h.

bool ReconstructedParticleImpl_CopyProcessor::_copyType = true
protected

Definition at line 63 of file ReconstructedParticleImpl_CopyProcessor.h.

std::string ReconstructedParticleImpl_CopyProcessor::_description = ""
protected

Definition at line 56 of file ReconstructedParticleImpl_CopyProcessor.h.

std::string ReconstructedParticleImpl_CopyProcessor::_InputColName {}
protected

Definition at line 59 of file ReconstructedParticleImpl_CopyProcessor.h.

int ReconstructedParticleImpl_CopyProcessor::_nEvt {}
protected

Definition at line 57 of file ReconstructedParticleImpl_CopyProcessor.h.

std::string ReconstructedParticleImpl_CopyProcessor::_OutputColName {}
protected

Definition at line 60 of file ReconstructedParticleImpl_CopyProcessor.h.

std::string ReconstructedParticleImpl_CopyProcessor::_RelationColName {}
protected

Definition at line 61 of file ReconstructedParticleImpl_CopyProcessor.h.


The documentation for this class was generated from the following files: