#include <Medium.h>
Inheritance diagram for Medium:

Public Methods | |
| Medium (Medium* parent =0, float size=100) | |
| default Constructors / destructor. More... | |
| Medium (Medium* parent, Shape* vol, const char* mat= "vacuum", Detector * det= 0) | |
| Medium (const Medium& old) | |
| copy constructor. More... | |
| virtual | ~Medium () |
| destructor. More... | |
| virtual Medium& | addMedium (Medium* nextMedium) |
| Methods for building Trees of Media. Error if not called from a CompositeMedium. More... | |
| virtual Medium& | removeMedium (Medium* oldMedium) |
| Methods for building Trees of Media. Error if not called from a CompositeMedium. More... | |
| Medium& | setParent (Medium* p) |
| Methods for setting data members (these all set by constructor and unnessary?). More... | |
| Medium& | setVolume (Shape* vol) |
| Medium& | setMaterial (Material *mat) |
| Medium& | setDetector (Detector *det) |
| Medium& | setTitle (const char *newTitle) |
| virtual Medium& | setKECutOff (float keCut) |
| set tracking attributes: vitual to allow a CompositeMedium to set its children. More... | |
| virtual Medium& | setMaxStep (float mxStep) |
| virtual Medium& | setField (Field* ) |
| virtual const char* | nameOf () const |
| Methods for getting data members, attributes. More... | |
| virtual int | isComposite () const |
| const char* | title () const |
| Shape& | volume () |
| const Shape& | volume () const |
| Field& | field () const |
| Material& | material () const |
| const Medium* | getParent () const |
| const Medium* | parent () const |
| float | kECutOff () const |
| float | maxStep () const |
| Detector* | detector () const |
| GeomObject& | transform (const CoordTransform& ) |
| co-ordinate transformation. More... | |
| Ray* | CreateRay (const Point& position, const Vector& momentum, float charge,float maxdist=0 ) const |
| create a Ray that will describe the trajectory. More... | |
| virtual double | distanceToLeave ( const Ray& r, const Medium*& nextMedium, double maxStep ) const |
| This is perhaps to enter an inner Medium if implemented by a CompositeMedium, setting nextMedium if a boundary is reached. More... | |
| virtual const Medium* | inside (const Point& r) const |
| return the Medium that the point is inside. More... | |
| virtual double | distanceToEnter ( const Ray& r, const Medium*& newstuff, double ) const |
| support for distanceToLeave of a CompositeMedium. More... | |
| virtual void | clear () |
| Methods for Event processing -- apply to the detectof if present. More... | |
| virtual void | generateResponse () |
| virtual void | accept (DetectorVisitor&) |
| virtual void | readData (std::istream&) |
| virtual void | writeData (std::ostream&) |
| virtual void | notify () |
| allow implementation of the Observer pattern -- message passed to all Detectors. More... | |
| virtual void | printOn ( std::ostream& os = std::cout ) const |
| print and display. More... | |
| virtual void | printResponse (std::ostream& os= std::cout) const |
| virtual void | createDetectorView (gui::DisplayRep& v) |
| pass a gui::DisplayRep object to the Shape for display of the volume. More... | |
| virtual void | createResponseView (gui::DisplayRep& v) |
| pass a gui::DisplayRep Detector for display of the response. More... | |
Static Public Methods | |
| void | setLastMedium (const Medium *last) |
| used in the tracking. More... | |
Protected Methods | |
| void | set_defaults () |
Protected Attributes | |
| Shape* | _volume |
| Material* | _material |
| Detector* | _detector |
| Field* | _field |
| Medium* | _parent |
| float | _keCutOff |
| float | _maxStep |
| char* | _title |
Static Protected Attributes | |
| unsigned | s_count = 0 |
| const Medium* | lastMedium = 0 |
This information is use in the propagate method of MCParticle. Furthermore mediums provide "hooks" to generate detector responses and do event anaylsis.
Mediums contain mediums and hence form a hierarchical arrangement of the geometry. In particular a CompositeMedium has a list of mediums it contains as well as being in the list of mediums of its parent.
Definition at line 35 of file Medium.h.
|
|
default Constructors / destructor.
Definition at line 33 of file Medium.cxx. Referenced by Demo1::Demo1(), and LayeredBox::addLayer(). |
|
|
Definition at line 43 of file Medium.cxx. |
|
|
copy constructor.
Definition at line 54 of file Medium.cxx. |
|
|
destructor.
Definition at line 91 of file Medium.cxx. |
|
|
create a Ray that will describe the trajectory.
Definition at line 188 of file Medium.cxx. Referenced by RCParticle::propagate(), and MCParticle::propagate(). |
|
|
Reimplemented in CompositeMedium. Definition at line 162 of file Medium.cxx. Referenced by CompositeMedium::accept(). |
|
|
Methods for building Trees of Media. Error if not called from a CompositeMedium.
Reimplemented in CompositeMedium, and World. Definition at line 131 of file Medium.cxx. Referenced by LayeredBox::addLayer(), and set_defaults(). |
|
|
Methods for Event processing -- apply to the detectof if present.
Reimplemented in CompositeMedium. Definition at line 158 of file Medium.cxx. Referenced by CompositeMedium::clear(). |
|
|
pass a gui::DisplayRep object to the Shape for display of the volume.
Reimplemented in CompositeMedium, LayeredBox, LayeredMedium, World, LayeredTube, LayeredTube::Layer, and SlicedCone. Definition at line 286 of file Medium.cxx. Referenced by CompositeMedium::createDetectorView(). |
|
|
pass a gui::DisplayRep Detector for display of the response.
Reimplemented in CompositeMedium. Definition at line 170 of file Medium.cxx. Referenced by CompositeMedium::createResponseView(). |
|
|
Definition at line 92 of file Medium.h. Referenced by MCParticle::propagate(). |
|
|
support for distanceToLeave of a CompositeMedium.
Reimplemented in LayeredMedium, and LayeredTube. Definition at line 249 of file Medium.cxx. Referenced by LayeredTube::distanceToEnter(), LayeredMedium::distanceToEnter(), and CompositeMedium::distanceToLeave(). |
|
|
This is perhaps to enter an inner Medium if implemented by a CompositeMedium, setting nextMedium if a boundary is reached. Will be limited to maxStep Reimplemented in CompositeMedium, LayeredMedium, LayeredTube, LayeredTube::Layer, SlabWorld::Slab, and SlabWorld. Definition at line 206 of file Medium.cxx. Referenced by CompositeMedium::distanceToLeave(), RCParticle::propagate(), and MCParticle::propagate(). |
|
|
Definition at line 84 of file Medium.h. Referenced by setField(), and set_defaults(). |
|
|
Reimplemented in CompositeMedium. Definition at line 160 of file Medium.cxx. Referenced by CompositeMedium::generateResponse(). |
|
|
|
|
|
return the Medium that the point is inside.
Reimplemented in CompositeMedium, LayeredMedium, LayeredTube, LayeredTube::Layer, SlabWorld::Slab, and SlabWorld. Definition at line 179 of file Medium.cxx. Referenced by RCParticle::RCParticle(), distanceToLeave(), and CompositeMedium::inside(). |
|
|
Reimplemented in CompositeMedium. Definition at line 124 of file Medium.cxx. Referenced by LayeredBox::addLayer(). |
|
|
Definition at line 90 of file Medium.h. Referenced by Interactor::ecut(), ShowerTest::init(), EGSInteractor::interact(), printOn(), and set_defaults(). |
|
|
Definition at line 85 of file Medium.h. Referenced by Interactor::afterStep(), EGSInteractor::afterStep(), GheishaInteractor::data(), ShowerTest::init(), MuonInteractor::interactionLength(), Interactor::maxStepSize(), EGSInteractor::pegs(), MCParticle::propagate(), set_defaults(), and RCParticle::stepBy(). |
|
|
Definition at line 91 of file Medium.h. Referenced by distanceToLeave(), Interactor::maxStepSize(), EGSInteractor::maxStepSize(), printOn(), CompositeMedium::setMaxStep(), and set_defaults(). |
|
|
Methods for getting data members, attributes.
Reimplemented in CompositeMedium, LayeredBox, LayeredTube, LayeredTube::Layer, and SlicedCone. Definition at line 120 of file Medium.cxx. Referenced by printOn(). |
|
|
allow implementation of the Observer pattern -- message passed to all Detectors.
Reimplemented in CompositeMedium. Definition at line 173 of file Medium.cxx. Referenced by CompositeMedium::notify(). |
|
|
Reimplemented in LayeredTube::Layer. Definition at line 88 of file Medium.h. Referenced by LayeredMedium::addLayer(), LayeredBox::addLayer(), distanceToEnter(), distanceToLeave(), SlabWorld::Slab::inside(), and inside(). |
|
|
print and display.
Reimplemented in CompositeMedium, and LayeredTube::Layer. Definition at line 273 of file Medium.cxx. Referenced by operator<<(), and CompositeMedium::printOn(). |
|
|
Reimplemented in CompositeMedium. Definition at line 168 of file Medium.cxx. Referenced by CompositeMedium::printResponse(). |
|
|
Reimplemented in CompositeMedium. Definition at line 166 of file Medium.cxx. Referenced by CompositeMedium::readData(). |
|
|
Methods for building Trees of Media. Error if not called from a CompositeMedium.
Reimplemented in CompositeMedium. Definition at line 137 of file Medium.cxx. |
|
|
|
|
|
Reimplemented in CompositeMedium. Definition at line 112 of file Medium.cxx. Referenced by Demo1::Demo1(), and CompositeMedium::setField(). |
|
|
set tracking attributes: vitual to allow a CompositeMedium to set its children.
Reimplemented in CompositeMedium. Definition at line 102 of file Medium.cxx. Referenced by CompositeMedium::setKECutOff(). |
|
|
used in the tracking.
Definition at line 115 of file Medium.h. Referenced by RCParticle::ini(), RCParticle::propagate(), and MCParticle::propagate(). |
|
|
|
|
|
Reimplemented in CompositeMedium. Definition at line 107 of file Medium.cxx. Referenced by Demo1::Demo1(), and CompositeMedium::setMaxStep(). |
|
|
Methods for setting data members (these all set by constructor and unnessary?).
Definition at line 64 of file Medium.h. Referenced by CompositeMedium::addMedium(). |
|
|
Definition at line 85 of file Medium.cxx. Referenced by Demo1::Demo1(), World::World(), SlicedCone::addLayer(), LayeredBox::addLayer(), and SlabWorld::addSlab(). |
|
|
Definition at line 65 of file Medium.h. Referenced by LayeredMedium::LayeredMedium(), LayeredTube::addLayer(), and LayeredMedium::addLayer(). |
|
|
Definition at line 64 of file Medium.cxx. Referenced by Medium(). |
|
|
Definition at line 80 of file Medium.h. Referenced by distanceToLeave(), Interactor::interact(), printOn(), CompositeMedium::printOn(), RCParticle::propagate(), and MCParticle::propagate(). |
|
|
co-ordinate transformation.
Reimplemented in CompositeMedium, LayeredTube, and LayeredTube::Layer. Definition at line 146 of file Medium.cxx. Referenced by LayeredTube::Layer::transform(), and CompositeMedium::transform(). |
|
|
|
|
|
Definition at line 82 of file Medium.h. Referenced by LayeredMedium::addLayer(), World::addMedium(), createDetectorView(), LayeredTube::Layer::createDetectorView(), distanceToEnter(), distanceToLeave(), LayeredTube::Layer::distanceToLeave(), inside(), printOn(), and LayeredTube::tube(). |
|
|
Reimplemented in CompositeMedium. Definition at line 164 of file Medium.cxx. Referenced by CompositeMedium::writeData(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 300 of file Medium.cxx. |
|
|
Definition at line 301 of file Medium.cxx. |
1.2.3 written by Dimitri van Heesch,
© 1997-2000