CFEL - ASG Software Suite
2.5.0
CASS
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
cass
processing
spectrometer.cpp
Go to the documentation of this file.
1
//Copyright (C) 2009-2010 Lutz Foucar
2
3
/**
4
* @file spectrometer.cpp file contains the classes that describe a REMI type
5
* spectrometer.
6
*
7
* @author Lutz Foucar
8
*/
9
10
#include <cmath>
11
12
#include "
spectrometer.h
"
13
14
#include "
particle.h
"
15
#include "
cass_settings.h
"
16
17
using namespace
cass::ACQIRIS
;
18
19
void
Spectrometer::loadSettings
(
CASSSettings
&s,
const
Particle
& p)
20
{
21
s.
beginGroup
(
"Spectrometer"
);
22
int
size
= s.
beginReadArray
(
"Regions"
);
23
for
(
int
i = 0; i <
size
; ++i)
24
{
25
s.
setArrayIndex
(i);
26
SpectrometerRegion
region;
27
region.
loadSettings
(s);
28
_regions
.push_back(region);
29
}
30
s.
endArray
();
31
_BFieldIsOn
= s.
value
(
"BFieldIsOn"
,
false
).toBool();
32
_cyclotronPeriod
= s.
value
(
"CyclotronPeriode"
,10).toDouble();
33
_cyclotronPeriod
*= (p.
mass_au
() / std::abs(p.
charge_au
()));
34
_rotationClockwise
= s.
value
(
"RotationClockwise"
,
true
).toBool();
35
s.
endGroup
();
36
}
37
38
void
SpectrometerRegion::loadSettings
(
CASSSettings
&s)
39
{
40
_length
= s.
value
(
"Length"
,10).toDouble();
41
_efield
= s.
value
(
"EField"
,10).toDouble();
42
}
QSettings::setArrayIndex
setArrayIndex(int i)
QSettings::endArray
endArray()
cass::ACQIRIS::SpectrometerRegion::_length
double _length
the length of the spectrometer region in mm
Definition:
spectrometer.h:53
QSettings::endGroup
endGroup()
cass::ACQIRIS::Particle::mass_au
double mass_au() const
retrieve the particle properties
Definition:
particle.h:122
cass::CASSSettings
Settings for CASS.
Definition:
cass_settings.h:30
cass::ACQIRIS::Spectrometer::_rotationClockwise
bool _rotationClockwise
flag showing the direction of the magnetic field
Definition:
spectrometer.h:128
cass::ACQIRIS::Spectrometer::_regions
regions_t _regions
the regions of the spectrometer
Definition:
spectrometer.h:116
cass::ACQIRIS::Spectrometer::_cyclotronPeriod
double _cyclotronPeriod
the cyclotron frequency of the particles in ns
Definition:
spectrometer.h:122
cass::ACQIRIS::SpectrometerRegion
a region of a spectrometer
Definition:
spectrometer.h:36
size
things written only at end of run H5Dump ProcessorSummary size
Definition:
CsPadCrystal.ini:938
cass::ACQIRIS::Spectrometer::loadSettings
void loadSettings(CASSSettings &s, const Particle &particle)
load the settings from .ini file
Definition:
spectrometer.cpp:19
QSettings::beginReadArray
beginReadArray(const QString &prefix)
cass::ACQIRIS::SpectrometerRegion::_efield
double _efield
the electric field strength inside this region in
Definition:
spectrometer.h:55
cass::ACQIRIS::Particle::charge_au
double charge_au() const
retrieve the particle properties
Definition:
particle.h:123
cass::ACQIRIS::Spectrometer::_BFieldIsOn
bool _BFieldIsOn
flag to tell whether the magnetic field is turned on
Definition:
spectrometer.h:119
cass::ACQIRIS::SpectrometerRegion::loadSettings
void loadSettings(CASSSettings &s)
load the settings from .ini file
Definition:
spectrometer.cpp:38
QSettings::value
value(const QString &key, const QVariant &defaultValue=QVariant()
cass_settings.h
file contains specialized class that do the settings for cass
particle.h
file contains the classes that describe a particle that hit a delayline detector. ...
cass::ACQIRIS::Particle
A Particle.
Definition:
particle.h:70
spectrometer.h
contains the classes that describe a REMI type spectrometer.
QSettings::beginGroup
beginGroup(const QString &prefix)
cass::ACQIRIS
Definition:
acqiris_device.hpp:22
Impressum
privacy
-- Generated on Thu Nov 29 2018 21:31:28 for CFEL - ASG Software Suite by
1.8.10