CMS 3D CMS Logo

edm::LuminosityBlockAuxiliary Struct Reference

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

List of all members.

Public Member Functions

Timestamp const & beginTime () const
Timestamp const & endTime () const
LuminosityBlockID const & id () const
LuminosityBlockNumber_t luminosityBlock () const
 LuminosityBlockAuxiliary (RunNumber_t const &theRun, LuminosityBlockNumber_t const &theLumi, Timestamp const &theTime, Timestamp const &theEndTime)
 LuminosityBlockAuxiliary (LuminosityBlockID const &theId, Timestamp const &theTime, Timestamp const &theEndTime)
 LuminosityBlockAuxiliary ()
bool mergeAuxiliary (LuminosityBlockAuxiliary const &newAux)
ProcessHistoryIDprocessHistoryID () const
RunNumber_t run () const
void setEndTime (Timestamp const &time)
void write (std::ostream &os) const
 ~LuminosityBlockAuxiliary ()

Public Attributes

Timestamp beginTime_
Timestamp endTime_
LuminosityBlockID id_
ProcessHistoryID processHistoryID_


Detailed Description

Definition at line 15 of file LuminosityBlockAuxiliary.h.


Constructor & Destructor Documentation

edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary (  )  [inline]

Definition at line 16 of file LuminosityBlockAuxiliary.h.

00016                                :
00017         processHistoryID_(),
00018         id_(),
00019         beginTime_(),
00020         endTime_() {}
    LuminosityBlockAuxiliary(LuminosityBlockID const& theId,

edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary ( LuminosityBlockID const &  theId,
Timestamp const &  theTime,
Timestamp const &  theEndTime 
) [inline]

Definition at line 21 of file LuminosityBlockAuxiliary.h.

00023                                                           :
00024         processHistoryID_(),
00025         id_(theId),
00026         beginTime_(theTime),
00027         endTime_(theEndTime) {}
    LuminosityBlockAuxiliary(RunNumber_t const& theRun,

edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary ( RunNumber_t const &  theRun,
LuminosityBlockNumber_t const &  theLumi,
Timestamp const &  theTime,
Timestamp const &  theEndTime 
) [inline]

Definition at line 28 of file LuminosityBlockAuxiliary.h.

00031                                                           :
00032         processHistoryID_(),
00033         id_(theRun, theLumi),
00034         beginTime_(theTime),
00035         endTime_(theEndTime) {}
    ~LuminosityBlockAuxiliary() {}

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

Definition at line 36 of file LuminosityBlockAuxiliary.h.

00036 {}


Member Function Documentation

Timestamp const& edm::LuminosityBlockAuxiliary::beginTime (  )  const [inline]

Definition at line 42 of file LuminosityBlockAuxiliary.h.

References beginTime_.

Referenced by edm::LuminosityBlock::beginTime(), edm::LuminosityBlockPrincipal::beginTime(), mergeAuxiliary(), and edm::RootFile::readLumi().

00042 {return beginTime_;}

Timestamp const& edm::LuminosityBlockAuxiliary::endTime (  )  const [inline]

Definition at line 43 of file LuminosityBlockAuxiliary.h.

References endTime_.

Referenced by edm::LuminosityBlock::endTime(), edm::LuminosityBlockPrincipal::endTime(), and mergeAuxiliary().

00043 {return endTime_;}

LuminosityBlockID const& edm::LuminosityBlockAuxiliary::id ( void   )  const [inline]

Definition at line 41 of file LuminosityBlockAuxiliary.h.

References id_.

Referenced by edm::LuminosityBlock::id(), edm::LuminosityBlockPrincipal::id(), luminosityBlock(), mergeAuxiliary(), and run().

00041 {return id_;}

LuminosityBlockNumber_t edm::LuminosityBlockAuxiliary::luminosityBlock (  )  const [inline]

Definition at line 39 of file LuminosityBlockAuxiliary.h.

References id(), and edm::LuminosityBlockID::luminosityBlock().

Referenced by edm::RootFile::fillFileIndex(), edm::RootFile::fillLumiAuxiliary(), edm::LuminosityBlockPrincipal::luminosityBlock(), edm::LuminosityBlock::luminosityBlock(), edm::RootFile::readLumi(), and edm::RootOutputFile::writeLuminosityBlock().

00039 {return id().luminosityBlock();}

bool edm::LuminosityBlockAuxiliary::mergeAuxiliary ( LuminosityBlockAuxiliary const &  newAux  ) 

Definition at line 18 of file LuminosityBlockAuxiliary.cc.

References beginTime(), beginTime_, endTime(), endTime_, id(), id_, and edm::Timestamp::invalidTimestamp().

Referenced by edm::LuminosityBlockPrincipal::mergeLuminosityBlock().

00018                                                                                  {
00019     if (beginTime_ == Timestamp::invalidTimestamp() ||
00020         newAux.beginTime() == Timestamp::invalidTimestamp()) {
00021       beginTime_ = Timestamp::invalidTimestamp();
00022     }
00023     else if (newAux.beginTime() < beginTime_) {
00024       beginTime_ = newAux.beginTime();
00025     }
00026    
00027     if (endTime_ == Timestamp::invalidTimestamp() ||
00028         newAux.endTime() == Timestamp::invalidTimestamp()) {
00029       endTime_ = Timestamp::invalidTimestamp();
00030     }
00031     else if (newAux.endTime() > endTime_) {
00032       endTime_ = newAux.endTime();
00033     }
00034 
00035     // Keep the process history ID that is in the preexisting principal
00036     // It may have been updated to include the current process.
00037     // There is one strange other case where the two ProcessHistoryIDs
00038     // could be different which should not be important and we just ignore.
00039     // There could have been previous processes which only dropped products.
00040     // These processes could have dropped the same branches but had different
00041     // process names ... Ignore this.
00042 
00043     if (id_ != newAux.id()) return false;
00044     return true;
00045   }

ProcessHistoryID& edm::LuminosityBlockAuxiliary::processHistoryID (  )  const [inline]

Definition at line 38 of file LuminosityBlockAuxiliary.h.

References processHistoryID_.

00038 {return processHistoryID_;}

RunNumber_t edm::LuminosityBlockAuxiliary::run (  )  const [inline]

Definition at line 40 of file LuminosityBlockAuxiliary.h.

References id(), and edm::LuminosityBlockID::run().

Referenced by edm::RootFile::fillFileIndex(), edm::RootFile::fillLumiAuxiliary(), edm::RootFile::readLumi(), edm::LuminosityBlock::run(), edm::LuminosityBlockPrincipal::run(), and edm::RootOutputFile::writeLuminosityBlock().

00040 {return id().run();}

void edm::LuminosityBlockAuxiliary::setEndTime ( Timestamp const &  time  )  [inline]

Definition at line 44 of file LuminosityBlockAuxiliary.h.

References endTime_, and edm::Timestamp::invalidTimestamp().

Referenced by edm::LuminosityBlockPrincipal::setEndTime().

00044                                            {
00045       if (endTime_ == Timestamp::invalidTimestamp()) endTime_ = time;
00046     }

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

Definition at line 12 of file LuminosityBlockAuxiliary.cc.

References lat::endl(), id_, and processHistoryID_.

Referenced by edm::operator<<().

00012                                                       {
00013     os << "Process History ID = " <<  processHistoryID_ << std::endl;
00014     os << id_ << std::endl;
00015   }


Member Data Documentation

Timestamp edm::LuminosityBlockAuxiliary::beginTime_

Definition at line 55 of file LuminosityBlockAuxiliary.h.

Referenced by beginTime(), edm::conversion(), mergeAuxiliary(), and edm::RootFile::readLumi().

Timestamp edm::LuminosityBlockAuxiliary::endTime_

Definition at line 56 of file LuminosityBlockAuxiliary.h.

Referenced by edm::conversion(), endTime(), mergeAuxiliary(), edm::RootFile::readLumi(), and setEndTime().

LuminosityBlockID edm::LuminosityBlockAuxiliary::id_

Definition at line 53 of file LuminosityBlockAuxiliary.h.

Referenced by edm::conversion(), edm::RootFile::fillLumiAuxiliary(), id(), mergeAuxiliary(), edm::RootFile::readLumi(), and write().

ProcessHistoryID edm::LuminosityBlockAuxiliary::processHistoryID_ [mutable]

Definition at line 51 of file LuminosityBlockAuxiliary.h.

Referenced by edm::LuminosityBlockPrincipal::aux(), edm::conversion(), processHistoryID(), edm::RootFile::readLumi(), and write().


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