ATLAS Offline Software
Loading...
Searching...
No Matches
ITRT_SimDriftTimeTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
6// //
7// Class: ITRT_SimDriftTimeTool //
8// //
9// Author: Thomas Kittelmann //
10// //
11// First Version: January 2006 //
12// //
14
15#ifndef ITRT_SIMDRIFTTIMETOOL_H
16#define ITRT_SIMDRIFTTIMETOOL_H
17
18#include "GaudiKernel/IAlgTool.h"
19
20// Declaration of the interface ID ( interface id, major version, minor version)
21static const InterfaceID IID_ITRT_SimDriftTimeTool("ITRT_SimDriftTimeTool", 1 , 0);
22
23//
24// @class ITRT_SimDriftTimeTool ITRT_SimDriftTimeTool.h
25// Give an AlgTool interface to Drift Times for digitization
26//
27// @author Thomas Kittelmann <kittel@nbi.dk>
28//
29
30class ITRT_SimDriftTimeTool : virtual public IAlgTool {
31
32public:
33
34 // Retrieve interface ID
35 static const InterfaceID& interfaceID() { return IID_ITRT_SimDriftTimeTool; }
36
37 //The drifttime depends on the external (solenoidal) field (and is
38 //possibly different for barrel/endcap).
39
40 //This is the average drift time for a certain distance
41 virtual double getAverageDriftTime( const double& dist,
42 const double& effectivefield_squared,
43 int strawGasType = 0) const = 0;
44
45 // NB: The passed field value should be the magnitude of the field
46 // component that is orthogonal to the local straw E-field.
47 // It is assumed that the field in the barrel is parallel to the
48 // wires and that the field in the endcap is orthogonal to them.
49 // Magnetic field mapping provides details.
50};
51
52#endif
static const InterfaceID IID_ITRT_SimDriftTimeTool("ITRT_SimDriftTimeTool", 1, 0)
static const InterfaceID & interfaceID()
virtual double getAverageDriftTime(const double &dist, const double &effectivefield_squared, int strawGasType=0) const =0