BOSS
7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
InstallArea/include/TrkBase/TrkBase/TrkVolume.h
Go to the documentation of this file.
1
//--------------------------------------------------------------------------
2
// File and Version Information:
3
// $Id: TrkVolume.h,v 1.2 2006/03/28 01:02:36 zhangy Exp $
4
//
5
// Description:
6
// TrkVolume Class -
7
// Abstract interface for the description
8
// of the tracking volume of any subdetector
9
//
10
// Environment:
11
// Software developed for the BaBar Detector at the SLAC B-Factory.
12
//
13
// Author List:
14
// Gautier Hamel de Monchenault - CEN Saclay & Lawrence Berkeley Lab
15
//
16
// History (add to end):
17
// Gautier May 6, 1997 - creation
18
// Dave Brown 5/11/97 Add a name member
19
//
20
// Copyright Information:
21
// Copyright (C) 1997 Lawrence Berkeley Laboratory
22
// Copyright (C) 1997 CEA - Centre d'Etude de Saclay
23
//
24
//------------------------------------------------------------------------
25
26
#ifndef TRKVOLUME_HH
27
#define TRKVOLUME_HH
28
29
#include "TrkBase/TrkDirection.h"
30
#include <string>
31
#include "CLHEP/Geometry/Point3D.h"
32
33
#ifndef ENABLE_BACKWARDS_COMPATIBILITY
34
// backwards compatibility will be enabled ONLY in CLHEP 1.9
35
typedef
HepGeom::Point3D<double>
HepPoint3D
;
36
#endif
37
38
class
Trajectory
;
39
40
class
TrkVolume
{
41
42
public
:
43
// Default ctor
44
TrkVolume
();
45
TrkVolume
(
const
char
*);
46
// Destructor
47
virtual
~TrkVolume
();
48
//
49
virtual
bool
extendThrough
(
const
Trajectory
* theTraj,
50
double
& theFlightDist,
51
trkDirection
theDirection=
trkOut
,
52
double
* theStartingFlightDist=0)
const
= 0;
53
// returns false if the point is outside the volume
54
virtual
bool
isInside
(
const
HepPoint3D
& )
const
= 0;
55
// Access to the name
56
const
std::string&
name
()
const
{
return
_tvname;}
57
private
:
58
std::string _tvname;
// define the volume name
59
};
60
61
#endif
trkDirection
trkDirection
Definition:
InstallArea/include/TrkBase/TrkBase/TrkDirection.h:23
trkOut
@ trkOut
Definition:
InstallArea/include/TrkBase/TrkBase/TrkDirection.h:23
HepPoint3D
HepGeom::Point3D< double > HepPoint3D
Definition:
InstallArea/include/TrkBase/TrkBase/TrkVolume.h:35
HepGeom::Point3D
Definition:
InstallArea/include/MagneticField/MagneticField/IMagneticFieldSvc.h:15
Trajectory
Definition:
InstallArea/include/MdcGeom/MdcGeom/Trajectory.h:35
TrkVolume
Definition:
InstallArea/include/TrkBase/TrkBase/TrkVolume.h:40
TrkVolume::name
const std::string & name() const
Definition:
InstallArea/include/TrkBase/TrkBase/TrkVolume.h:56
TrkVolume::isInside
virtual bool isInside(const HepPoint3D &) const =0
TrkVolume::TrkVolume
TrkVolume()
Definition:
TrkVolume.cxx:40
TrkVolume::extendThrough
virtual bool extendThrough(const Trajectory *theTraj, double &theFlightDist, trkDirection theDirection=trkOut, double *theStartingFlightDist=0) const =0
TrkVolume::~TrkVolume
virtual ~TrkVolume()
Definition:
TrkVolume.cxx:51
source
InstallArea
include
TrkBase
TrkBase
TrkVolume.h
Generated by
1.9.6