Trigger Pattern

1. Raw data: the trigger pattern (or mask) contains 50 bits each one corresponding to a CTP trigger class. This pattern is stored by the DAQ into the raw-data event header. You have an access to it via the raw-readers. Please note that it is stored in 2 32-bit words so you have to do something like:

((ULong64_t)pattern[1]) << 32) | pattern[0]

The pattern is always valid, that is guaranteed by the way the DAQ and CTP are communicating/loading the CTP configuration at the start of run.

2. ESD: the trigger pattern found in the raw data is propagated as it is into the ESD. You can access it via:

AliESDEvent::GetTriggerMask()

It is really a chinese copy of the pattern found in the raw data.

Since the trigger configuration could change rather ofthenly, it becomes  impractical to query the trigger pattern from ESD. For that reason we have another method in ESD called:

AliESDEvent::GetFiredTriggerClasses()

which returns a string with the fired trigger classes for a given event. How we do that? We use the trigger configuration that is stored in the DAQ logbook, goes to the Shuttle and finally arrives in the offline CDB.

So when we run the reconstruction we query the CDB, load the trigger configuration and use it in order to fill the trigger classes IDs (strings) into the ESD. So here is the main point - in order to get a correct answer from the ESD's GetFiredTriggerClasses() method you HAVE to reconstruct your raw data with the correct OCDB from AliEn (/alice/data/2008/LHC08b/OCDB folder). The usage of any other OCDB will give wrong results by definition.

3. Default p-p trigger configuration in AliRoot (GRP/CTP/p-p.cfg) - this is our educated guess on how the trigger will look for the first p-p collisions. It has nothing to do with the actual configuration that would be used. At the moment Federico Antinori is preparing both the initial trigger config for p-p as well as a convention on the trigger classes IDs (strings,names) that will be used in the data taking.
As soon as this is done we hope to be able to use GetFiredTriggerClasses() method in a more or less automatic way knowing who is who from the convention of the trigger classes IDs.

Please look at the recently proposed trigger naming convention

Proposal for naming convention of trigger classes (pleliminary!)

Trial version of the list of trigger classes