Back to home page

EIC code displayed by LXR

 
 

    


Warning, /acts/docs/formats/json_geometry_hierarchy_map.rst is written in an unsupported language. File is not indexed.

0001 Json Geometry Hierarchy Map
0002 ===========================
0003 
0004 Within the code base the :class:`Acts::GeometryHierarchyMap` container is used
0005 to map values into the geometry hierarchy. This could be e.g. track finder cuts
0006 that are different for different parts of the detector. To simplify run-time
0007 configuration, :class:`Acts::GeometryHierarchyMap` can be encoded/decode to/from
0008 the following Json format. The encoded value is a Json object with two entries:
0009 the header Json object in ``acts-geometry-hierarchy-map`` to identify the file
0010 and value type and provide versioning for forward-compatibility, and a Json
0011 array in ``entries`` that contains the values.
0012 
0013 .. code-block:: json
0014 
0015    {
0016      "acts-geometry-hierarchy-map": {
0017        "format-version": 0,
0018        "value-identifier": "<user-defined-identifier>"
0019      },
0020      "entries": [
0021        {
0022          "_comment": "global default entry w/o identifier",
0023          "value": "..."
0024        },
0025        {
0026          "volume": 1,
0027          "layer": 2,
0028          "value": "..."
0029        },
0030        {
0031          "volume": 3,
0032          "value": "..."
0033        }
0034      ]
0035    }
0036 
0037 Each entry is a Json object that contains the encoded content of the
0038 :class:`Acts::GeometryIdentifier` key and the associated value. Each level
0039 within the :class:`Acts::GeometryIdentifier` is specified by name and stored as
0040 an integer. If a given level is not explicitly specified it is assumed to be
0041 zero.
0042 
0043 .. code-block:: json
0044 
0045    {
0046      "volume": "<integer>",
0047      "boundary": "<integer>",
0048      "layer": "<integer>",
0049      "approach": "<integer>",
0050      "sensitive": "<integer>",
0051      "value": "..."
0052    }
0053 
0054 The representation of the value is not specified and depends on the specific
0055 type.