HepMC3 event record library
Public Types | Public Member Functions | Static Public Member Functions | Data Fields
Scale Struct Reference

Detailed Description

Store special scales from within a scales tag.

Definition at line 1313 of file LHEF.h.

#include <LHEF.h>

+ Inheritance diagram for Scale:
+ Collaboration diagram for Scale:

Public Types

typedef XMLTag::AttributeMap AttributeMap
 

Public Member Functions

 Scale (std::string st="veto", int emtr=0, double sc=0.0)
 
 Scale (const XMLTag &tag)
 
void print (std::ostream &file) const
 
bool getattr (std::string n, double &v, bool erase=true)
 
bool getattr (std::string n, bool &v, bool erase=true)
 
bool getattr (std::string n, long &v, bool erase=true)
 
bool getattr (std::string n, int &v, bool erase=true)
 
bool getattr (std::string n, std::string &v, bool erase=true)
 
void printattrs (std::ostream &file) const
 
void closetag (std::ostream &file, std::string tag) const
 

Static Public Member Functions

static std::string yes ()
 

Data Fields

std::string stype
 
int emitter
 
std::set< int > recoilers
 
std::set< int > emitted
 
double scale
 
XMLTag::AttributeMap attributes
 
std::string contents
 

Member Typedef Documentation

◆ AttributeMap

Convenient typedef.

Definition at line 350 of file LHEF.h.

Constructor & Destructor Documentation

◆ Scale() [1/2]

Scale ( std::string  st = "veto",
int  emtr = 0,
double  sc = 0.0 
)
inline

Empty constructor

Definition at line 1318 of file LHEF.h.

◆ Scale() [2/2]

Scale ( const XMLTag tag)
inline

Construct from an XML-tag.

Definition at line 1324 of file LHEF.h.

References XMLTag::contents, Scale::emitted, Scale::emitter, TagBase::getattr(), Scale::recoilers, Scale::scale, and Scale::stype.

Member Function Documentation

◆ closetag()

void closetag ( std::ostream &  file,
std::string  tag 
) const
inlineinherited

Print out end of tag marker. Print contents if not empty else print simple close tag.

Definition at line 445 of file LHEF.h.

References TagBase::contents.

◆ getattr() [1/5]

bool getattr ( std::string  n,
bool &  v,
bool  erase = true 
)
inlineinherited

Find an attribute named n and set the bool variable v to true if the corresponding value is "yes". Remove the correspondig attribute from the list if found and erase is true.

Returns
false if no attribute was found.

Definition at line 382 of file LHEF.h.

References TagBase::attributes.

◆ getattr() [2/5]

bool getattr ( std::string  n,
double &  v,
bool  erase = true 
)
inlineinherited

Find an attribute named n and set the double variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.

Returns
false if no attribute was found.

Definition at line 368 of file LHEF.h.

References TagBase::attributes.

◆ getattr() [3/5]

bool getattr ( std::string  n,
int &  v,
bool  erase = true 
)
inlineinherited

Find an attribute named n and set the long variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.

Returns
false if no attribute was found.

Definition at line 410 of file LHEF.h.

References TagBase::attributes.

◆ getattr() [4/5]

bool getattr ( std::string  n,
long &  v,
bool  erase = true 
)
inlineinherited

Find an attribute named n and set the long variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.

Returns
false if no attribute was found.

Definition at line 396 of file LHEF.h.

References TagBase::attributes.

◆ getattr() [5/5]

bool getattr ( std::string  n,
std::string &  v,
bool  erase = true 
)
inlineinherited

Find an attribute named n and set the string variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.

Returns
false if no attribute was found.

Definition at line 424 of file LHEF.h.

References TagBase::attributes.

◆ print()

void print ( std::ostream &  file) const
inline

◆ printattrs()

void printattrs ( std::ostream &  file) const
inlineinherited

print out ' name="value"' for all unparsed attributes.

Definition at line 435 of file LHEF.h.

References TagBase::attributes, and LHEF::oattr().

◆ yes()

static std::string yes ( )
inlinestaticinherited

Static string token for truth values.

Definition at line 467 of file LHEF.h.

Field Documentation

◆ attributes

XMLTag::AttributeMap attributes
inherited

The attributes of this tag;

Definition at line 457 of file LHEF.h.

◆ contents

std::string contents
mutableinherited

The contents of this tag.

Definition at line 462 of file LHEF.h.

◆ emitted

std::set<int> emitted

The set of emitted particles (PDG id) this applies to.

Definition at line 1404 of file LHEF.h.

◆ emitter

int emitter

The emitter this scale applies to. This is the index of a particle in HEPEUP (starting at 1). Zero corresponds to any particle in HEPEUP.

Definition at line 1394 of file LHEF.h.

◆ recoilers

std::set<int> recoilers

The set of recoilers for which this scale applies.

Definition at line 1399 of file LHEF.h.

◆ scale

double scale

The actual scale given.

Definition at line 1409 of file LHEF.h.

◆ stype

std::string stype

The type of scale this represents. Predefined values are "veto" and "start".

Definition at line 1387 of file LHEF.h.


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