MARLEY (Model of Argon Reaction Low Energy Yields) v2.0.0
A Monte Carlo event generator for tens-of-MeV neutrino interactions
Loading...
Searching...
No Matches
HepMC3::VectorULongAttribute Class Reference

Attribute that holds a vector of unsigned integers of type unsigned long. More...

#include <Attribute.h>

Inheritance diagram for HepMC3::VectorULongAttribute:
HepMC3::Attribute

Public Member Functions

 VectorULongAttribute ()
 Default constructor.
 
 VectorULongAttribute (std::vector< unsigned long > val)
 Constructor initializing attribute value.
 
bool from_string (const std::string &att) override
 Implementation of Attribute::from_string.
 
void set_value (const std::vector< unsigned long > &i)
 set the value associated to this Attribute.
 
bool to_string (std::string &att) const override
 Implementation of Attribute::to_string.
 
std::vector< unsigned long > value () const
 get the value associated to this Attribute.
 
- Public Member Functions inherited from HepMC3::Attribute
 Attribute ()
 Default constructor.
 
virtual ~Attribute ()
 Virtual destructor.
 
const GenEventevent () const
 
virtual bool init ()
 Optionally initialize the attribute after from_string.
 
virtual bool init (const GenRunInfo &)
 Optionally initialize the attribute after from_string.
 
bool is_parsed () const
 Check if this attribute is parsed.
 
GenParticlePtr particle ()
 
ConstGenParticlePtr particle () const
 
const std::string & unparsed_string () const
 Get unparsed string.
 
GenVertexPtr vertex ()
 
ConstGenVertexPtr vertex () const
 

Additional Inherited Members

- Protected Member Functions inherited from HepMC3::Attribute
 Attribute (const std::string &st)
 Protected constructor that allows to set string.
 
void set_is_parsed (bool flag)
 Set is_parsed flag.
 
void set_unparsed_string (const std::string &st)
 Set unparsed string.
 

Detailed Description

Attribute that holds a vector of unsigned integers of type unsigned long.

Definition at line 944 of file Attribute.h.

Constructor & Destructor Documentation

◆ VectorULongAttribute() [1/2]

HepMC3::VectorULongAttribute::VectorULongAttribute ( )
inline

Default constructor.

Definition at line 948 of file Attribute.h.

948:Attribute(),m_val() {}
Attribute()
Default constructor.
Definition Attribute.h:51

References HepMC3::Attribute::Attribute().

◆ VectorULongAttribute() [2/2]

HepMC3::VectorULongAttribute::VectorULongAttribute ( std::vector< unsigned long > val)
inline

Constructor initializing attribute value.

Definition at line 951 of file Attribute.h.

951:Attribute(),m_val(val) {}

References HepMC3::Attribute::Attribute().

Member Function Documentation

◆ from_string()

bool HepMC3::VectorULongAttribute::from_string ( const std::string & att)
inlineoverridevirtual

Implementation of Attribute::from_string.

Implements HepMC3::Attribute.

Definition at line 954 of file Attribute.h.

954 {
955 unsigned long datafoo;
956 m_val.clear();
957 std::stringstream datastream(att);
958 while (datastream >> datafoo) m_val.emplace_back(datafoo);
959 set_is_parsed(true);
960 return true;
961 }
void set_is_parsed(bool flag)
Set is_parsed flag.
Definition Attribute.h:134

References HepMC3::Attribute::set_is_parsed().

◆ set_value()

void HepMC3::VectorULongAttribute::set_value ( const std::vector< unsigned long > & i)
inline

set the value associated to this Attribute.

Definition at line 976 of file Attribute.h.

976 {
977 m_val = i;
978 set_is_parsed(true);
979 }

References HepMC3::Attribute::set_is_parsed().

◆ to_string()

bool HepMC3::VectorULongAttribute::to_string ( std::string & att) const
inlineoverridevirtual

Implementation of Attribute::to_string.

Implements HepMC3::Attribute.

Definition at line 964 of file Attribute.h.

964 {
965 att.clear();
966 for (const auto& a: m_val) {if (att.length()) att+=" "; att+=std::to_string(a);}
967 return true;
968 }

◆ value()

std::vector< unsigned long > HepMC3::VectorULongAttribute::value ( ) const
inline

get the value associated to this Attribute.

Definition at line 971 of file Attribute.h.

971 {
972 return m_val;
973 }

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