gdata
Loading...
Searching...
No Matches
gTrueInfoData.h File Reference

Container for "true" (simulation-level) observables associated with one hit. More...

#include <string>
#include <map>
#include <vector>
#include <atomic>
#include "ghit.h"
#include "gbase.h"
Include dependency graph for gTrueInfoData.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  GTrueInfoData
 Container for true (simulation-level) observables for one hit. More...
 

Namespaces

namespace  gtrue_data
 

Functions

GOptions gtrue_data::defineOptions ()
 Defines GOptions for the true-data logger domain.
 

Variables

constexpr const char * GTRUEDATA_LOGGER = "true_data"
 Logger domain name used by GTrueInfoData (controls verbosity/category in GLogger).
 

Detailed Description

GTrueInfoData stores truth information typically derived from Geant4 tracking: energy deposition, step-averaged positions, time, particle/process metadata, etc.

Why maps?

Observables are stored as name->value maps to support detector/digitization plugins that:

  • define custom variables without recompiling the core library
  • evolve their schema over time without breaking binary interfaces

Stored observable categories

  • doubleObservablesMap : numeric truth quantities (edep, x/y/z, time, etc.)
  • stringVariablesMap : categorical/provenance values (process name, volume name, ...)

Per-event vs per-run semantics

Identity

Each GTrueInfoData stores the hit identity (gidentity), copied from GHit. This is typically a vector of named indices (e.g. sector/layer/component) that uniquely identify where the hit occurred. The identity is intended to be stable and human-readable via getIdentityString().

Note
Threading
  • Regular instances have no shared mutable state.
  • The static factory create() uses globalTrueInfoDataCounter which is atomic.

Definition in file gTrueInfoData.h.

Variable Documentation

◆ GTRUEDATA_LOGGER

constexpr const char* GTRUEDATA_LOGGER = "true_data"
constexpr

Definition at line 49 of file gTrueInfoData.h.