CbmRoot
Loading...
Searching...
No Matches
cbm::algo::kf::Target< T > Class Template Reference

A geometry layer in the target region. More...

#include <KfTarget.h>

Inheritance diagram for cbm::algo::kf::Target< T >:
[legend]
Collaboration diagram for cbm::algo::kf::Target< T >:
[legend]

Public Member Functions

 Target ()=default
 Default constructor.
 
 Target (double x, double y, double z, double dz, double r)
 Constructor from parameters.
 
template<typename I >
 Target (const Target< I > &other)
 Copy constructor.
 
 ~Target ()=default
 Destructor.
 
Targetoperator= (const Target &other)=default
 Copy assignment operator.
 
const T & GetX () const
 Gets x-coordinate of the nominal target center.
 
const T & GetY () const
 Gets y-coordinate of the nominal target center.
 
const T & GetZ () const
 Gets z-coordinate of the nominal target center.
 
const T & GetDz () const
 Gets target half-thickness.
 
const T & GetR () const
 Gets transverse size of target.
 
const MaterialMapGetMaterial () const
 Gets material map.
 
void SetMaterial (const MaterialMap &material)
 Sets material map.
 
void SetMaterial (MaterialMap &&material)
 Sets material map (move semantics)
 
void SetX (const T &x)
 Sets x-coordinate of the nominal target center.
 
void SetY (const T &y)
 Sets y-coordinate of the nominal target center.
 
void SetZ (const T &z)
 Sets x-coordinate of the nominal target center.
 
void SetDz (const T &dz)
 Sets target half-thickness.
 
void SetR (const T &r)
 Sets target transverse size.
 
std::string ToString (int indentLevel=0, int vebose=1) const
 String representation of the class.
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int)
 

Private Attributes

MaterialMap fMaterial {}
 Material map in the target region.
 
fX {defs::Undef<T>}
 x-coordinate of the nominal target center [cm]
 
fY {defs::Undef<T>}
 y-coordinate of the nominal target center [cm]
 
fZ {defs::Undef<T>}
 z-coordinate of the nominal target center [cm]
 
fDz {defs::Undef<T>}
 Half-thickness of the target [cm].
 
fR {defs::Undef<T>}
 Half-thickness of the target [cm].
 

Friends

template<typename I >
class Target
 
class boost::serialization::access
 Serialization method.
 

Detailed Description

template<typename T>
class cbm::algo::kf::Target< T >

A geometry layer in the target region.

Template Parameters
TUnderlying floating-point type

Definition at line 25 of file KfTarget.h.

Constructor & Destructor Documentation

◆ Target() [1/3]

template<typename T >
cbm::algo::kf::Target< T >::Target ( )
default

Default constructor.

◆ Target() [2/3]

template<typename T >
Target::Target ( double x,
double y,
double z,
double dz,
double r )

Constructor from parameters.

Parameters
xx-coordinate of the nominal target center [cm]
yy-coordinate of the nominal target center [cm]
zz-coordinate of the nominal target center [cm]
dzhalf-thickness of the target [cm]
rsize of target

Definition at line 20 of file KfTarget.cxx.

◆ Target() [3/3]

template<typename T >
template<typename I >
cbm::algo::kf::Target< T >::Target ( const Target< I > & other)
inline

Copy constructor.

Template Parameters
IUnderlying floating-point type of the source

Definition at line 44 of file KfTarget.h.

◆ ~Target()

template<typename T >
cbm::algo::kf::Target< T >::~Target ( )
default

Destructor.

Member Function Documentation

◆ GetDz()

template<typename T >
const T & cbm::algo::kf::Target< T >::GetDz ( ) const
inline

Gets target half-thickness.

Definition at line 70 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::Init().

◆ GetMaterial()

template<typename T >
const MaterialMap & cbm::algo::kf::Target< T >::GetMaterial ( ) const
inline

Gets material map.

Definition at line 76 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::StoreMaterial().

◆ GetR()

template<typename T >
const T & cbm::algo::kf::Target< T >::GetR ( ) const
inline

Gets transverse size of target.

Definition at line 73 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::Init().

◆ GetX()

template<typename T >
const T & cbm::algo::kf::Target< T >::GetX ( ) const
inline

Gets x-coordinate of the nominal target center.

Definition at line 61 of file KfTarget.h.

◆ GetY()

template<typename T >
const T & cbm::algo::kf::Target< T >::GetY ( ) const
inline

Gets y-coordinate of the nominal target center.

Definition at line 64 of file KfTarget.h.

◆ GetZ()

template<typename T >
const T & cbm::algo::kf::Target< T >::GetZ ( ) const
inline

Gets z-coordinate of the nominal target center.

Definition at line 67 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::Init().

◆ operator=()

template<typename T >
Target & cbm::algo::kf::Target< T >::operator= ( const Target< T > & other)
default

Copy assignment operator.

◆ serialize()

template<typename T >
template<class Archive >
void cbm::algo::kf::Target< T >::serialize ( Archive & ar,
const unsigned int  )
inlineprivate

Definition at line 115 of file KfTarget.h.

◆ SetDz()

template<typename T >
void cbm::algo::kf::Target< T >::SetDz ( const T & dz)
inline

Sets target half-thickness.

Parameters
dzhalf-thickness [cm]

Definition at line 100 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::SetTargetProperty().

◆ SetMaterial() [1/2]

template<typename T >
void Target::SetMaterial ( const MaterialMap & material)

Sets material map.

Parameters
materialMaterial map

Definition at line 32 of file KfTarget.cxx.

References cbm::algo::kf::MaterialMap::IsUndefined().

Referenced by cbm::algo::kf::SetupBuilder::Init(), and cbm::algo::kf::SetupBuilder::LoadMaterial().

◆ SetMaterial() [2/2]

template<typename T >
void Target::SetMaterial ( MaterialMap && material)

Sets material map (move semantics)

Parameters
materialMaterial map

Definition at line 43 of file KfTarget.cxx.

◆ SetR()

template<typename T >
void cbm::algo::kf::Target< T >::SetR ( const T & r)
inline

Sets target transverse size.

Transverse size of target [cm]

Definition at line 104 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::SetTargetProperty().

◆ SetX()

template<typename T >
void cbm::algo::kf::Target< T >::SetX ( const T & x)
inline

Sets x-coordinate of the nominal target center.

Parameters
xx-coordinate [cm]

Definition at line 88 of file KfTarget.h.

References x.

Referenced by cbm::algo::kf::SetupBuilder::SetTargetProperty().

◆ SetY()

template<typename T >
void cbm::algo::kf::Target< T >::SetY ( const T & y)
inline

Sets y-coordinate of the nominal target center.

Parameters
yy-coordinate [cm]

Definition at line 92 of file KfTarget.h.

References y.

Referenced by cbm::algo::kf::SetupBuilder::SetTargetProperty().

◆ SetZ()

template<typename T >
void cbm::algo::kf::Target< T >::SetZ ( const T & z)
inline

Sets x-coordinate of the nominal target center.

Parameters
zx-coordinate [cm]

Definition at line 96 of file KfTarget.h.

Referenced by cbm::algo::kf::SetupBuilder::SetTargetProperty().

◆ ToString()

template<typename T >
std::string Target::ToString ( int indentLevel = 0,
int vebose = 1 ) const

String representation of the class.

Parameters
indentLevelIndent level of the string output
verboseVerbosity level

Definition at line 54 of file KfTarget.cxx.

References cbm::algo::kf::utils::simd::Cast().

Friends And Related Symbol Documentation

◆ boost::serialization::access

template<typename T >
friend class boost::serialization::access
friend

Serialization method.

Definition at line 113 of file KfTarget.h.

◆ Target

template<typename T >
template<typename I >
friend class Target
friend

Definition at line 27 of file KfTarget.h.

Member Data Documentation

◆ fDz

template<typename T >
T cbm::algo::kf::Target< T >::fDz {defs::Undef<T>}
private

Half-thickness of the target [cm].

Definition at line 129 of file KfTarget.h.

◆ fMaterial

template<typename T >
MaterialMap cbm::algo::kf::Target< T >::fMaterial {}
private

Material map in the target region.

Definition at line 125 of file KfTarget.h.

◆ fR

template<typename T >
T cbm::algo::kf::Target< T >::fR {defs::Undef<T>}
private

Half-thickness of the target [cm].

Definition at line 130 of file KfTarget.h.

◆ fX

template<typename T >
T cbm::algo::kf::Target< T >::fX {defs::Undef<T>}
private

x-coordinate of the nominal target center [cm]

Definition at line 126 of file KfTarget.h.

◆ fY

template<typename T >
T cbm::algo::kf::Target< T >::fY {defs::Undef<T>}
private

y-coordinate of the nominal target center [cm]

Definition at line 127 of file KfTarget.h.

◆ fZ

template<typename T >
T cbm::algo::kf::Target< T >::fZ {defs::Undef<T>}
private

z-coordinate of the nominal target center [cm]

Definition at line 128 of file KfTarget.h.


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