Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MergeCollections::MergeCollections Class Reference
Inheritance diagram for MergeCollections::MergeCollections:
art::EDProducer art::ProducerBase art::Consumer art::EngineCreator art::ProductRegistryHelper

Public Types

using ModuleType = EDProducer
 
using WorkerType = WorkerT< EDProducer >
 
template<typename UserConfig , typename KeysToIgnore = void>
using Table = ProducerBase::Table< UserConfig, KeysToIgnore >
 

Public Member Functions

 MergeCollections (fhicl::ParameterSet const &pset)
 
virtual ~MergeCollections ()
 
void produce (art::Event &evt)
 
template<typename PROD , BranchType B = InEvent>
ProductID getProductID (std::string const &instanceName={}) const
 
template<typename PROD , BranchType B>
ProductID getProductID (ModuleDescription const &moduleDescription, std::string const &instanceName) const
 
bool modifiesEvent () const
 
template<typename T , BranchType = InEvent>
ProductToken< Tconsumes (InputTag const &)
 
template<typename T , art::BranchType BT>
art::ProductToken< Tconsumes (InputTag const &it)
 
template<typename T , BranchType = InEvent>
void consumesMany ()
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > consumesView (InputTag const &)
 
template<typename T , art::BranchType BT>
art::ViewToken< TconsumesView (InputTag const &it)
 
template<typename T , BranchType = InEvent>
ProductToken< TmayConsume (InputTag const &)
 
template<typename T , art::BranchType BT>
art::ProductToken< TmayConsume (InputTag const &it)
 
template<typename T , BranchType = InEvent>
void mayConsumeMany ()
 
template<typename Element , BranchType = InEvent>
ViewToken< Element > mayConsumeView (InputTag const &)
 
template<typename T , art::BranchType BT>
art::ViewToken< TmayConsumeView (InputTag const &it)
 
base_engine_tcreateEngine (seed_t seed)
 
base_engine_tcreateEngine (seed_t seed, std::string const &kind_of_engine_to_make)
 
base_engine_tcreateEngine (seed_t seed, std::string const &kind_of_engine_to_make, label_t const &engine_label)
 
seed_t get_seed_value (fhicl::ParameterSet const &pset, char const key[]="seed", seed_t const implicit_seed=-1)
 

Static Public Member Functions

static cet::exempt_ptr< Consumernon_module_context ()
 

Protected Member Functions

CurrentProcessingContext const * currentContext () const
 
void validateConsumedProduct (BranchType const bt, ProductInfo const &pi)
 
void prepareForJob (fhicl::ParameterSet const &pset)
 
void showMissingConsumes () const
 

Protected Attributes

std::string fFirstGenCollection
 
std::string fFirstG4Collection
 Label on the main collection. More...
 
std::string fSecondCollection
 Label on the main collection. More...
 
int fIsFirstCollectionCosmic
 Label on the main collection. More...
 

Detailed Description

Definition at line 35 of file MergeCollections_module.cc.

Member Typedef Documentation

using art::EDProducer::ModuleType = EDProducer
inherited

Definition at line 34 of file EDProducer.h.

template<typename UserConfig , typename KeysToIgnore = void>
using art::EDProducer::Table = ProducerBase::Table<UserConfig, KeysToIgnore>
inherited

Definition at line 43 of file EDProducer.h.

using art::EDProducer::WorkerType = WorkerT<EDProducer>
inherited

Definition at line 35 of file EDProducer.h.

Constructor & Destructor Documentation

MergeCollections::MergeCollections::MergeCollections ( fhicl::ParameterSet const &  pset)
explicit

Definition at line 56 of file MergeCollections_module.cc.

56  :
57  fFirstGenCollection (pset.get< std::string >("FirstGenCollection")),
58  fFirstG4Collection (pset.get< std::string >("FirstG4Collection")),
59  fSecondCollection (pset.get< std::string >("SecondCollection")),
60  fIsFirstCollectionCosmic (pset.get< int >("IsFirstCollectionCosmic"))
61 
62  { produces< std::vector<simb::MCTruth> >();
63  produces< std::vector<simb::MCFlux> >();
64  produces< std::vector<sim::FLSHitList > >();
65  produces< std::vector<sim::Particle> >();
66  produces< std::vector<simb::GTruth> >();
67  produces< art::Assns<simb::MCTruth, simb::MCFlux> >();
68  produces< art::Assns<simb::MCTruth, simb::GTruth> >();
69  produces< art::Assns<sim::Particle, simb::MCTruth> >();
70 
71 
72  }
std::string fFirstG4Collection
Label on the main collection.
int fIsFirstCollectionCosmic
Label on the main collection.
std::string fSecondCollection
Label on the main collection.
enum BeamMode string
MergeCollections::MergeCollections::~MergeCollections ( )
virtual

Definition at line 75 of file MergeCollections_module.cc.

76  {
77  }

Member Function Documentation

template<typename T , BranchType = InEvent>
ProductToken<T> art::Consumer::consumes ( InputTag const &  )
inherited
template<typename T , art::BranchType BT>
art::ProductToken<T> art::Consumer::consumes ( InputTag const &  it)
inherited

Definition at line 146 of file Consumer.h.

References art::InputTag::instance(), PandAna.reco_validation.prod5_pid_validation::invalid, art::InputTag::label(), art::InputTag::process(), and T.

147 {
148  if (!moduleContext_)
149  return ProductToken<T>::invalid();
150 
151  consumables_[BT].emplace_back(ConsumableType::Product,
152  TypeID{typeid(T)},
153  it.label(),
154  it.instance(),
155  it.process());
156  return ProductToken<T>{it};
157 }
set< int >::iterator it
static ProductToken< T > invalid()
Definition: ProductToken.h:47
ConsumableProducts consumables_
Definition: Consumer.h:137
double T
Definition: Xdiff_gwt.C:5
bool moduleContext_
Definition: Consumer.h:135
template<typename T , art::BranchType BT>
void art::Consumer::consumesMany ( )
inherited

Definition at line 161 of file Consumer.h.

References T.

162 {
163  if (!moduleContext_)
164  return;
165 
166  consumables_[BT].emplace_back(ConsumableType::Many, TypeID{typeid(T)});
167 }
ConsumableProducts consumables_
Definition: Consumer.h:137
double T
Definition: Xdiff_gwt.C:5
bool moduleContext_
Definition: Consumer.h:135
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::Consumer::consumesView ( InputTag const &  )
inherited
template<typename T , art::BranchType BT>
art::ViewToken<T> art::Consumer::consumesView ( InputTag const &  it)
inherited

Definition at line 171 of file Consumer.h.

References art::InputTag::instance(), PandAna.reco_validation.prod5_pid_validation::invalid, art::InputTag::label(), art::InputTag::process(), and T.

172 {
173  if (!moduleContext_)
174  return ViewToken<T>::invalid();
175 
176  consumables_[BT].emplace_back(ConsumableType::ViewElement,
177  TypeID{typeid(T)},
178  it.label(),
179  it.instance(),
180  it.process());
181  return ViewToken<T>{it};
182 }
set< int >::iterator it
static ViewToken< Element > invalid()
Definition: ProductToken.h:75
ConsumableProducts consumables_
Definition: Consumer.h:137
double T
Definition: Xdiff_gwt.C:5
bool moduleContext_
Definition: Consumer.h:135
base_engine_t& art::EngineCreator::createEngine ( seed_t  seed)
inherited
base_engine_t& art::EngineCreator::createEngine ( seed_t  seed,
std::string const &  kind_of_engine_to_make 
)
inherited
base_engine_t& art::EngineCreator::createEngine ( seed_t  seed,
std::string const &  kind_of_engine_to_make,
label_t const &  engine_label 
)
inherited
CurrentProcessingContext const* art::EDProducer::currentContext ( ) const
protectedinherited
seed_t art::EngineCreator::get_seed_value ( fhicl::ParameterSet const &  pset,
char const  key[] = "seed",
seed_t const  implicit_seed = -1 
)
inherited
template<typename PROD , BranchType B>
ProductID art::EDProducer::getProductID ( std::string const &  instanceName = {}) const
inlineinherited

Definition at line 123 of file EDProducer.h.

References art::EDProducer::moduleDescription_.

Referenced by skim::NueSkimmer::CopyMichelSlice(), and skim::NueSkimmer::CopyMichelTrack().

124  {
125  return ProducerBase::getProductID<PROD, B>(moduleDescription_,
126  instanceName);
127  }
ModuleDescription moduleDescription_
Definition: EDProducer.h:115
template<typename PROD , BranchType B>
ProductID art::ProducerBase::getProductID ( ModuleDescription const &  moduleDescription,
std::string const &  instanceName 
) const
inherited

Definition at line 56 of file ProducerBase.h.

References art::ModuleDescription::moduleLabel().

Referenced by art::ProducerBase::modifiesEvent().

58  {
59  auto const& pd =
60  get_ProductDescription<PROD>(B, md.moduleLabel(), instanceName);
61  return pd.productID();
62  }
template<typename T , BranchType = InEvent>
ProductToken<T> art::Consumer::mayConsume ( InputTag const &  )
inherited
template<typename T , art::BranchType BT>
art::ProductToken<T> art::Consumer::mayConsume ( InputTag const &  it)
inherited

Definition at line 189 of file Consumer.h.

References art::InputTag::instance(), PandAna.reco_validation.prod5_pid_validation::invalid, art::InputTag::label(), art::InputTag::process(), and T.

190 {
191  if (!moduleContext_)
192  return ProductToken<T>::invalid();
193 
194  consumables_[BT].emplace_back(ConsumableType::Product,
195  TypeID{typeid(T)},
196  it.label(),
197  it.instance(),
198  it.process());
199  return ProductToken<T>{it};
200 }
set< int >::iterator it
static ProductToken< T > invalid()
Definition: ProductToken.h:47
ConsumableProducts consumables_
Definition: Consumer.h:137
double T
Definition: Xdiff_gwt.C:5
bool moduleContext_
Definition: Consumer.h:135
template<typename T , art::BranchType BT>
void art::Consumer::mayConsumeMany ( )
inherited

Definition at line 204 of file Consumer.h.

References T.

205 {
206  if (!moduleContext_)
207  return;
208 
209  consumables_[BT].emplace_back(ConsumableType::Many, TypeID{typeid(T)});
210 }
ConsumableProducts consumables_
Definition: Consumer.h:137
double T
Definition: Xdiff_gwt.C:5
bool moduleContext_
Definition: Consumer.h:135
template<typename Element , BranchType = InEvent>
ViewToken<Element> art::Consumer::mayConsumeView ( InputTag const &  )
inherited
template<typename T , art::BranchType BT>
art::ViewToken<T> art::Consumer::mayConsumeView ( InputTag const &  it)
inherited

Definition at line 214 of file Consumer.h.

References art::InputTag::instance(), PandAna.reco_validation.prod5_pid_validation::invalid, art::InputTag::label(), art::InputTag::process(), and T.

215 {
216  if (!moduleContext_)
217  return ViewToken<T>::invalid();
218 
219  consumables_[BT].emplace_back(ConsumableType::ViewElement,
220  TypeID{typeid(T)},
221  it.label(),
222  it.instance(),
223  it.process());
224  return ViewToken<T>{it};
225 }
set< int >::iterator it
static ViewToken< Element > invalid()
Definition: ProductToken.h:75
ConsumableProducts consumables_
Definition: Consumer.h:137
double T
Definition: Xdiff_gwt.C:5
bool moduleContext_
Definition: Consumer.h:135
bool art::ProducerBase::modifiesEvent ( ) const
inlineinherited

Definition at line 40 of file ProducerBase.h.

References art::ProducerBase::getProductID(), and string.

41  {
42  return true;
43  }
static cet::exempt_ptr<Consumer> art::Consumer::non_module_context ( )
staticinherited
void art::Consumer::prepareForJob ( fhicl::ParameterSet const &  pset)
protectedinherited
void MergeCollections::MergeCollections::produce ( art::Event evt)
virtual

Current event number

Loop over neutrino interactions

Second collection

Offset ids for FLSHits

End of the FLS offset

Implements art::EDProducer.

Definition at line 80 of file MergeCollections_module.cc.

References sim::FLSHit::Clear(), om::cout, util::CreateAssn(), d, simb::MCParticle::Daughter(), DEFINE_ART_MODULE(), allTimeWatchdog::endl, sim::FLSHitList::fHits, flux, art::DataViewImpl::getByLabel(), simb::MCParticle::Gvt(), simb::MCParticle::Gvx(), simb::MCParticle::Gvy(), simb::MCParticle::Gvz(), hits(), MECModelEnuComparisons::i, calib::j, simb::MCParticle::Mass(), simb::MCParticle::Momentum(), simb::MCParticle::Mother(), simb::MCParticle::NumberDaughters(), simb::MCParticle::NumberTrajectoryPoints(), part, simb::MCParticle::PdgCode(), simb::MCParticle::Polarization(), simb::MCParticle::Position(), simb::MCParticle::Process(), art::Event::put(), simb::MCParticle::Rescatter(), simb::MCParticle::SetGvtx(), sim::FLSHit::SetTrackId(), art::DataViewImpl::size(), gen_flatrecord::size, simb::MCParticle::StatusCode(), confusionMatrixTree::t, simb::MCParticle::TrackId(), and simb::MCParticle::Weight().

81  {
82 
83 
84  std::unique_ptr< std::vector<simb::MCTruth> > truthcol (new std::vector<simb::MCTruth>);
85  std::unique_ptr< std::vector<simb::MCFlux> > fluxcol (new std::vector<simb::MCFlux >);
86  std::unique_ptr< std::vector<simb::GTruth> > gtruthcol(new std::vector<simb::GTruth>);
87  std::unique_ptr< art::Assns<simb::MCTruth, simb::MCFlux> > assns (new art::Assns<simb::MCTruth, simb::MCFlux>);
88  std::unique_ptr< art::Assns<simb::MCTruth, simb::GTruth> > gassns(new art::Assns<simb::MCTruth, simb::GTruth>);
89  std::unique_ptr< art::Assns<sim::Particle, simb::MCTruth> > passns(new art::Assns<sim::Particle, simb::MCTruth>);
90 
91 
92  // Define the FLSHitList and Particle vectors.
93  std::unique_ptr<std::vector<sim::FLSHitList> > flshlcol(new std::vector<sim::FLSHitList> );
94  std::unique_ptr<std::vector<sim::Particle> > pcol (new std::vector<sim::Particle> );
95 
96 
97  /// Current event number
98 // fCurrentEvent = evt.id().event();
99 
100  // Pull the MC generator information out of the event
102  evt.getByLabel(fFirstGenCollection, mclist);
103 
106 
108  evt.getByLabel(fFirstGenCollection, fllist);
109  evt.getByLabel(fFirstGenCollection, glist);
110 
111  }
112 
114  evt.getByLabel(fFirstG4Collection, flslist);
115 
116 
118  evt.getByLabel(fFirstG4Collection, partlist);
119 
120 
121  int IdOffset=0;
122 
123  for(unsigned int i = 0; i < partlist->size(); ++i){
124 
125  sim::Particle part ((*partlist)[i]);
126  IdOffset=part.TrackId();
127  // std::cout << " Primary Collection ID " << IdOffset << std::endl;
128  pcol->push_back(part);
129 
130  }
131 
132 
133  /// Loop over neutrino interactions
134 
135  // std::cout << " primary mc list size " << mclist->size() << std::endl;
136 
137  for(unsigned int i = 0; i < mclist->size(); ++i){
138 
139  simb::MCTruth truth ((*mclist)[i]);
140  truthcol->push_back(truth);
141 
143  simb::MCFlux flux ((*fllist)[i]);
144  fluxcol ->push_back(flux);
145 
146  simb::GTruth gtruth ((*glist)[i]);
147  gtruthcol->push_back(gtruth);
148 
149  util::CreateAssn(*this, evt, *truthcol, *fluxcol, *assns, fluxcol ->size()-1, fluxcol ->size());
150  util::CreateAssn(*this, evt, *truthcol, *gtruthcol, *gassns, gtruthcol->size()-1, gtruthcol->size());
151 
152  }
153 
154  // IdOffset=truth.NParticles();
155 
156  // std::cout<<"First collection:"<< flslist->size() << std::endl;
157 
158  if(i<flslist->size()){
159  sim::FLSHitList mcfls ((*flslist)[i]);
160  flshlcol->push_back(mcfls);
161  }
162  }
163 
164  ///Second collection
165  // std::cout<<"Id Offset = "<<IdOffset<<std::endl;
166 
168  evt.getByLabel(fSecondCollection, mc2list);
169 
171  evt.getByLabel(fSecondCollection, g2list);
172 
174  evt.getByLabel(fSecondCollection, fl2list);
175 
177  evt.getByLabel(fSecondCollection, fls2list);
178 
179 
181  evt.getByLabel(fSecondCollection, part2list);
182 
183  int LastPartId;
184  int *Offset = new int[1000];
185  int *OffsetParticles = new int[1000];
186  int OffsetIndex;
187 
188  LastPartId=0;
189  for(int i=0;i<10;i++){
190  Offset[i]=0;
191  OffsetParticles[i]=0;
192  }
193  Offset[0]=IdOffset;
194  OffsetParticles[0]=partlist->size();
195  OffsetIndex=1;
196 
197  for(unsigned int i = 0; i < part2list->size(); ++i){
198 
199  OffsetParticles[OffsetIndex]++;
200 
201  sim::Particle part ((*part2list)[i]);
202  // std::cout<<"partID="<<part.TrackId()<<std::endl;
203  if(LastPartId > part.TrackId() ){
204  Offset[OffsetIndex]= Offset[OffsetIndex-1] + LastPartId;
205  OffsetIndex++ ;
206 
207  // std::cout<<"osfet for i="<<i<<" is "<<Offset[OffsetIndex-1]<<std::endl;
208  // std::cin.get();
209  }
210 
211  LastPartId=part.TrackId();
212 
213  int partmother =0;
214  if (part.Mother()!=0)partmother = part.Mother() + Offset[OffsetIndex-1];
215 
216  sim::Particle gpart(part.TrackId()+ Offset[OffsetIndex-1],
217  part.PdgCode(),
218  part.Process(),
219  partmother,
220  part.Mass(),
221  part.StatusCode());
222  // std::cout <<part.TrackId()<< "\t" << gpart.TrackId()<<"\t"<< Offset[OffsetIndex-1] << " mother " << part.Mother() << " mother offset " << partmother << std::endl;//std::cin.get();
223 
224  gpart.SetGvtx(part.Gvx(), part.Gvy(),part.Gvz(),part.Gvt());
225  gpart.SetPolarization(part.Polarization());
226  gpart.SetWeight(part.Weight());
227  gpart.SetRescatter(part.Rescatter());
228  for(int d=0; d<part.NumberDaughters(); d++){
229  gpart.AddDaughter(part.Daughter(d)+ Offset[OffsetIndex-1]);
230  }
231  for(unsigned int t=0; t<part.NumberTrajectoryPoints(); t++){
232  //std::cout<<part.Vx(t)<<"\t"<<part.EndX()<<std::endl;
233  gpart.AddTrajectoryPoint(part.Position(t),part.Momentum(t));
234  }
235  pcol->push_back(gpart);
236  // std::cout<< "mc particle " << part.TrackId() << " " << Offset[OffsetIndex-1] << std::endl;
237  }
238 
239  std::cout<<"mc1 size="<<mclist->size()<<std::endl;
240  std::cout<<"mc2 size="<<mc2list->size()<<std::endl;
241 
242  for(unsigned int i = 0; i < mc2list->size(); ++i){
243 
244  simb::MCTruth truth ((*mc2list)[i]);
245  simb::MCFlux flux ((*fl2list)[i]);
246  simb::GTruth gtruth ((*g2list) [i]);
247 
248  simb::MCTruth tmc(truth);
249 
250 
251  /// Offset ids for FLSHits
252 
253  // std::cout<<"size="<<fls2list->size()<< " mclist " << i << std::endl;
254  if(i<fls2list->size()){
255 
256  sim::FLSHitList mcfls ((*fls2list)[i]);
257  sim::FLSHitList tmcfls;
258  sim::FLSHit fHit;
259 
260  const std::vector<sim::FLSHit>& hits = mcfls.fHits;
261  for (unsigned int j=0; j<hits.size(); ++j)
262  {
263  fHit.Clear();
264  fHit=hits[j];
265  fHit.SetTrackId(hits[j].GetTrackID() + Offset[i]);
266  tmcfls.fHits.push_back(fHit);
267 
268  // std::cout << " fls ID " << hits[j].GetTrackID() << " " << Offset[i] << " " << hits[j].GetTrackID()+Offset[i] << std::endl;
269  }
270  flshlcol->push_back(tmcfls);
271 
272  }
273  /// End of the FLS offset
274 
275  truthcol->push_back(tmc);
276  gtruthcol->push_back(gtruth);
277  fluxcol ->push_back(flux);
278 
279  util::CreateAssn(*this, evt, *truthcol, *fluxcol, *assns, fluxcol->size()-1, fluxcol->size());
280  util::CreateAssn(*this, evt, *truthcol, *gtruthcol, *gassns, gtruthcol->size()-1, gtruthcol->size());
281 
282 
283  // std::cout<<"end of i mcsize"<<std::endl;
284 
285 
286  }
287 
288  // Define the FLSHitList and Particle vectors.
289 
290 
291  std::unique_ptr< std::vector<simb::MCTruth> > temptruelist (new std::vector<simb::MCTruth>);
292  std::unique_ptr< std::vector<sim::Particle> > temppartlist (new std::vector<sim::Particle>);
293 
294  bool NewMCList = false;
295  int MCListIndex = -1;
296  for(unsigned int j = 0; j < pcol->size(); ++j){
297  sim::Particle part ((*pcol)[j]);
298  if(part.Mother()!=0 )NewMCList=false;
299  if(part.Mother()==0 && ! NewMCList){
300  MCListIndex++;
301  // std::cout << " pushing truthcol index " << MCListIndex << " onto temptrue " << std::endl;
302 
303  simb::MCTruth truth ((*truthcol)[MCListIndex]);
304  temptruelist->push_back(truth);
305  NewMCList=true;
306  }
307  // std::cout << j << " " << temptruelist->size()-1 << std::endl;
308 
309  temppartlist->push_back(part);
310  util::CreateAssn(*this, evt, *temppartlist, *temptruelist, *passns, temptruelist->size()-1,temptruelist->size());
311 
312 
313  }
314 
315 
316  // put the collections in the event
317  evt.put(std::move(temptruelist));
318  evt.put(std::move(fluxcol));
319  evt.put(std::move(gtruthcol));
320  evt.put(std::move(assns));
321  evt.put(std::move(gassns));
322  evt.put(std::move(flshlcol));
323  evt.put(std::move(temppartlist));
324  evt.put(std::move(passns));
325  // int dum;
326  // std::cin >> dum;
327 
328  delete [] Offset ;
329  delete [] OffsetParticles;
330 
331  }
void SetTrackId(const int trackid)
Definition: FLSHit.h:101
static bool CreateAssn(art::EDProducer const &prod, art::Event &evt, std::vector< T > &a, art::Ptr< U > b, art::Assns< T, U > &assn, size_t indx=UINT_MAX, std::string const &instance=std::string())
Create a 1 to 1 association between a new product and one already in the event.
std::vector< sim::FLSHit > fHits
Definition: FLSHitList.h:21
std::string fFirstG4Collection
Label on the main collection.
A single unit of energy deposition in the liquid scintillator.
Definition: FLSHit.h:19
int fIsFirstCollectionCosmic
Label on the main collection.
Loaders::FluxType flux
ProductID put(std::unique_ptr< PROD > &&product)
Definition: Event.h:102
TString part[npart]
Definition: Style.C:32
void hits()
Definition: readHits.C:15
Float_t d
Definition: plot.C:236
const double j
Definition: BetheBloch.cxx:29
std::string fSecondCollection
Label on the main collection.
OStream cout
Definition: OStream.cxx:6
void SetGvtx(double *v)
Definition: MCParticle.cxx:120
A vector of FLSHit from single neutrino interaction.
Definition: FLSHitList.h:13
bool getByLabel(std::string const &label, std::string const &productInstanceName, Handle< PROD > &result) const
Definition: DataViewImpl.h:344
void Clear()
Clear the FLS hit.
Definition: FLSHit.cxx:39
Event generator information.
Definition: MCTruth.h:32
size_t size() const
void art::Consumer::showMissingConsumes ( ) const
protectedinherited

Referenced by art::RootOutput::endJob().

void art::Consumer::validateConsumedProduct ( BranchType const  bt,
ProductInfo const &  pi 
)
protectedinherited

Member Data Documentation

std::string MergeCollections::MergeCollections::fFirstG4Collection
protected

Label on the main collection.

Definition at line 47 of file MergeCollections_module.cc.

std::string MergeCollections::MergeCollections::fFirstGenCollection
protected

Definition at line 46 of file MergeCollections_module.cc.

int MergeCollections::MergeCollections::fIsFirstCollectionCosmic
protected

Label on the main collection.

Definition at line 49 of file MergeCollections_module.cc.

std::string MergeCollections::MergeCollections::fSecondCollection
protected

Label on the main collection.

Definition at line 48 of file MergeCollections_module.cc.


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