
all: convertsignal2float computepowernobaseline qualitytest signal_length inspectrecord readsignals_qualityindices testbeatdetector convertfileannotationstofs


SRCconvertsignal2float = writesignal2filephysicalunits.cpp 
SRCcomputepowernobaseline = computepowernobaseline.cpp movingaveragecentered.cpp
SRCreadsignals_qualityindices = readsignals_qualityindices.cpp selectsignalforinterval.cpp \
selectannotationsoninterval.cpp
SRCtestbeatdetector = testbeatdetector.cpp  auxfunctions.cpp findlocmax.cpp  movingaveragecentered.cpp insertsignalrecord.cpp


CC=gcc -g
CFLAGS = -Wall
OBJ=beatlib.o 
LIB=beatlib.h
CPPflags=-g -Wall -Wwrite-strings

convertsignal2float : $(SRCconvertsignal2float)
	g++ -g $(SRCconvertsignal2float) -o convertsignal2float  -lwfdb -lgsl -lgslcblas

computepowernobaseline : $(SRCcomputepowernobaseline)
	g++ -O3 $(SRCcomputepowernobaseline) -o computepowernobaseline  -lwfdb -lgsl -lgslcblas



qualitytest : qualitytest.o $(OBJ) $(LIB)
	$(CC) $(CFLAGS) -o qualitytest qualitytest.o $(OBJ) 


signal_length: signal_length.cpp
	g++ -o signal_length signal_length.cpp -lwfdb -lm

%.o : %.c
	$(CC) -o $@ $(CFLAGS) -c $< 

inspectrecord : inspectrecord.cpp
	g++ -O3 inspectrecord.cpp -o inspectrecord -lwfdb


readsignals_qualityindices :  $(SRCreadsignals_qualityindices)
	g++ -g $(SRCreadsignals_qualityindices) -o readsignals_qualityindices -lwfdb

testbeatdetector : $(SRCtestbeatdetector)
	g++  -g -fpermissive $(CPPflags) $(SRCtestbeatdetector) -o testbeatdetector -lwfdb -lgsl -lgslcblas

convertfileannotationstofs : convertfileannotationstofs.cpp
	g++ -g convertfileannotationstofs.cpp -o convertfileannotationstofs
