restructure and add ipi texs

This commit is contained in:
2019-11-06 18:24:04 +01:00
parent e21da561fc
commit 8fd8d2a485
155 changed files with 129 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
class DynamicFloatArray : public FloatArray {
public:
DynamicFloatArray () {n=0; o=0; p=new float[1];}
virtual ~DynamicFloatArray() {delete[] p;}
virtual float& operator[](int i);
virtual int numIndices () {return n;}
int minIndex () {return o;}
int maxIndex () {return o+n-1;}
bool isMember (int i) {return (i>=o)&&(i<o+n);}
private:
int n; // Anzahl Elemente
int o; // Ursprung der Indexmenge
float *p; // Zeiger auf built-in array
} ;
float& DynamicFloatArray::operator[] (int i)
{
if (i<o || i>=o+n)
{ // resize
int new_o, new_n;
if (i<o) {
new_o = i;
new_n = n+o-i;
}
else {
new_o = o;
new_n = i-o+1;
}
float *q = new float[new_n];
for (int i=0; i<new_n; i=i+1) q[i]=0.0;
for (int i=0; i<n; i=i+1)
q[i+o-new_o] = p[i];
delete[] p;
p = q;
n = new_n;
o = new_o;
}
return p[i-o];
}