Revision 1 -
(download)
(annotate)
Mon Feb 10 17:09:07 2014 UTC
(10 years, 6 months ago)
by agomez File size: 899 byte(s)
Initial version based on Gadget 2.2.00
#include "addresskeepermatrix.h"
#include "gadget.h"
AddressKeeperMatrix::~AddressKeeperMatrix() {
int i;
if (v != 0) {
for (i = 0; i < nrow; i++)
delete v[i];
delete[] v;
v = 0;
}
}
void AddressKeeperMatrix::resize() {
int i;
if (v == 0) {
v = new AddressKeeperVector*[1];
} else {
AddressKeeperVector** vnew = new AddressKeeperVector*[nrow + 1];
for (i = 0; i < nrow; i++)
vnew[i] = v[i];
delete[] v;
v = vnew;
}
v[nrow] = new AddressKeeperVector();
nrow++;
}
void AddressKeeperMatrix::Delete(int pos) {
delete v[pos];
int i;
if (nrow > 1) {
AddressKeeperVector** vnew = new AddressKeeperVector*[nrow - 1];
for (i = 0; i < pos; i++)
vnew[i] = v[i];
for (i = pos; i < nrow - 1; i++)
vnew[i] = v[i + 1];
delete[] v;
v = vnew;
nrow--;
} else {
delete[] v;
v = 0;
nrow = 0;
}
}