Compare commits

..

No commits in common. "a072c1f6a42fd74d3e8318f7ee221ec9ff22f792" and "500aba94d2296b0266fd23bab88508b38c9bc339" have entirely different histories.

View File

@ -182,77 +182,3 @@ int readDoubleArray(char *pcInName, double **ppdIn) {
return i;
}
MMSignal *createSignal() {
MMSignal *signal = NULL;
signal = (MMSignal*) malloc(sizeof(MMSignal));
if (signal == NULL)
_error("createSignal: Failed to allocate memory for signal\n");
signal->pdValues = NULL;
signal->iNumValues = 0;
signal->dArea = 0;
signal->dMean = 0;
signal->dStdDev = 0;
signal->dMedian = 0;
signal->pexExtrema = NULL;
return signal;
}
MMSignal *createSignalFromSignal(MMSignal *pmmsIn) {
MMSignal *signal = createSignal();
// Initialize and copy the values (deep copy)
signal->pdValues = (double*) malloc(sizeof(double) *pmmsIn->iNumValues);
if (signal->pdValues == NULL)
_error("createSignalFromSignal: Failed to allocate memory for signal->pdValues\n");
for (int i = 0; i < pmmsIn->iNumValues; i++) {
signal->pdValues[i] = pmmsIn->pdValues[i];
}
// Copy shallow items
signal->iNumValues = pmmsIn->iNumValues;
signal->dArea = pmmsIn->dArea;
signal->dMean = pmmsIn->dMean;
signal->dStdDev = pmmsIn->dStdDev;
signal->dMedian = pmmsIn->dMedian;
// Deep copy of Extrema
signal->pexExtrema = (Extrema*) malloc(sizeof(Extrema));
if (signal->pexExtrema == NULL)
_error("createSignalFromSignal: Failed to allocate memory for signal->pexExtrema\n");
signal->pexExtrema->iGlobalMinPos = pmmsIn->pexExtrema->iGlobalMinPos;
signal->pexExtrema->iGlobalMaxPos = pmmsIn->pexExtrema->iGlobalMaxPos;
signal->pexExtrema->pexLocalMax = (LocalExtrema*) malloc(sizeof(LocalExtrema));
if (signal->pexExtrema->pexLocalMax == NULL)
_error("createSignalFromSignal: Failed to allocate memory for signal->pexExtrema->pexLocalMax\n");
signal->pexExtrema->pexLocalMax->iNumLocalExtrema = pmmsIn->pexExtrema->pexLocalMax->iNumLocalExtrema;
signal->pexExtrema->pexLocalMax->piLocalExtremaPos = (int*) malloc(sizeof(int) *pmmsIn->pexExtrema->pexLocalMax->iNumLocalExtrema);
if (signal->pexExtrema->pexLocalMax->piLocalExtremaPos == NULL)
_error("createSignalFromSignal: Failed to allocate memory for signal->pexExtrema->pexLocalMax->piLocalExtremaPos\n");
for (int i = 0; i < pmmsIn->pexExtrema->pexLocalMax->iNumLocalExtrema; i++) {
signal->pexExtrema->pexLocalMax->piLocalExtremaPos[i] = pmmsIn->pexExtrema->pexLocalMax->piLocalExtremaPos[i];
}
signal->pexExtrema->pexLocalMin = (LocalExtrema*) malloc(sizeof(LocalExtrema));
if (signal->pexExtrema->pexLocalMin == NULL)
_error("createSignalFromSignal: Failed to allocate memory for signal->pexExtrema->pexLocalMin\n");
signal->pexExtrema->pexLocalMin->iNumLocalExtrema = pmmsIn->pexExtrema->pexLocalMin->iNumLocalExtrema;
signal->pexExtrema->pexLocalMin->piLocalExtremaPos = (int*) malloc(sizeof(int) *pmmsIn->pexExtrema->pexLocalMin->iNumLocalExtrema);
if (signal->pexExtrema->pexLocalMin->piLocalExtremaPos == NULL)
_error("createSignalFromSignal: Failed to allocate memory for signal->pexExtrema->pexLocalMin->piLocalExtremaPos\n");
for (int i = 0; i < pmmsIn->pexExtrema->pexLocalMin->iNumLocalExtrema; i++) {
signal->pexExtrema->pexLocalMin->piLocalExtremaPos[i] = pmmsIn->pexExtrema->pexLocalMin->piLocalExtremaPos[i];
}
return signal;
}