mateuszbaran / ECG-analyzer

Main ECG-analyzer repository
GNU General Public License v2.0
45 stars 38 forks source link

Brak możliwośći wczytania sygnału! #14

Closed fuko-fabio closed 11 years ago

fuko-fabio commented 11 years ago

Od początku nie jestem wstanie wczytać pliku z sygnałem do programu, po wybraniu pliku z gui niezależnie od typu pliku(atr, hea, dat) otrzymuje komunikat jak w załączonym pliku. VS zatrzymuje się w pliku ecgh.cpp na lini 54.

Nie tylko ja mam z tym problem wiec proszę o rozwiązanie tego.

Wczytywanie nie działa zarówno w gui jak i w testach.

Po debugu w Kontrolerze dokładnie w lini:

if (isigopen(const_cast<char*> (filename.c_str()), s, 2) < 2)

sygnał nie zostaje wczytany mimo ze jest podana scieżka.

error

kn65op commented 11 years ago

Wyślij albo wklej log, jest w pliku log.log.

fuko-fabio commented 11 years ago

ECGController.cpp [18] : ECGController created, 20:51 17-12-2012 ECGController.cpp [335] : ECGController::readFile ECGController.cpp [350] : File ECGController.cpp [351] : filename = D:/signals/100 ECGController.cpp [352] : Not loaded ECGController.cpp [353] : END: ECGController::readFile

kn65op commented 11 years ago

Uruchom aplikację z brancha for_debug_open_file i wyślij zawartość pliku err.log.

fuko-fabio commented 11 years ago

Nie widze brancha for_debug_open_file. Puscilem sobie debuga i funkcja 'isigopen' zwraca -1. Failure: unable to read `header' file (probably incorrect record name)

kn65op commented 11 years ago

I masz wszystkie 3 pliki (szczególnie hea i dat) w jednym katalogu (w tym,
w którym jest plik, który zaznaczasz)?

PS: problem na łączach, teraz już jest.

fuko-fabio commented 11 years ago

plik err init: can't open header for record D:/signals/202

plik log ECGController.cpp [18] : ECGController created, 20:51 17-12-2012 ECGController.cpp [335] : ECGController::readFile ECGController.cpp [350] : File ECGController.cpp [351] : filename = D:/signals/202 ECGController.cpp [352] : Not loaded ECGController.cpp [353] : END: ECGController::readFile

Wszystkie trzy pliki w tej samej lokalizacji pobrane ze strony, próbowałem dla rożnych sygnałów i nic. Zawsze isigopen zwraca -1

kn65op commented 11 years ago

Nie jestem w stanie zreprodukować błędu przy użyciu plików pobranych z bazy. Jaki masz system?

fuko-fabio commented 11 years ago

Windows 8 Kolega na Windows 7 ma to samo.

kn65op commented 11 years ago

W tym momencie nie jestem w stanie nic więcej zrobić.

fuko-fabio commented 11 years ago

Generalnie nie widziałem jeszcze tej aplikacji działającej. Chciałem przynajmniej zobaczyć czy mój moduł cokolwiek robi no ale może dowiem się z jutrzejszych slajdów :P

fuko-fabio commented 11 years ago

Zbudowałem i uruchomiłem to na Ubuntu, efekt:

init: can't open header for record /windows/d/signals/107 ecg-analyzer: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: T* boost::shared_ptr::operator->() const [with T = WrappedVector]: Warunek zapewnienia `px != 0' nie został spełniony. Przerwane (core dumped)

czyli to samo.

kn65op commented 11 years ago

To może ściągnij jeszcze raz sygnały, bo wygląda na to, że Twoje pliki są
nieodpowiednie.

ghost commented 11 years ago

Rozwiązanie jest PROSTE ale #$#@%(tu miało być brzydkie słowo) (przynajmniej u mnie na dokładnie ten sam exception)! Coś się rąbie z tym jak masz spacje w ścieżce gdzie znajduje się sygnał czy też projekt, uprość sobie ścieżkę najlepiej cały projekt przenieść na C:\ECG-analyzer\ i wrzuć do tego samego folderu plik z sygnałem ew. do podkatalogu C:\ECG-analyzer\MIT_BIH_Signals ja tak mam. Chyba swoją drogą to już zgłaszałem, ale nikt z tym nic nie zrobił

cocolino87 commented 11 years ago

http://www.forum.stosowana.pl/viewtopic.php?f=912&t=22030&p=255770#p255770

kn65op commented 11 years ago

Wyjątek to jest inna sprawa, to błąd jest po stronie GUI. Zaraz do tego będzie zgłoszony problem. Co do spacji w ścieżce, to u mnie taki problem nie występuje i otwierane są wszystkie pliki sygnału, niezależnie od tego gdzie się znajdują.

fuko-fabio commented 11 years ago

Pierwsze co zrobiłem to sprawdziłem ścieżki bo miałem długie i ze spacjami. Obecnie projekt mam w D:/ecg/ECG-analyzer a sygnały w D:/signals. Wiec rozwiązanie jednak nie jest takie proste.