CMS 3D CMS Logo

BranchEntryDescription.cc

Go to the documentation of this file.
00001 #include "DataFormats/Provenance/interface/BranchEntryDescription.h"
00002 #include "DataFormats/Provenance/interface/ModuleDescriptionRegistry.h"
00003 #include "DataFormats/Provenance/interface/EntryDescriptionRegistry.h"
00004 #include "FWCore/Utilities/interface/Algorithms.h"
00005 #include <ostream>
00006 
00007 /*----------------------------------------------------------------------
00008 
00009 ----------------------------------------------------------------------*/
00010 
00011 namespace edm {
00012   BranchEntryDescription::BranchEntryDescription() :
00013     productID_(),
00014     parents_(),
00015     cid_(),
00016     status_(Success),
00017     isPresent_(false),
00018     moduleDescriptionID_()
00019   { }
00020 
00021   BranchEntryDescription::BranchEntryDescription(ProductID const& pid,
00022          BranchEntryDescription::CreatorStatus const& status) :
00023     productID_(pid),
00024     parents_(),
00025     cid_(),
00026     status_(status),
00027     isPresent_(status == Success),
00028     moduleDescriptionID_()
00029   { }
00030 
00031   void
00032   BranchEntryDescription::write(std::ostream& os) const {
00033     // This is grossly inadequate, but it is not critical for the
00034     // first pass.
00035     os << "Product ID = " << productID_ << '\n';
00036     os << "CreatorStatus = " << creatorStatus() << '\n';
00037     os << "Module Description ID = " << moduleDescriptionID() << '\n';
00038     os << "Is Present = " << isPresent() << std::endl;
00039   }
00040     
00041   bool
00042   operator==(BranchEntryDescription const& a, BranchEntryDescription const& b) {
00043     return
00044       a.productID() == b.productID()
00045       && a.creatorStatus() == b.creatorStatus()
00046       && a.parents() == b.parents()
00047       && a.moduleDescriptionID() == b.moduleDescriptionID();
00048   }
00049 
00050   std::auto_ptr<EntryDescription>
00051   BranchEntryDescription::convertToEntryDescription() const {
00052     std::auto_ptr<EntryDescription> entryDescription(new EntryDescription);
00053     entryDescription->parents() = parents();
00054     entryDescription->moduleDescriptionID() = moduleDescriptionID();
00055     return entryDescription;
00056   }
00057 }

Generated on Tue Jun 9 17:31:37 2009 for CMSSW by  doxygen 1.5.4