CMS 3D CMS Logo

edm::EntryDescription Class Reference

#include <DataFormats/Provenance/interface/EntryDescription.h>

List of all members.

Public Member Functions

 EntryDescription ()
EntryDescriptionID id () const
ModuleDescriptionIDmoduleDescriptionID ()
ModuleDescriptionID const & moduleDescriptionID () const
std::vector< ProductID > & parents ()
std::vector< ProductID > const & parents () const
void write (std::ostream &os) const
 ~EntryDescription ()

Private Attributes

ModuleDescriptionID moduleDescriptionID_
std::vector< ProductIDparents_


Detailed Description

Definition at line 30 of file EntryDescription.h.


Constructor & Destructor Documentation

edm::EntryDescription::EntryDescription (  ) 

Definition at line 11 of file EntryDescription.cc.

00011                                      :
00012     parents_(),
00013     moduleDescriptionID_()
00014   { }

edm::EntryDescription::~EntryDescription (  )  [inline]

Definition at line 34 of file EntryDescription.h.

00034 {}


Member Function Documentation

EntryDescriptionID edm::EntryDescription::id ( void   )  const

Definition at line 17 of file EntryDescription.cc.

References cms::Digest::digest(), e, i, moduleDescriptionID_, and parents_.

Referenced by edm::RootFile::readEntryDescriptionTree().

00018   {
00019     // This implementation is ripe for optimization.
00020     std::ostringstream oss;
00021     oss << moduleDescriptionID_ << ' ';
00022     for (std::vector<ProductID>::const_iterator 
00023            i = parents_.begin(),
00024            e = parents_.end();
00025          i != e;
00026          ++i)
00027       {
00028         oss << *i << ' ';
00029       }
00030     
00031     std::string stringrep = oss.str();
00032     cms::Digest md5alg(stringrep);
00033     return EntryDescriptionID(md5alg.digest().toString());
00034   }

ModuleDescriptionID& edm::EntryDescription::moduleDescriptionID (  )  [inline]

Definition at line 45 of file EntryDescription.h.

References moduleDescriptionID_.

00045 {return moduleDescriptionID_;}

ModuleDescriptionID const& edm::EntryDescription::moduleDescriptionID (  )  const [inline]

Definition at line 44 of file EntryDescription.h.

References moduleDescriptionID_.

Referenced by edm::operator==(), edm::RootFile::readEntryDescriptionTree(), and write().

00044 {return moduleDescriptionID_;}

std::vector<ProductID>& edm::EntryDescription::parents (  )  [inline]

Definition at line 42 of file EntryDescription.h.

References parents_.

00042 {return parents_;}

std::vector<ProductID> const& edm::EntryDescription::parents (  )  const [inline]

Definition at line 41 of file EntryDescription.h.

References parents_.

Referenced by edm::operator==().

00041 {return parents_;}

void edm::EntryDescription::write ( std::ostream &  os  )  const

Definition at line 38 of file EntryDescription.cc.

References moduleDescriptionID().

Referenced by edm::operator<<().

00038                                               {
00039     // This is grossly inadequate, but it is not critical for the
00040     // first pass.
00041     os << "Module Description ID = " << moduleDescriptionID() << '\n';
00042   }


Member Data Documentation

ModuleDescriptionID edm::EntryDescription::moduleDescriptionID_ [private]

Definition at line 54 of file EntryDescription.h.

Referenced by id(), and moduleDescriptionID().

std::vector<ProductID> edm::EntryDescription::parents_ [private]

Definition at line 50 of file EntryDescription.h.

Referenced by id(), and parents().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:40:40 2009 for CMSSW by  doxygen 1.5.4