CbmRoot
|
Magnetic field manager class. More...
#include <KfField.h>
Public Member Functions | |
Field (EFieldMode fldMode, EFieldType fldType) | |
Constructor. | |
template<typename I > | |
Field (const Field< I > &other) | |
Copy constructor. | |
~Field ()=default | |
Destructor. | |
Field & | operator= (const Field &other) |
Copy assignment operator. | |
FieldValue< T > | GetFieldValue (int sliceID, const T &x, const T &y) const |
Creates field value object. | |
EFieldType | GetFieldType () const |
Gets field type. | |
const FieldRegion< T > & | GetPrimVertexField () const |
Gets field region near primary vertex. | |
FieldRegion< T > | GetFieldRegion (const FieldValue< T > &b0, const T &z0, const FieldValue< T > &b1, const T &z1, const FieldValue< T > &b2, const T &z2) const |
Makes field region object. | |
void | RemoveSlice (int iLayer) |
Removes a field slice. | |
std::string | ToString (int indentLevel, int verbose) const |
String representation of the class. | |
Private Member Functions | |
Field ()=default | |
Default constructor. | |
template<class Archive > | |
void | load (Archive &ar, const unsigned int) |
Serialization load method. | |
template<class Archive > | |
void | save (Archive &ar, const unsigned int) const |
Serialization save method. | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Serialization method. | |
Private Attributes | |
std::optional< detail::FieldBase< T, EFieldMode::Intrpl > > | foFldIntrpl {std::nullopt} |
Interpolated field. | |
std::optional< detail::FieldBase< T, EFieldMode::Orig > > | foFldOrig {std::nullopt} |
Original field. | |
FieldRegion< T > | fPrimVertexField |
Field region near primary vertex (constant field is assumed) | |
EFieldType | fFieldType {EFieldType::Normal} |
Field type. | |
EFieldMode | fFieldMode |
Field mode. | |
Friends | |
template<typename > | |
class | Field |
class | FieldFactory |
class | boost::serialization::access |
Magnetic field manager class.
T | Underlying floating point type (float/double/fvec) |
|
inline |
Constructor.
fldMode | Field mode |
Definition at line 197 of file KfField.h.
References cbm::algo::kf::Intrpl, and cbm::algo::kf::Orig.
|
inline |
Copy constructor.
Definition at line 210 of file KfField.h.
References cbm::algo::kf::Intrpl, and cbm::algo::kf::Orig.
|
default |
Destructor.
|
privatedefault |
Default constructor.
|
inline |
Makes field region object.
b0 | Field value in the first node [kG] |
z0 | First node z-coordinate [cm] |
b1 | Field value in the first node [kG] |
z1 | Second node z-coordinate [cm] |
b2 | Field value in the first node [kG] |
z2 | Third node z-coordinate [cm] |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
Copy assignment operator.
Definition at line 227 of file KfField.h.
References cbm::algo::kf::Field< T >::fFieldMode, cbm::algo::kf::Field< T >::fFieldType, cbm::algo::kf::Field< T >::foFldIntrpl, cbm::algo::kf::Field< T >::foFldOrig, and cbm::algo::kf::Field< T >::fPrimVertexField.
void Field::RemoveSlice | ( | int | iLayer | ) |
Removes a field slice.
iLayer | Index of field slice |
Definition at line 56 of file KfField.cxx.
References cbm::algo::kf::Intrpl, and cbm::algo::kf::Orig.
|
inlineprivate |
|
inlineprivate |
std::string Field::ToString | ( | int | indentLevel, |
int | verbose ) const |
String representation of the class.
indentLevel | Indent level of the string output |
verbose | Verbosity level |
Definition at line 69 of file KfField.cxx.
References cbm::algo::kf::Intrpl, and cbm::algo::kf::Orig.
|
friend |
|
friend |
|
private |
Field mode.
Definition at line 322 of file KfField.h.
Referenced by cbm::algo::kf::Field< T >::operator=().
|
private |
Field type.
Definition at line 321 of file KfField.h.
Referenced by cbm::algo::kf::Field< T >::operator=().
|
private |
Interpolated field.
Definition at line 318 of file KfField.h.
Referenced by cbm::algo::kf::Field< T >::operator=().
|
private |
Original field.
Definition at line 319 of file KfField.h.
Referenced by cbm::algo::kf::Field< T >::operator=().
|
private |
Field region near primary vertex (constant field is assumed)
Definition at line 320 of file KfField.h.
Referenced by cbm::algo::kf::Field< T >::operator=().