ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
Barcode
BarcodeInterfaces
BarcodeInterfaces
IBarcodeSvc.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef BARCODEINTERFACES_IBARCODESVC_H
6
#define BARCODEINTERFACES_IBARCODESVC_H 1
7
8
// Barcode includes
9
#include "
TruthUtils/MagicNumbers.h
"
10
11
// Include Files
12
#include "GaudiKernel/IInterface.h"
13
#include "GaudiKernel/StatusCode.h"
14
#include "GaudiKernel/ToolHandle.h"
15
#include "GaudiKernel/ServiceHandle.h"
16
17
namespace
Barcode
{
18
23
class
IBarcodeSvc
:
virtual
public
IInterface {
24
25
public
:
26
27
//TODO not fully implemented in Generic, Global, and Validation BarcodeSvcs
28
//only fully implemented in LegacyBarcodeSvc (only barcode service used in production)
29
virtual
StatusCode
initializeBarcodes
(
int
,
int
) {
return
StatusCode::SUCCESS; };
30
virtual
StatusCode
resetBarcodes
(
int
,
int
) {
return
StatusCode::SUCCESS; };
31
33
DeclareInterfaceID
(
IBarcodeSvc
, 1 , 0);
34
35
37
virtual
int
newSecondaryParticle
(
int
parentBC) = 0;
38
40
virtual
int
newGeneratedParticle
(
int
parentBC) = 0;
41
43
virtual
int
newSimulationVertex
() = 0;
44
46
virtual
int
newGeneratedVertex
() = 0;
47
50
virtual
void
registerLargestGeneratedParticleBC
(
int
bc) = 0;
51
virtual
void
registerLargestGeneratedVtxBC
(
int
bc) = 0;
52
virtual
void
registerLargestSecondaryParticleBC
(
int
bc) = 0;
53
virtual
void
registerLargestSimulationVtxBC
(
int
bc) = 0;
54
56
virtual
int
secondaryParticleBcOffset
()
const
= 0;
57
virtual
int
secondaryVertexBcOffset
()
const
= 0;
58
};
59
60
}
61
62
#endif
//> !BARCODEINTERFACES_IBARCODESVC_H
MagicNumbers.h
Barcode::IBarcodeSvc
Definition
IBarcodeSvc.h:23
Barcode::IBarcodeSvc::newSimulationVertex
virtual int newSimulationVertex()=0
Generate a new unique vertex barcode above the simulation offset.
Barcode::IBarcodeSvc::DeclareInterfaceID
DeclareInterfaceID(IBarcodeSvc, 1, 0)
Creates the InterfaceID and interfaceID() method.
Barcode::IBarcodeSvc::newSecondaryParticle
virtual int newSecondaryParticle(int parentBC)=0
Generate a new unique barcode for a secondary particle above the simulation offset.
Barcode::IBarcodeSvc::newGeneratedVertex
virtual int newGeneratedVertex()=0
Generate a new unique vertex barcode below the simulation offset.
Barcode::IBarcodeSvc::resetBarcodes
virtual StatusCode resetBarcodes(int, int)
Definition
IBarcodeSvc.h:30
Barcode::IBarcodeSvc::newGeneratedParticle
virtual int newGeneratedParticle(int parentBC)=0
Generate a new unique particle barcode below the simulation offset (for particles from pre-defined de...
Barcode::IBarcodeSvc::secondaryParticleBcOffset
virtual int secondaryParticleBcOffset() const =0
Return the secondary particle and vertex offsets.
Barcode::IBarcodeSvc::registerLargestGeneratedParticleBC
virtual void registerLargestGeneratedParticleBC(int bc)=0
Inform the BarcodeSvc about the largest particle and vertex Barcodes in the event input.
Barcode::IBarcodeSvc::registerLargestGeneratedVtxBC
virtual void registerLargestGeneratedVtxBC(int bc)=0
Barcode::IBarcodeSvc::registerLargestSimulationVtxBC
virtual void registerLargestSimulationVtxBC(int bc)=0
Barcode::IBarcodeSvc::initializeBarcodes
virtual StatusCode initializeBarcodes(int, int)
Definition
IBarcodeSvc.h:29
Barcode::IBarcodeSvc::secondaryVertexBcOffset
virtual int secondaryVertexBcOffset() const =0
Barcode::IBarcodeSvc::registerLargestSecondaryParticleBC
virtual void registerLargestSecondaryParticleBC(int bc)=0
Barcode
Definition
IBarcodeSvc.h:17
Generated on
for ATLAS Offline Software by
1.17.0