CMS 3D CMS Logo

bSector.h
Go to the documentation of this file.
1 #ifndef bSector_H
2 #define bSector_H
3 
11 #include "bRod.h"
12 
13 class MagBSector;
14 
15 namespace magneticfield {
16 
17  class bSector {
18  public:
20  bSector();
21 
23  bSector(handles::const_iterator begin, handles::const_iterator end, bool debugVal = false);
24 
26  ~bSector() = default;
27 
29  const float RN() const { return volumes.front()->RN(); }
30 
32  const handles& getVolumes() const { return volumes; }
33 
35  MagBSector* buildMagBSector() const;
36 
37  private:
38  std::vector<bRod> rods; // the rods in this layer
39  handles volumes; // pointers to all volumes in the sector
40  mutable MagBSector* msector;
41  bool debug; // Allow assignment from other bSector objects
42  };
43 } // namespace magneticfield
44 
45 #endif
MagBSector
Definition: MagBSector.h:24
magneticfield
Definition: MagFieldConfig.h:22
magneticfield::bSector::~bSector
~bSector()=default
Destructor.
bRod.h
end
#define end
Definition: vmac.h:39
magneticfield::bSector::msector
MagBSector * msector
Definition: bSector.h:40
magneticfield::bSector::debug
bool debug
Definition: bSector.h:41
magneticfield::bSector::buildMagBSector
MagBSector * buildMagBSector() const
Construct the MagBSector upon request.
Definition: bSector.cc:133
magneticfield::bSector::volumes
handles volumes
Definition: bSector.h:39
magneticfield::handles
std::vector< BaseVolumeHandle * > handles
Definition: BaseVolumeHandle.h:154
magneticfield::bSector::rods
std::vector< bRod > rods
Definition: bSector.h:38
magneticfield::bSector
Definition: bSector.h:17
magneticfield::bSector::RN
const float RN() const
Distance from center along normal of sectors.
Definition: bSector.h:29
magneticfield::bSector::bSector
bSector()
Default ctor is needed to have arrays.
Definition: bSector.cc:22
begin
#define begin
Definition: vmac.h:32
magneticfield::bSector::getVolumes
const handles & getVolumes() const
Return all volumes in this sector.
Definition: bSector.h:32