29#ifndef G4InterpolationManager_h
30#define G4InterpolationManager_h 1
58 if(start!=0)
delete [] start;
59 if(range!=0)
delete [] range;
60 if(scheme!=0)
delete [] scheme;
67 nRanges = aManager.nRanges;
68 nEntries = aManager.nEntries;
69 if(scheme!=0)
delete [] scheme;
70 if(start!=0)
delete [] start;
71 if(range!=0)
delete [] range;
73 start =
new G4int[nRanges];
74 range =
new G4int[nRanges];
75 for(
G4int i=0; i<nRanges; i++)
77 scheme[i]=aManager.scheme[i];
78 start[i]=aManager.start[i];
79 range[i]=aManager.range[i];
102 inline void Init(std::ifstream & aDataFile)
107 aDataFile >> nRanges;
108 start =
new G4int[nRanges];
109 range =
new G4int[nRanges];
113 for(
G4int i=0; i<nRanges; i++)
122 if(i!=0) start[i] = range[i-1];
127 nEntries = start[nRanges-1]+range[nRanges-1];
135 for(
G4int i=1; i<nRanges; i++)
137 if(index<start[i])
break;
void AppendScheme(G4int aPoint, const G4InterpolationScheme &aScheme)
G4InterpolationScheme MakeScheme(G4int it)
void Init(std::ifstream &aDataFile)
void Init(G4int aScheme, G4int aRange)
~G4InterpolationManager()
G4InterpolationScheme GetScheme(G4int index) const
G4InterpolationManager & operator=(const G4InterpolationManager &aManager)
void Init(G4InterpolationScheme aScheme, G4int aRange)
G4InterpolationScheme GetInverseScheme(G4int index)