ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
GeoStraightAccSection Class Reference

Record of All Electrode Straight Pieces. More...

#include <GeoStraightAccSection.h>

Collaboration diagram for GeoStraightAccSection:

Public Member Functions

 GeoStraightAccSection ()
 
 ~GeoStraightAccSection ()
 
const double & XCent (int stackid, int cellid) const
 
const double & YCent (int stackid, int cellid) const
 
const double & Cosu (int stackid, int cellid) const
 
const double & Sinu (int stackid, int cellid) const
 
const double & HalfLength (int stackid, int cellid) const
 
double & XCent (int stackid, int cellid)
 
double & YCent (int stackid, int cellid)
 
double & Cosu (int stackid, int cellid)
 
double & Sinu (int stackid, int cellid)
 
double & HalfLength (int stackid, int cellid)
 
void setHalfLength (int stackid, double halfLength)
 
void setTransform (int stackid, GeoXF::TRANSFUNCTION TXE)
 

Private Member Functions

 GeoStraightAccSection (const GeoStraightAccSection &)
 
GeoStraightAccSectionoperator= (const GeoStraightAccSection &)
 

Private Attributes

std::unique_ptr< Clockwork > m_c
 

Detailed Description

Record of All Electrode Straight Pieces.

This class records the position and angles of all of the electrode straight sections. Initialization is somewhat special. After instantiation, one must set the position, angle, etc using one of two types of modifiers.
The first type just records all of the values, so you are in fact filling an array. The second type uses transfunctions, so you are in fact providing the recipe to fill that same array, but the array is not filled (or even allocated) till later

Definition at line 24 of file GeoStraightAccSection.h.

Constructor & Destructor Documentation

◆ GeoStraightAccSection() [1/2]

GeoStraightAccSection::GeoStraightAccSection ( )

Definition at line 65 of file GeoStraightAccSection.cxx.

66  : m_c(std::make_unique<Clockwork>())
67 {
68 }

◆ ~GeoStraightAccSection()

GeoStraightAccSection::~GeoStraightAccSection ( )
default

◆ GeoStraightAccSection() [2/2]

GeoStraightAccSection::GeoStraightAccSection ( const GeoStraightAccSection )
private

Member Function Documentation

◆ Cosu() [1/2]

double & GeoStraightAccSection::Cosu ( int  stackid,
int  cellid 
)

Definition at line 42 of file GeoStraightAccSection.cxx.

43 {
44  return m_c->getWritableFastCache().cosu[stackid][cellid];
45 }

◆ Cosu() [2/2]

const double& GeoStraightAccSection::Cosu ( int  stackid,
int  cellid 
) const
inline

◆ HalfLength() [1/2]

double & GeoStraightAccSection::HalfLength ( int  stackid,
int  cellid 
)

Definition at line 50 of file GeoStraightAccSection.cxx.

51 {
52  return m_c->getWritableFastCache().halfLength[stackid][cellid];
53 }

◆ HalfLength() [2/2]

const double& GeoStraightAccSection::HalfLength ( int  stackid,
int  cellid 
) const
inline

◆ operator=()

GeoStraightAccSection& GeoStraightAccSection::operator= ( const GeoStraightAccSection )
private

◆ setHalfLength()

void GeoStraightAccSection::setHalfLength ( int  stackid,
double  halfLength 
)

Definition at line 56 of file GeoStraightAccSection.cxx.

56  {
57  m_c->getWritableSmallCache().halfLength[stackid]=halfLength;
58 }

◆ setTransform()

void GeoStraightAccSection::setTransform ( int  stackid,
GeoXF::TRANSFUNCTION  TXE 
)

Definition at line 60 of file GeoStraightAccSection.cxx.

60  {
61  m_c->getWritableSmallCache().transfunction[stackid] =
62  std::unique_ptr<GeoXF::Function> (f.clone());
63 }

◆ Sinu() [1/2]

double & GeoStraightAccSection::Sinu ( int  stackid,
int  cellid 
)

Definition at line 46 of file GeoStraightAccSection.cxx.

47 {
48  return m_c->getWritableFastCache().sinu[stackid][cellid];
49 }

◆ Sinu() [2/2]

const double& GeoStraightAccSection::Sinu ( int  stackid,
int  cellid 
) const
inline

◆ XCent() [1/2]

double & GeoStraightAccSection::XCent ( int  stackid,
int  cellid 
)

Definition at line 34 of file GeoStraightAccSection.cxx.

35 {
36  return m_c->getWritableFastCache().xcent[stackid][cellid];
37 }

◆ XCent() [2/2]

const double& GeoStraightAccSection::XCent ( int  stackid,
int  cellid 
) const
inline

◆ YCent() [1/2]

double & GeoStraightAccSection::YCent ( int  stackid,
int  cellid 
)

Definition at line 38 of file GeoStraightAccSection.cxx.

39 {
40  return m_c->getWritableFastCache().ycent[stackid][cellid];
41 }

◆ YCent() [2/2]

const double& GeoStraightAccSection::YCent ( int  stackid,
int  cellid 
) const
inline

Member Data Documentation

◆ m_c

std::unique_ptr<Clockwork> GeoStraightAccSection::m_c
private

Definition at line 59 of file GeoStraightAccSection.h.


The documentation for this class was generated from the following files:
python.CaloRecoConfig.f
f
Definition: CaloRecoConfig.py:127
GeoStraightAccSection::m_c
std::unique_ptr< Clockwork > m_c
Definition: GeoStraightAccSection.h:58