54 lines
1.5 KiB
C++
54 lines
1.5 KiB
C++
// This code implementation is the intellectual property of
|
|
// the GEANT4 collaboration.
|
|
//
|
|
// By copying, distributing or modifying the Program (or any work
|
|
// based on the Program) you indicate your acceptance of this statement,
|
|
// and all its terms.
|
|
//
|
|
// $Id: G4ElectroMagneticField.hh,v 1.4 2000/11/01 15:15:48 gcosmo Exp $
|
|
// GEANT4 tag $Name: geant4-03-00 $
|
|
//
|
|
//
|
|
// class G4ElectroMagneticField
|
|
//
|
|
// Class description:
|
|
//
|
|
// A full Electromagnetic field, containing both electric and magnetic fields.
|
|
// It is an abstract class, and a derived type of this field must be
|
|
// created by the user to describe his/her field configuration.
|
|
|
|
// History:
|
|
// - Created: J.Apostolakis, November 12th, 1998
|
|
|
|
#ifndef G4ELECTROMAGNETIC_FIELD_DEF
|
|
#define G4ELECTROMAGNETIC_FIELD_DEF
|
|
|
|
#include "G4MagneticField.hh"
|
|
|
|
class G4ElectroMagneticField : public G4MagneticField
|
|
{
|
|
public: // with description
|
|
|
|
G4ElectroMagneticField() {;}
|
|
virtual ~G4ElectroMagneticField() {;}
|
|
|
|
G4ElectroMagneticField(const G4ElectroMagneticField &) {;}
|
|
G4ElectroMagneticField& operator = (const G4ElectroMagneticField &);
|
|
// Copy constructor & assignment operators.
|
|
|
|
virtual void GetFieldValue(const G4double Point[3],
|
|
G4double *Bfield ) const = 0;
|
|
};
|
|
|
|
// Inline implementations
|
|
|
|
inline
|
|
G4ElectroMagneticField&
|
|
G4ElectroMagneticField::operator = (const G4ElectroMagneticField &p)
|
|
{
|
|
if (&p == this) return *this;
|
|
*this = p; return *this;
|
|
}
|
|
|
|
#endif /* G4ELECTROMAGNETIC_FIELD_DEF */
|