LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Helper classes for easier access to connected data. More...
Modules | |
LArSoft data proxy interfaces | |
Interfaces to create instances of LArSoft data proxies. | |
Reconstructed object data proxy | |
Data proxies for LArSoft reconstruction data products. | |
Namespaces | |
proxy | |
Encloses LArSoft data product proxy objects and utilities.See this doxygen module for an introduction to data proxies in LArSoft. | |
Helper classes for easier access to connected data.
Proxies are objects that expose multiple connected data products with a single interface, implicitly browsing the interconnections. The connections may be explicit (via some type of data product association, like art::Assns
, or element indices) or implicit, following an agreed rule (like in parallel data products).
More complex proxy implementations are provided for some LArSoft data products. New proxies can be created as well.
Below, some definitions are laid out that are referenced throughout the documentation and that might be useful.
struct
work well: e.g., struct MyHits {};
).L
and R
types where:L
objects come from a single data productL1
is before L2
in the original data product, all L1
-Rx
associations of L1
are listed before any of the L2
-Rx
associations of L2
; in other words, the association list follows the original order of the L
data product; note that this preclude actual many-to-many associations. This does not require associations to be one-to-one (it allows one L
to many R
), nor that all L
be associated to at least one R
.L
and R
types where:L
objects come from a single data productR
associated to each single L
L1
is before L2
in the original data product, L1
-R1
association is listed before the L2
-R2
association; in other words, the association list follows the original order of the L
data product. This does require associations to be one-to-one, bit it does not require that all L
be associated to at least one R
.