GeoModel - GeoModelCore
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 ►CGeoGenfun::AbsFunction
 ►CGeoGenfun::AbsParameter
 CGeoGenfun::Argument
 Cinternal_poltrig::BTreeNode< T, KeyType >
 CCellBinningA simple class to specify a range, and a number of bins. The binning is specified as one would specify bins of a histogram. In addition to the usual start-of-range, end-of-range, and number of divisions this class also has an index for the first bin number. In this package the cell binning is used to set up regions of homogenous granularity (or just "regions")
 CCellPartitioning
 CGeometryMap::Clockwork
 CConstLink< T >Smart links to reference-counted pointers. Used in this package for calorimeter cells Template Smart Pointer Class. This reference counted link allocates on demand. It audits the total pointer count and collects the garbage when nobody's looking
 ►CGeoXF::Function
 CGeoAbsPositionInfoThis class represents anything whose default and aligned postions are known and cached
 CGeoGeometryPluginLoader
 CGeometryMap
 ►CGeoNodeActionThis type of action sees the geometry graph in full detail, including each transformation and property node. The function of this graph is to represent a simpler tree of positioned volumes. To visit only those volumes while keeping track of the state (including relative positioning), use the VolumeAction
 CGeoPerfUtilsThis is a collection of performance utilities used to benchmark the GeoModel. Currently it includes a routine to fetch the current memory consumption in kilobytes and a routine to fetch the current CPU consumption in jiffies
 ►CGeoPolyhedron
 ►CGeoPVConstLinkSmart pointer to physical volume... constant
 ►CGeoShapeActionThis class is a visitor for shapes. It allows a navigation of the boolean expression tree for shapes, in order to accomplish actions such as volume computation. This is essentially an internal class
 CGeoTraversalStateThis incorporates a traversal state, including the following information:
 CGeoVAlignmentStoreAbstract base class for GeoModel alignment stores The interface allows to store/retrieve transformations that serve as:
 CGeoVDetectorElementA GeoVDetectorElement is a piece of readout geometry. This is an abstract base class for readout objects which have a distinct association to a piece of physical geometry and whose position we track by specifying a Euclidean transformation w.r.t global coordinates. level that one can keep track of with Euclidean transformations. Examples:
 CGeoVDetectorFactoryAbstact Base Class for a detector factory. The detector factory builds the geometry and creates a GeoDetector Manager, which one may thereafter query for all raw geometry, and all readout geometry
 CGeoVDetectorManagerThis class is the Manager for each detector. It has two required query mechanism: one for "tree tops" (These are top level pieces of raw geometry; there may be one or more of these), and another one for detector elements, which represent readout units
 CGeoVGeometryPluginAbstact Base Class for a geometry plugin. The geometry plugin builds the raw geometry
 ►CGeoVolumeActionThis type of action sees and traverses a simpler tree of positioned volumes. It does not descend into transformations or other properties, but simply accumulates their effect into an internal state that can be accessed during traversal. That state includes, for example, the position relative to the parent
 CGeoVStoreAbstract base class for a generic GeoModel store The interface allows to store pointers to two types of objects
 Cinternal_poltrig::Linebase
 CPath< T >Represents a path from one point in the general tree, to the present point
 CPath< GeoShape >
 CPath< GeoVPhysVol >
 CGeoTrf::Plane3DCheck if we can use Eigen Hyperplane for this
 Cinternal_poltrig::Pointbase
 CPolygonTriangulator::Polygon
 CPolygonTriangulator
 CQuery< T >This class can be used to return the result of a query that can fail. Objects of this class can convert themselves to the result type T. Client code can check for a valid result; if it doesn't, and the result is valid, no problem. But if the result is invalid you will print an error message and terminate
 CQuery< double >
 CQuery< int >
 CQuery< unsigned int >
 ►CRCBaseThis is a base class for objects whose memory is managed through reference counting. Reference-counted objects can only be created using operator new, the cannot be created on the stack
 ►CRotationMatrix3D
 Cinternal_poltrig::SplayTree< T, KeyType >
 ►Ctiny::Transform
 ►CTransform3D