CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Typedefs | Functions
lhef Namespace Reference

Classes

class  BranchingRatios
 
class  CBInputStream
 
class  CommonBlocks
 
class  Hadronisation
 
class  HEPEUP
 
class  HEPRUP
 
class  JetClustering
 
class  JetInput
 
class  JetMatching
 
class  JetMatchingMLM
 
class  LHEEvent
 
class  LHEProxy
 
class  LHEReader
 
class  LHERunInfo
 
class  Matching
 
class  SimpleMatrix
 
class  STLInputStream
 
class  StorageInputStream
 
class  StorageWrap
 
class  XMLDocument
 
class  XMLInputSourceWrapper
 
class  XMLSimpleStr
 
class  XMLUniStr
 

Typedefs

typedef XMLInputSourceWrapper
< CBInputStream
CBInputSource
 
typedef XMLInputSourceWrapper
< STLInputStream
STLInputSource
 
typedef XMLInputSourceWrapper
< StorageInputStream
StorageInputSource
 

Functions

static void attributesToDom (DOMElement *dom, const Attributes &attributes)
 
static std::vector< std::string > domToLines (const DOMNode *node)
 
static void fillHeader (LHERunInfo::Header &header, const char *data, int len=-1)
 
static void fillLines (std::vector< std::string > &lines, const char *data, int len=-1)
 
static void fixSubTree (HepMC::GenVertex *vertex, HepMC::FourVector &_time, std::set< const HepMC::GenVertex * > &visited)
 
static void invalidateTree (JetInput::ParticleBitmap &invalid, const JetInput::ParticleVector &p, const HepMC::GenVertex *v)
 
static bool isContained (const std::vector< unsigned int > &list, int id)
 
static void logFileAction (char const *msg, std::string const &fileName)
 
const bool operator< (const LHERunInfo::Process &lhs, const LHERunInfo::Process &rhs)
 
const bool operator== (const LHERunInfo::Process &lhs, const LHERunInfo::Process &rhs)
 
static unsigned int partIdx (const JetInput::ParticleVector &p, const HepMC::GenParticle *particle)
 
template<typename T >
static void pop (std::vector< T > &vec, unsigned int index)
 

Typedef Documentation

Definition at line 188 of file XMLUtils.h.

Definition at line 189 of file XMLUtils.h.

Definition at line 190 of file XMLUtils.h.

Function Documentation

static void lhef::attributesToDom ( DOMElement *  dom,
const Attributes &  attributes 
)
static

Definition at line 151 of file LHEReader.cc.

References i, mergeVDriftHistosByStation::name, and relativeConstraints::value.

Referenced by lhef::LHEReader::XMLHandler::startElement().

152 {
153  for(unsigned int i = 0; i < attributes.getLength(); i++) {
154  const XMLCh *name = attributes.getQName(i);
155  const XMLCh *value = attributes.getValue(i);
156 
157  dom->setAttribute(name, value);
158  }
159 }
int i
Definition: DBlmapReader.cc:9
list attributes
Definition: asciidump.py:415
static std::vector<std::string> lhef::domToLines ( const DOMNode *  node)
static

Definition at line 508 of file LHERunInfo.cc.

References fillLines(), AlCaHLTBitMon_ParallelJobs::p, lumiQueryAPI::q, and query::result.

Referenced by lhef::LHERunInfo::findHeader().

509 {
510  std::vector<std::string> result;
511  DOMImplementation *impl =
512  DOMImplementationRegistry::getDOMImplementation(
513  XMLUniStr("Core"));
514  std::auto_ptr<DOMWriter> writer(
515  static_cast<DOMImplementationLS*>(impl)->createDOMWriter());
516 
517  writer->setEncoding(XMLUniStr("UTF-8"));
518  XMLSimpleStr buffer(writer->writeToString(*node));
519 
520  const char *p = std::strchr((const char*)buffer, '>') + 1;
521  const char *q = std::strrchr(p, '<');
522  fillLines(result, p, q - p);
523 
524  return result;
525 }
tuple node
Definition: Node.py:50
tuple result
Definition: query.py:137
static void fillLines(std::vector< std::string > &lines, const char *data, int len=-1)
Definition: LHERunInfo.cc:491
static void lhef::fillHeader ( LHERunInfo::Header &  header,
const char *  data,
int  len = -1 
)
static

Definition at line 161 of file LHEReader.cc.

References LHERunInfoProduct::Header::addLine(), data, end, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by lhef::LHEReader::XMLHandler::comment(), and lhef::LHEReader::XMLHandler::endElement().

163 {
164  const char *end = len >= 0 ? (data + len) : 0;
165  while(*data && (!end || data < end)) {
166  std::size_t len = std::strcspn(data, "\r\n");
167  if (end && data + len > end)
168  len = end - data;
169  if (data[len] == '\r' && data[len + 1] == '\n')
170  len += 2;
171  else if (data[len])
172  len++;
173  header.addLine(std::string(data, len));
174  data += len;
175  }
176 }
#define end
Definition: vmac.h:37
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
static void lhef::fillLines ( std::vector< std::string > &  lines,
const char *  data,
int  len = -1 
)
static

Definition at line 491 of file LHERunInfo.cc.

References data, end, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by domToLines().

493 {
494  const char *end = len >= 0 ? (data + len) : 0;
495  while(*data && (!end || data < end)) {
496  std::size_t len = std::strcspn(data, "\r\n");
497  if (end && data + len > end)
498  len = end - data;
499  if (data[len] == '\r' && data[len + 1] == '\n')
500  len += 2;
501  else if (data[len])
502  len++;
503  lines.push_back(std::string(data, len));
504  data += len;
505  }
506 }
#define end
Definition: vmac.h:37
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
static void lhef::fixSubTree ( HepMC::GenVertex *  vertex,
HepMC::FourVector &  _time,
std::set< const HepMC::GenVertex * > &  visited 
)
static

Definition at line 488 of file LHEEvent.cc.

References cond::rpcobgas::time.

Referenced by lhef::LHEEvent::fixHepMCEventTimeOrdering().

491 {
492  HepMC::FourVector time = _time;
493  HepMC::FourVector curTime = vertex->position();
494  bool needsFixup = curTime.t() < time.t();
495 
496  if (!visited.insert(vertex).second && !needsFixup)
497  return;
498 
499  if (needsFixup)
500  vertex->set_position(time);
501  else
502  time = curTime;
503 
504  for(HepMC::GenVertex::particles_out_const_iterator iter =
505  vertex->particles_out_const_begin();
506  iter != vertex->particles_out_const_end(); ++iter) {
507  HepMC::GenVertex *endVertex = (*iter)->end_vertex();
508  if (endVertex)
509  fixSubTree(endVertex, time, visited);
510  }
511 }
static void fixSubTree(HepMC::GenVertex *vertex, HepMC::FourVector &_time, std::set< const HepMC::GenVertex * > &visited)
Definition: LHEEvent.cc:488
static void lhef::invalidateTree ( JetInput::ParticleBitmap &  invalid,
const JetInput::ParticleVector &  p,
const HepMC::GenVertex *  v 
)
static

Definition at line 143 of file JetInput.cc.

References customizeTrackingMonitorSeedNumber::idx, and partIdx().

Referenced by lhef::JetInput::operator()().

146 {
147  if (!v)
148  return;
149 
150  for(HepMC::GenVertex::particles_out_const_iterator iter =
151  v->particles_out_const_begin();
152  iter != v->particles_out_const_end(); ++iter) {
153  unsigned int idx = partIdx(p, *iter);
154 
155  if (invalid[idx])
156  continue;
157 
158  invalid[idx] = true;
159 
160  const HepMC::GenVertex *v = (*iter)->end_vertex();
161  invalidateTree(invalid, p, v);
162  }
163 }
static unsigned int partIdx(const InputGenJetsParticleSelector::ParticleVector &p, const reco::Candidate *particle)
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
static void invalidateTree(InputGenJetsParticleSelector::ParticleBitmap &invalid, const InputGenJetsParticleSelector::ParticleVector &p, const reco::Candidate *particle)
static bool lhef::isContained ( const std::vector< unsigned int > &  list,
int  id 
)
inlinestatic

Definition at line 89 of file JetInput.cc.

Referenced by TopDecaySubset::checkWBosons(), lhef::JetInput::isExcludedFromResonances(), lhef::JetInput::isIgnored(), and lhef::JetInput::isResonance().

90 {
91  unsigned int absId = (unsigned int)(id > 0 ? id : -id);
92  std::vector<unsigned int>::const_iterator pos =
93  std::lower_bound(list.begin(), list.end(), absId);
94  return pos != list.end() && *pos == absId;
95 }
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run
static void lhef::logFileAction ( char const *  msg,
std::string const &  fileName 
)
static
const bool lhef::operator< ( const LHERunInfo::Process &  lhs,
const LHERunInfo::Process &  rhs 
)

Definition at line 657 of file LHERunInfo.cc.

References lhef::LHERunInfo::Process::process().

658 { return (lhs.process() < rhs.process()); }
const bool lhef::operator== ( const LHERunInfo::Process &  lhs,
const LHERunInfo::Process &  rhs 
)

Definition at line 654 of file LHERunInfo.cc.

References lhef::LHERunInfo::Process::process().

655 { return (lhs.process() == rhs.process()); }
static unsigned int lhef::partIdx ( const JetInput::ParticleVector &  p,
const HepMC::GenParticle *  particle 
)
static

Definition at line 130 of file JetInput.cc.

Referenced by lhef::JetInput::fromHardProcess(), lhef::JetInput::fromResonance(), lhef::JetInput::fromSignalVertex(), invalidateTree(), and lhef::JetInput::testPartonChildren().

132 {
133  JetInput::ParticleVector::const_iterator pos =
134  std::lower_bound(p.begin(), p.end(), particle);
135  if (pos == p.end() || *pos != particle)
136  throw cms::Exception("CorruptedData")
137  << "HepMC::GenEvent corrupted: Unlisted particles"
138  " in decay tree." << std::endl;
139 
140  return pos - p.begin();
141 }
template<typename T >
static void lhef::pop ( std::vector< T > &  vec,
unsigned int  index 
)
inlinestatic

Definition at line 150 of file LHEEvent.cc.

References findQualityFiles::size.

Referenced by lhef::LHEEvent::removeParticle().

151 {
152  unsigned int size = vec.size() - 1;
153  std::memmove(&vec[index], &vec[index + 1], (size - index) * sizeof(T));
154 }
long double T
tuple size
Write out results.