Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
MagneticField
Layers
src
MagELayer.cc
Go to the documentation of this file.
1
// #include "Utilities/Configuration/interface/Architecture.h"
2
3
/*
4
* See header file for a description of this class.
5
*
6
* \author N. Amapane - INFN Torino
7
*/
8
9
#include "
MagneticField/Layers/interface/MagELayer.h
"
10
#include "
MagneticField/VolumeGeometry/interface/MagVolume.h
"
11
#include "
MagneticField/VolumeGeometry/interface/MagVolume6Faces.h
"
12
13
#include "
MagneticField/Layers/interface/MagVerbosity.h
"
14
#include <iostream>
15
16
using namespace
std;
17
18
19
MagELayer::MagELayer
(
const
vector<MagVolume*>&
volumes
,
double
zMin,
double
zMax) :
20
theVolumes(volumes),
21
theZMin(zMin),
22
theZMax(zMax)
23
{}
24
25
MagELayer::~MagELayer
(){
26
for
(vector<MagVolume *>::const_iterator ivol =
theVolumes
.begin();
27
ivol !=
theVolumes
.end(); ++ivol) {
28
delete
(*ivol);
29
}
30
}
31
32
33
const
MagVolume
*
34
MagELayer::findVolume
(
const
GlobalPoint
& gp,
double
tolerance)
const
{
35
for
(vector<MagVolume*>::const_iterator ivol =
theVolumes
.begin();
36
ivol !=
theVolumes
.end(); ++ivol) {
37
// FIXME : use a binfinder
38
#ifdef MF_DEBUG
39
{
40
MagVolume6Faces
* mv =
static_cast<
MagVolume6Faces
*
>
(*ivol);
41
cout
<<
" Trying volume "
<< mv->
volumeNo
<<
" "
<< int(mv->
copyno
) << endl;
42
}
43
#endif
44
if
( (*ivol)->inside(gp,tolerance) )
return
(*ivol);
45
}
46
47
return
0;
48
}
49
MagVolume6Faces::volumeNo
short volumeNo
Definition:
MagVolume6Faces.h:42
MagELayer::MagELayer
MagELayer(const std::vector< MagVolume * > &volumes, double zMin, double zMax)
Constructor.
Definition:
MagELayer.cc:19
MagELayer.h
MagVolume6Faces.h
MagVolume6Faces
Definition:
MagVolume6Faces.h:27
MagVolume6Faces::copyno
char copyno
Definition:
MagVolume6Faces.h:43
MagELayer::findVolume
const MagVolume * findVolume(const GlobalPoint &gp, double tolerance) const
Find the volume containing a point, with a given tolerance.
Definition:
MagELayer.cc:34
MagVerbosity.h
MagVolume.h
MagVolume
Definition:
MagVolume.h:14
MagELayer::theVolumes
std::vector< MagVolume * > theVolumes
Definition:
MagELayer.h:34
autoMagneticFieldProducer_cfi.volumes
tuple volumes
Definition:
autoMagneticFieldProducer_cfi.py:97
MagELayer::~MagELayer
virtual ~MagELayer()
Destructor.
Definition:
MagELayer.cc:25
Point3DBase< float, GlobalTag >
gather_cfg.cout
tuple cout
Definition:
gather_cfg.py:121
Generated for CMSSW Reference Manual by
1.8.5