ROOT
6.18/05
Reference Guide
montecarlo
vmc
inc
TVirtualMCSensitiveDetector.h
Go to the documentation of this file.
1
// @(#)root/vmc:$Id$
2
// Authors: Ivana Hrivnacova 19/04/2018
3
4
/*************************************************************************
5
* Copyright (C) 2006, Rene Brun and Fons Rademakers. *
6
* Copyright (C) 2018 ALICE Experiment at CERN. *
7
* All rights reserved. *
8
* *
9
* For the licensing terms see $ROOTSYS/LICENSE. *
10
* For the list of contributors see $ROOTSYS/README/CREDITS. *
11
*************************************************************************/
12
13
#ifndef ROOT_TVirtualMCSensitiveDetector
14
#define ROOT_TVirtualMCSensitiveDetector
15
16
// Class TVirtualMCSensitiveDetector
17
// ---------------------------------
18
// Interface to a user defined particles stack.
19
//
20
21
#include "
TNamed.h
"
22
23
class
TParticle
;
24
25
class
TVirtualMCSensitiveDetector
:
public
TNamed
{
26
27
public
:
28
// Constructor
29
TVirtualMCSensitiveDetector
(
const
char
*
name
,
const
char
*title =
""
);
30
TVirtualMCSensitiveDetector
(
const
TString
&
name
,
const
TString
&title =
""
);
31
32
// Destructor
33
virtual
~TVirtualMCSensitiveDetector
();
34
35
/// Initialize detector.
36
/// Called at initialization of geometry before MCApplication::InitGeometry().
37
virtual
void
Initialize
() = 0;
38
39
/// Process hits.
40
/// Called at each step when track pass through the associated volume
41
virtual
void
ProcessHits
() = 0;
42
43
/// End of event.
44
/// Called at end of event before MCApplication::FinishEvent().
45
virtual
void
EndOfEvent
() = 0;
46
47
protected
:
48
// Default constructor
49
TVirtualMCSensitiveDetector
();
50
// Copy constructor
51
TVirtualMCSensitiveDetector
(
const
TVirtualMCSensitiveDetector
&rhs);
52
// Assignment constructor
53
TVirtualMCSensitiveDetector
&
operator=
(
const
TVirtualMCSensitiveDetector
&rhs);
54
55
ClassDef
(
TVirtualMCSensitiveDetector
, 1)
// Interface to a user sensitive detector
56
};
57
58
#endif
// ROOT_TVirtualMCSensitiveDetector
ClassDef
#define ClassDef(name, id)
Definition:
Rtypes.h:326
name
char name[80]
Definition:
TGX11.cxx:109
TNamed.h
TNamed
The TNamed class is the base class for all named ROOT classes.
Definition:
TNamed.h:29
TParticle
Description of the dynamic properties of a particle.
Definition:
TParticle.h:26
TString
Basic string class.
Definition:
TString.h:131
TVirtualMCSensitiveDetector
Interface to a user defined sensitive detector.
Definition:
TVirtualMCSensitiveDetector.h:25
TVirtualMCSensitiveDetector::EndOfEvent
virtual void EndOfEvent()=0
End of event.
TVirtualMCSensitiveDetector::~TVirtualMCSensitiveDetector
virtual ~TVirtualMCSensitiveDetector()
Destructor.
Definition:
TVirtualMCSensitiveDetector.cxx:54
TVirtualMCSensitiveDetector::TVirtualMCSensitiveDetector
TVirtualMCSensitiveDetector()
Default constructor.
Definition:
TVirtualMCSensitiveDetector.cxx:39
TVirtualMCSensitiveDetector::ProcessHits
virtual void ProcessHits()=0
Process hits.
TVirtualMCSensitiveDetector::Initialize
virtual void Initialize()=0
Initialize detector.
TVirtualMCSensitiveDetector::operator=
TVirtualMCSensitiveDetector & operator=(const TVirtualMCSensitiveDetector &rhs)
Assignment operator.
Definition:
TVirtualMCSensitiveDetector.cxx:59