next up previous contents
Next: Pääikkunan näkymä (view.pas) Up: Analyysiohjelmiston toteutus Previous: Analyysisovelluksen moduulit

Pääohjelma (winana.pas)

Sovelluksen perusrakenne on Borland Pascalin ObjectWindows-kirjaston tukeman mallin mukainen. Kirjasto määrittelee kantaluokan TApplication, josta perimällä määritellään Windows-sovellus. Analyysisovelluksen määrittelee muuttuja AnalyseApp, jonka tyyppi on TAnalyseApp. Varsinainen Pascal-kielen mukainen pääohjelma ainoastaan alustaa muuttujan kutsumalla konstruktoria Init, kutsuu muuttujan metodia Run, ja lopettaa sovelluksen kutsumalla destruktoria Done.

Sovelluksen käynnistymisen kannalta oleellista on metodin TAnalyseApp.InitMainWindow määrittely, joka luo sovelluksen pääikkunan TAnalyseWin-tyyppiseksi. Sovelluksen varsinainen toiminta on koodattu tähän luokkaan, joka on peritty ObjectWindows-kirjaston luokasta TWindow. Sovelluksen pääikkuna ottaa vastaan kaikki Windows-järjestelmän viestit, jotka ovat pääasiassa lähtöisin käyttäjän toiminnoista. Borland Pascalissa näiden viestien käsittely tapahtuu määrittelemällä pääikkunan luokalle virtuaalimetodeja vastaamaan haluttuja Windows-järjestelmän viestejä. Luokka TAnalyseWin sisältää suuren määrän näitä viestejä käsitteleviä metodeja, mutta lisäksi tähän luokkaan on koodattu suuri osa pääikkunan näkymän tilaa ja sen mukaista ikkunaviestien käsittelyä. TAnalyseWin sisältää jäsenmuuttujan View, jonka tyyppi on moduulissa view.pas määritelty luokka TView, jonka tehtävä on hoitaa pääikkunan näkymä ja näkymän mukainen ikkunaviestien käsittely, mutta myös pääikkunalla on jäsenmuuttujia, jotka kertovat esimerkiksi pääikkunan sisältämät painonapit. Samoin osa käyttöliittymän tilasta pidetään pääikkunan jäsenmuuttujassa InputState. Luokka TView pitää kirjaa vain hiiren käyttöön liittyvästä tilasta. Pääikkunaluokka hoitaa myös tehtäviä, jotka yleensä Document/View -rakenteisissa Windows-sovelluksissa ovat Document-luokan vastuulla. TAnalyseWin sisältää jäsenmuuttujat, jotka pitävät kirjaa herkkyys/maksimi -analyysin tuloksista.

Luokan TAnalyseWin metodit hoitavat seuraavia tehtäviä:


  
Kuva 4.6: Tappien vaste voidaan määrittää ERG-mittauksella ja vasteiden jatkoanalyysillä.
Vasteet punaisella ja keltaisella Punaherkkien tappien vaste
Tappivasteet usealle intensiteetille

Pääikkunan valikko sisältää seuraavat toiminnot:

Hyvin suuri osa näistä toiminnoista on toteutettu moduulissa anatools.pas. Kuvassa 4.6 on esitetty joidenkin toimintojen käyttö tappivasteiden erottamiseen ERG-signaalista. Punaisella (642 nm) stimulusvalolla vasteessa nähdään sekä punaherkkien tappien että sauvojen kontribuutio. Keltaisella (553 nm) stimulusvalolla signaali on puhdas sauvavaste, koska punaherkät tapit eivät reagoi keltaiselle valolle, jonka intensiteetti on tarpeeksi pieni. Vähentämällä punaisen stimulusvalon vasteesta keltaisen stimulusvalon vaste saadaan puhdas punaherkkien tappien antama vaste, kun keltaisen stimulusvalon intensiteetti on valittu siten, että se stimuloi sauvoja yhtä paljon kuin punaisella valolla annettu stimulus.

Pääikkunan tilakone ei ole kovinkaan selkeästi näkyvissä sovelluksen rakenteesta, koska tilatieto on hajautunut eri moduuleihin. Lisäksi signaalin amplitudin normeerauksessa sovelluksen normaali viestinkäsittely on ohitettu (metodit TAnalyseWin.MarkZeroLevel ja TAnalyseWin.MarkMaxLevel). Tästä seuraa se, että sovelluksen pääikkunan päivitys ei toimi kyseisen toiminnon aikana normaaliin tapaan.


next up previous contents
Next: Pääikkunan näkymä (view.pas) Up: Analyysiohjelmiston toteutus Previous: Analyysisovelluksen moduulit
Antti Miettinen
9/3/1997

Valid HTML 3.2!