/usr/include/root/TGeoGlobalMagField.h is in libroot-geom-dev 5.34.19+dfsg-1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | // @(#)root/geom:$Id$
/*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOT_TGeoGlobalMagField
#define ROOT_TGeoGlobalMagField
#ifndef ROOT_TObject
#include "TObject.h"
#endif
#ifndef ROOT_TVirtualMagField
#include "TVirtualMagField.h"
#endif
////////////////////////////////////////////////////////////////////////////
// //
// TGeoGlobalMagField - Global magnetic field manager. A field derived //
// from TVirtualMagField becomes global if registered via SetField //
// method.
// //
////////////////////////////////////////////////////////////////////////////
class TGeoGlobalMagField : public TObject
{
private:
static TGeoGlobalMagField *fgInstance; // Static pointer to the field manager;
TVirtualMagField *fField; // Magnetic field
Bool_t fLock; // Lock flag for global field.
protected:
TGeoGlobalMagField(const TGeoGlobalMagField&);
TGeoGlobalMagField& operator=(const TGeoGlobalMagField&);
void Unlock() {fLock = kFALSE;}
public:
TGeoGlobalMagField();
virtual ~TGeoGlobalMagField();
// Using SetField() makes a given field global. The field manager owns it from now on.
TVirtualMagField *GetField() const {return fField;}
void SetField(TVirtualMagField *field);
Bool_t IsLocked() {return fLock;}
void Lock();
// The field manager should be accessed via TGeoGlobalMagField::Instance()
static TGeoGlobalMagField *Instance();
static TGeoGlobalMagField *GetInstance();
// Inline access to Field() method
void Field(const Double_t *x, Double_t *B) {if (fField) fField->Field(x,B);}
ClassDef(TGeoGlobalMagField, 0) // Global field manager
};
#endif
|