ATLAS Offline Software
Public Member Functions | Public Attributes | List of all members
Trk::MaterialComposition Struct Reference

#include <Material.h>

Inheritance diagram for Trk::MaterialComposition:
Collaboration diagram for Trk::MaterialComposition:

Public Member Functions

 MaterialComposition ()
 default constructors More...
 
 MaterialComposition (const MaterialComposition &)=default
 
 MaterialComposition (MaterialComposition &&)=default
 
MaterialCompositionoperator= (const MaterialComposition &)=default
 
MaterialCompositionoperator= (MaterialComposition &&)=default
 
 ~MaterialComposition ()
 
 MaterialComposition (const std::vector< unsigned char > &iel, const std::vector< unsigned char > &ifrac)
 constructor for persistency (1), size optimized More...
 
 MaterialComposition (const std::vector< std::pair< unsigned char, unsigned char > > &efracs)
 constructor for persistency (2), size optimized More...
 
 MaterialComposition (const std::vector< ElementFraction > &mc)
 Copy constructor from base class. More...
 
MaterialCompositionoperator= (const std::vector< ElementFraction > &mc)
 assignment operator from base class More...
 
MaterialCompositionoperator= (const std::vector< std::pair< unsigned char, unsigned char > > &efracs)
 assignment operator for persistency (2) More...
 

Public Attributes

elements
 STL member. More...
 

Detailed Description

Definition at line 61 of file Material.h.

Constructor & Destructor Documentation

◆ MaterialComposition() [1/6]

Trk::MaterialComposition::MaterialComposition ( )
inline

default constructors

Definition at line 64 of file Material.h.

64 : std::vector<ElementFraction>() {}

◆ MaterialComposition() [2/6]

Trk::MaterialComposition::MaterialComposition ( const MaterialComposition )
default

◆ MaterialComposition() [3/6]

Trk::MaterialComposition::MaterialComposition ( MaterialComposition &&  )
default

◆ ~MaterialComposition()

Trk::MaterialComposition::~MaterialComposition ( )
inline

Definition at line 69 of file Material.h.

69 {}

◆ MaterialComposition() [4/6]

Trk::MaterialComposition::MaterialComposition ( const std::vector< unsigned char > &  iel,
const std::vector< unsigned char > &  ifrac 
)
inline

constructor for persistency (1), size optimized

Definition at line 72 of file Material.h.

73  {
74  reserve(iel.size());
75  for (std::size_t elvc = 0; elvc < iel.size() && !ifrac.empty(); ++elvc)
76  push_back(ElementFraction(iel[elvc], ifrac[elvc]));
77  }

◆ MaterialComposition() [5/6]

Trk::MaterialComposition::MaterialComposition ( const std::vector< std::pair< unsigned char, unsigned char > > &  efracs)
inline

constructor for persistency (2), size optimized

Definition at line 80 of file Material.h.

81  {
82  reserve(efracs.size());
83  for (auto& efracIt : efracs) push_back(efracIt);
84  }

◆ MaterialComposition() [6/6]

Trk::MaterialComposition::MaterialComposition ( const std::vector< ElementFraction > &  mc)
inline

Copy constructor from base class.

Definition at line 87 of file Material.h.

88  : std::vector<ElementFraction>(mc) {}

Member Function Documentation

◆ operator=() [1/4]

MaterialComposition& Trk::MaterialComposition::operator= ( const MaterialComposition )
default

◆ operator=() [2/4]

MaterialComposition& Trk::MaterialComposition::operator= ( const std::vector< ElementFraction > &  mc)
inline

assignment operator from base class

Definition at line 91 of file Material.h.

91  {
92  if (this != &mc) {
94  }
95  return (*this);
96  }

◆ operator=() [3/4]

MaterialComposition& Trk::MaterialComposition::operator= ( const std::vector< std::pair< unsigned char, unsigned char > > &  efracs)
inline

assignment operator for persistency (2)

Definition at line 99 of file Material.h.

100  {
101  clear();
102  reserve(efracs.size());
103  for (auto& efracIt : efracs) push_back(efracIt);
104  return (*this);
105  }

◆ operator=() [4/4]

MaterialComposition& Trk::MaterialComposition::operator= ( MaterialComposition &&  )
default

Member Data Documentation

◆ elements

T std::vector< T >::elements
inherited

STL member.


The documentation for this struct was generated from the following file:
columnar::operator=
AccessorTemplate & operator=(AccessorTemplate &&that)
Definition: VectorColumn.h:88
mc
Definition: mc.PG_single_nu_valid.py:1
VKalVrtAthena::varHolder_detail::clear
void clear(T &var)
Definition: NtupleVars.h:48