HØGSKOLEN I BERGEN Avde ling for ingeniørutdanning Instit utt for elektrofag



Like dokumenter
2. Å R S B E R E T N I N G O G R E G N S K A P F O R A ) Å r s b e r e t n i n g o g r e g n s k a p f o r

K j æ r e b e b o e r!

S T Y R E T G J Ø R O P P M E R K S O M P Å A T D Ø R E N E S T E N G E S K L

K j æ r e b e b o e r!

K j æ r e b e b o e r!

K j æ r e b e b o e r!

Oppgaver Oppgave a: Sett opp mulige relasjoner

I N N K AL L I N G T I L O R D I N Æ R T S A M E I E R M Ø T E

K j æ r e b e b o e r!

Eksamen i Internetteknologi Fagkode: IVA1379

K j æ r e b e b o e r!

K j æ r e b e b o e r!

I N N K A L L I N G T I L O R D I N Æ R T S A M E I E R M Ø T E

Miniverden og ER- modell

K j æ r e b e b o e r!

1. SQL datadefinisjon og manipulering

HØGSKOLEN I SØR-TRØNDELAG

Innhold. For br u ker k jøps lo vens omr åde. Prin sip pet om yt el se mot yt el se sam ti dig hets prin sip pet. Selgers plikter.

Høgskolen i Telemark EKSAMEN 6102 DATABASER Tid: Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1

1. Innføring i bruk av MySQL Query Browser

Bjerkreim kyrkje 175 år. Takksemd. Tekster av Trygve Bjerkrheim Musikk av Tim Rishton

INNKALLING TIL ORDINÆRT SAMEIERMØTE 2009

FAGKONFERANSE KONTROL L OG TILSYN GARDERMOEN JUNI A RSMØTE I FORU M FO R KONTROLL OG TILSYN 5. JUN I 2013

Tilkobling og Triggere

Innhold. Ka pit tel 1 Inn led ning Barn og sam funn Bo kas opp byg ning... 13

I n n k a l l i n g t i l o r d i n æ r t s a m e i e r m ø t e

K U R S H E F T E WEB REDAKSJON

BOKMÅL Side 1 av 5. KONTERINGSEKSAMEN I FAG TDT4102 Prosedyre og objektorientert programmering. Onsdag 6. august 2008 Kl

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

Del I InDustrIutvIklIng: en fortelling om fornyelsen av luftfart... 15

Inn led ning...13 Bo kens inn hold og opp byg ning For plik tel ses ba sert ver sus kon troll ori en tert HR Hva er så ef fek tiv HR?...

INNKALLING TIL ORDINÆRT SAMEIERMØTE 2010

HØGSKOLEN I SØR-TRØNDELAG

K j æ r e b e b o e r!

Løsningsskisse, eksamen J2EE og distribuerte systemer 19.mai 2004

1 Forutsetninger og rammebetingelser for fleksible organisasjonsformer

Programmering i C++ Løsningsforslag Eksamen høsten 2005

Kan du Løveloven...?

SQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data

8 ØKONOMISTYRING FOR LØM-FAGENE

Åsveien 9, 3475 Sætre Telefon: Mobiltelefon: Faks: E-post:

Å bruke Java API-et til å sortere tabeller/arraylister der elementene er (referanser til) objekter

Pålogging. Hovedsiden på Bilde 1

Databaser: Relasjonsmodellen, del I

Sensorveiledning for IN2090 og INF desember :30 18:30 (4 timer)

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Høgskolen i Telemark EKSAMEN 6102 DATABASER Tid: Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1

INNKALLING TIL ORDINÆRT SAMEIERMØTE 2010

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING

HØGSKOLEN I SØR-TRØNDELAG

Databaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer)

Oppmerksomhet Emosjon og emosjonsregulering Relasjonen mellom emosjonsregulering og oppmerksomhet 36

HØGSKOLEN I SØR-TRØNDELAG

UNIVERSITETET I OSLO

HØGSKOLEN I SØR-TRØNDELAG

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid:

TDT Prosedyre- og objektorientert programmering

Sk ie n ko mm une. R EG UL E R I N GS B ES T E MM E L SER T I L D eta ljr e gu l e ri n g

EKSAMEN 6102 / 6102N DATABASER

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid:

Hurtigveiledning for oppsett av Alarmpakke

INNKALLING TIL ORDINÆRT SAMEIERMØTE 2010

Sangere. Mannen i songen. Kantate for mannskor, guttesopraner og klaver. Komponert til Verdal mannskor sitt 100-årsjubileum i 2013

Eksamen i IBE102 Webutvikling Våren 2017.

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS

Innledning Noen be grep Mange muligheter... 17

Klasser skal lages slik at de i minst mulig grad er avhengig av at klienten gjør bestemte ting STOL ALDRI PÅ KLIENTEN!

2. Å R S B E R E T N I N G F O R Å R S R E G N S K A P F O R M E D B U D S J E T T F O R

MySQL-database, php. Innhold. 8 MySQL-database, php. 8.1 Databasen MySQL

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer


TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Brukermanual for webmail

Databaser kort intro. Tom Heine Nätt

UNIVERSITETET I OSLO

Hvordan registrere et nytt medlem

1. SQL spørringer mot flere tabeller

81,9(56,7(7(7,26/2 'HWPDWHPDWLVNQDWXUYLWHQVNDSHOLJHIDNXOWHW

ORDINÆR GENERALFORSAMLING 2010 AS TØYENPARKEN BOLIGSELSKAP TORSDAG 6. MAI 2010 I CAFE EDVARD MUNCH, MUNCHMUSEET

K j æ r e b e b o e r!

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE. Antall sider (Inkl forsiden): 8. Alle trykte og håndskrevne

SJEKK: At Acrobat Reader er installert på din PC. Dersom ikke kan programmet lastes ned gratis fra

INNKALLING TIL ORDINÆRT SAMEIERMØTE 2010

Eagle 1500 FAQ. Innholdsfortegnelse

INNKALLING TIL ORDINÆRT SAMEIERMØTE 2010

Innholdsfortegnelse. Sector Alarm AS...4. Ordliste Alarmsystemets betjeningspanel Hva gjør jeg ved utløste alarmer...


UNIVERSITETET I OSLO

Forfatterens forord til den norske utgaven

r r F r r pram de har tatt. yin -

LIVSSTIL. Kamillepuls. Villa Fredbo: Line Evensen har en oase av et ba de væ rel se i sitt hjem Villa Fredbo på Nesodden.


BRUKSANVISNING. Trådløs boligalarm. Type POWERMAX +

Brukerhåndbok. Alarmtjeneste. Visonic PowerMaster

K j æ r e b e b o e r!

Transkript:

HØGSKOLEN I BERGEN Avde ling for ingeniørutdanning Instit utt for elektrofag EKSAME I: KLASSE: DATO: TOE053 Industriell IT 3EB 07.12.2007 Antall sider: Antall oppga er: Hjelpem idler: Tid: Sensor: Faglæ rere: forside + 7 sider oppgaver + 3 sider vedlegg 4 Kalkulator, alle typer ElmasrilNavathe: " Fundamentals ofdatabase stems" Ullman: " MySQL - Visu al Quickstart Guide" DuBois: " lysql - The definitive guide... " Abada: "Programming My QL with Visual C++ 6.0" 9.00-14.00 Gerhard Nygaard Adis Hodzic, Jan Martin Johannessen

Oppgave 1 (2 0 %) al bl Hva er formålet med SOL? Anta at noe n har laget en SOL-beskrivelse av system X. Anta videre at vi skal implemente re systemet ved å bruke C++ og Win32API systemfunksjoner. i. Hva er det et blokkdiagram forteller til en som skal implementere systemet? ii. Hva e r det et prosessdiagram forteller til en som skal implemente re system et? c) Du har fått i op pdrag å modellere et bankhvelvsystem ved hjelp av SOL. Følgend e kraver gitt: Hvelv låses (låsen er en ekstern enhet) ved å sende et signal (signal "Iaas ') når en dø rsensor (også en ekstern enhet) signa liserer at døren ble lukket (signal "lukket'). For å åpne hvelvet trenger man et bruk ernavn og et passord. Apn ingsprosedyren er som følger: Et brukernavn (signal "brukernavn", som bæ rer e n streng) mottas fra en ekstern enhet - en terminal. Systemet ska l deretter ve nte på et pa ssord (signal "passord", som mottas fra terminalen, og som også bærer med seg en streng). Passordet og brukemavnet evalueres. Hvis begge er gyldige blir døren åpnet (signal "aapne" sende s til låsen). Riktig passord må komme maks 60 sekunder etter at "brukernavnt-siqnatet e r mottatt. Systemet tillater maks tre passord-forsøk. (Merk at brukernavn tastes kun en gang.) Hvis systemet detekterer et "ikke vellykket åpningsforsøk" (brukernavn og/eller passord er ugyldig, eller tiden løper ut), skal systemet sende et alarmsignal (signal "alann", uten noen data) til bankens sikkerhetsavdeling (en ekstern enhet). For enkelhets skyld antar vi at kun ett bruke rnavn-passord-par eksisterer og er "hardkodel" i systemet som to strengvariab ler (se "Ban khvelv" prosessdiagram). Din oppgave: Vedlegg 1 inneholder diagrammer som viser deler aven mulig bankhvelvsystemmodell. Du skal gjøre følgende: I) Systemdiagrammet i vedlegg 1 mangler noen deklarasjoner for at det skal være komplett. Oppgi de deklarasjo ner som må legges til. Hint: Analyser systemdiagrammet og les oppgaveteksten nøye. Il) Tegn ferd ig prosessdiagramm et "Bankhvelv". Ikke glem nødve ndige deklarasjoner. 2

Oppgave 2 (30 %) a) Navngi tre typer av systemobjekter (foruten "Event"-objekter) som har synkronisering som primærformål. Navngi også minst to typer av systemobjek ter som kan brukes som synkroniseringsobje kter, men som ikke har synkronise ring av tråder som primærformål b) Forklar hvordan vi bruker et "Event"-objekt og oppgi minst en forskjell mellom "manual reset "- og "autornatic reset---e ve nt'"-objekter. Diskusjone n din skal også nevne W IN32API-funksjo ner vi benytter oss av når vi skal bruke et elle r flere "Event"-objekter. c) Et "Critical Section"-objekt ligner (virkemess ig) på en annen type av synkroniseringsobjekter. Navngi de n andre synkronise ringso bjekltypen. Fork lar kort om forde ler og ulemper ved å bruke "Critical Section"-objekter framfo r den andre objekltype n. d) I ved legg 2 finner du et SOL-fragment og et prog ramfragment som viser en del aven mulig implementasjon. Du skal skrive C++-kode for funksjon main ( ). Koden din skal være i samsvar med SOL-fragmentet (og resten av koden som allerede er skrevet ). Nødvendige Win32API-deklarasjoner finner du i vedlegg 3. 3

Oppgave 3 og.j dreier seg om databasedelen av pensum. Vær snill å begynne på nytt ark når du begynner å svare på disse oppgavene. Oppgave 3 (teller 25 % ) [ Bakgrunnsstoff hentet fra ww\\.stato ilhydroxom.) Bildet viser Kizomba A feltet utenfor ky sten av Ang Ola Bakgrunn StatoilHydro har virksomhet over hele kloden. Produksjonsanlegg o ltshore og på land må kon tinuerlig vedlikeholdes og store og små kom ponenter må skiftes ut, enten ved planlagt vedlikehold eller når uforutsette feil oppstår. For o ftshorean legg finnes det regionale lagre på land som skal dekke dette behovet. Når kompon enter skal leveres offshore brukes vanligvis fo rsyningsskip, men også helikopter. Når deler skal leveres til anlegg på land brukes Statoilllydros eg ne biler. offe ntlig post. distribusjonsfirma osv., alt etter mengde. hvor mye det haster og hva det koster. På grunn av fusjonen mellom Statoil og Hydros olje- og gassvirksomhet må det designes et nytt logistikksystem. Dette skal håndte re all forsendelse av komponenter og skal kunne brukes av alle ansatte. uansett hvor de befinner seg. Et typisk scenario: Kåre på Troll Acplattforrncn oppdage r at en pakning i en ventil lekker. l ian logger seg på logistikksystemet og bestiller et pakningssett til den aktuelle ventilen. li an krysser av for at dette haster. To ne p lageret på CCB-basen på Ågotnes tar opp bestillingen på skjermen. Il un finner pakningssettet. printer ut en etikett med nødvendig informasjon, fester etiketten på pakningssettct og legger det i hyllen merket "T roll A haster". Seinere blir pakningssettet hentet av en bil som kjører den til Flesland. Sjåføren sørger for at forsendelsen kommer med neste helikopter til Troll A. Kåre kan hele tiden følge med på sin skjenn hvor pakningssettet er og tar i mot det når helikopteret lander eiler ser etter det i mottakshyllen.

Vi skal nå konsentrere oss om en database som håndterer og følger opp/ orsefl(lelser av fysiske komponenter mellom lager og anlegg. Du kan se bort fra innkjøp, lagerhold. lagerstyring, sending av bestilli ng til lage r, vedlikeholdsplane r, kostnader osv. Her er noen holdepunkter for det som er sentralt: Vi har fysiske lagre der komponenter leveres fra. Vi har fysiske produksjonsanlegg (plattformer, rigger. anle gg på land) som mottar komponenter. Mellom et lager og et anlegg foregår forsendelser - tenk på det so m pakker. En forsendel se kan inneholde flere forskjellige kom ponenter av fors kjellig an tall. Hver forsendelse er knyttet til en ansvarlig person. (Fo r uforutsett vedlikehold er det typisk den so m oppdager feilen og bestiller komponentene, for planlagt vedlikehold kan det være en leder på land som er ansvarlig.) Hver forsendel se er knyttet til en organisatorisk enhet som er ansvarlig for mottaket av den. (Husk at den som bestilte ikke nød vendi gvis er på vakt når forsendel sen ankommer.) Hver forsendelse er merket med all relevant informasjon. (I praksis en stor klistrelapp som er printet ut av den som klargjorde forsendelsen.) Det skal være mulig for alle ansatte til en hver tid å kunne spore og følge enhver forsendelse via logistikksystemet: Hvor er forsendelsen nå? Når er forven tet ankomst? Hvilket trans portm iddel kommer den med? Visse forsendelser må spesialhåndteres og infonnasjon om dette må følge forsendelse n: Noe er stort og tungt, noe går len i stykker, noe er giftig, noe er brannfarlig, noe er eksplosivt, noe utgjø r en milj øtrussel. Din o ppgave Din oppgave nå er å designe et databasesystem som kan håndtere den logistiske prob lemstillingen som er beskrevet foran: a) Tegn et ER-diagra m eller EER-d iagram. Angi de viktigste attributtene. l lusk å angi primærnøkler. b) Gi en komp lett logisk re lasjonsmo de ll (= logical schcma I relation schema, som beskrevet f.eks. på s l44 i Elmasri/Navathe) for din datamodell. Angi datatype for hve rt attributt. Angi primærnøkkel (primary key) med understrekin g. Husk at frem mednokler skal være med. e) Forklar kort hvordan din datamodell. altså ditt svar på spørsmål a) og b). sta rter in formasjon om farlige forsendel ser. Til leggsspørsmål som gjelder hele logi stikksystemet: d) Forklar kort hvordan du tenker deg at logi stikksystemet til Statoill-lydro som helhet må utformes for å: l. Sikre at informasjon om farlige forsendelser er mest mulig synlig for alle invo lverte personer. Il. Sikre at det er enkelt for en ansatt å ta oversikt over status til forsendelser han/hun venter på. 5

Oppgave 4 (25 %) Bakgrunn Det finne flere vakt el kaper som in l Il rer alarmanlegg i boliger. drifter disse og håndterer situa joncn når en alarm utlc e. l edenfor finner du en ER-m dell for en databasel ning h t tenkt vak el kap. Sen sor N I Deteksjo n I N nl::l!'o!'op.rinn ER- modell Forklaring til ER-modellen ( vb: Modellen er f orenklet iforhold til hm 'om vil "ære reali tisk. Det er for eksempel ikke talt hen yn til ukturering eller alarm for eldre og syke. Håndtering og oppfølging av alarmutlo ning er o 'ei terkt forenklet. Hv r kunde kan ha flere alarmanl ga. for ek empel el hjemme og et på hy ten. Hver kunde har el passord de må oppgi på oppfordring der om alannen utlø es ved el uh Il. Hvert anlegg har en alannkode gyldigkode om brukeren m ta te for deaktivere innbrudd alarmen når de går inn i hu et. Tre typer alarm kan utløses: o Brann o Innbrudd o erfall Disse er representert henh old vis med bokstavene "B", ''1'' og"., i implementasjoncn om er dokume ntert neden for. Til et alarmanlegg kan det være knyttet flere ensorer av ulik typ : 6

o Senscrtyper so m utløser brannalann: Vanne Røyk Flamme o Sen sortyper som utlø ser innbruddsalarm: Bevegelse Knusing av rute pning av dor/vindu A lann kan utløses på disse måtene: o Deteksjon - en sensor gir signal o Innlas ting: Noen taste r feil alannkod e gjentatte ganger Bruker taster egne koder for overfall ell er brann på betjenings panelet Modellen er implementert slik i ~l ysq L v5.1: CREATE TASLE kunde ( kundenr int (lo) unsigned NOT NULL AUTO_INCREMENT, navn v a r c ha r( 4 S) NOT NULL, ad r e s s e varchar(4s ), mobi l c har (12), passord char(20), PRIMARY KEY (kunde Nr) ) ; CREATE TASLE produs ent ( prodio int(lo) unsigned NOT NULL AUTO_INCREMENT, navn varchar (4S ), PRIMARY KEY (prod I D)) ; CREATE TASLE anlegg ( a n l e gg I D i nt(lo) uns igned NOT NULL AUTO_ INCREMENT, gateadr varchar(4s), postnr s ma llint (4 ) uns i gne d ze r o f ill NOT NULL, poststed varcha r( 4 S) NOT NU LL, tel e f o n char (12 ) NOT NULL, gyldigkode smallint (4 ) uns igned zerofill NOT NULL, kundenr i nt (lo ) unsigned NOT NULL, prodlo i nt( lo) unsigned, P RI~ARY KEY (an l e g g I D), FOREIGN KEY (p r odi D) REFERENCES p r odusent (p rodid), FOREIGN KEY (kund e Nr) REFERENCES kunde (kund e Nr») ; CREATE TASLE sensor ( anl eggio int (lo) unsigned NOT NULL, s e nsor Nr tinyint (3) unsigned NOT NULL, a larmtype enum ( 'B ', ' I', 'O' ) NOT NULL, sensortype enum (' røyk', ' v a rme ', ' f l a mme', 'bevegelse', 'knus i ng ', ' Apning'} NOT NULL, p l assering varchar(45), prodid i nt( lo) uns i g ne d, PRI MARY KEY (anle g g I D, sensor Nr), FOREIGN KEY (anl egg ID) REFERENCES anlegg (anlegg I D), FOREI GN KEY (prodid) REFERENCES produsent (p rodid) ; 7

CREATE TABLE utlosni ng ( anleg g I D i nt (lo) unsig ne d NOT NULL, tidspunkt datetime NOT NULL, alarmtype enum( ' B ', ' I ', ' O' ) NOT NULL, status c h a r (l), t astet Kode smallint (4 ) u nsigned ze rofi l l, s e nso rnr tiny i nt(3 ) unsigned, PRI MARY KEY (a n l e g g ID, tid s pu nk t), FOREI GN KEY (an l e gg I D, sens o r Nr ) REFERENCES senso r (a n l e gg I D, s e nso rnr ), FOREIGN KEY (a n l e g g i D) REFERENCES anl e g g (a n l e g g i D» ; En problemstilling Vaktsel skapet opplever ofte at alarmer som utløses er falske. Når dette er slått fast blir verd ien i kolonnen stat u s i tabellen u t losn i ng satt til bokstaven "F". Vaktselskapet mistenker at sensorer fra visse produsenter er upålitelige og trenge r din hjelp til å dokumentere dette. Din oppgave Du skal skrive foresporsler (queries) i SQL for hvert av tilfellene nedenfor. Du skal kun skri ve SQL-koden: a) Vaktselskapet onsker en oversikt over alle anlegg. Den ne skal vise kundens navn. anleggets adresse, passord og alle rele vante telefonnumre. Listen skal væ re sortert etter anle ggets telefonnummer. b) Med utgangspunkt i querien foran. vis hvordan du vil endre den slik at sorteringen blir geografisk - og dermed til nytte når man skal planlegge bemanningen. c) Skri v en query som viser hvor mang e anlegg hver kunde har. d) Skriv en qucry som viser hvor mange sensorer det finnes for hvert an legg. e) I noen tilfeller kommer sensorene fra en anne n produ sent en selve alarmanlegget. Skriv querie n som gi r oversikt over disse til fell ene. f) Skriv qucrien som gir oversikt over alle falske alarmer som er blitt utlo st ved deteksjon. Navnet til sensorprodusenten skal være med på listen. g} Etter hvert bli r det mange falske alarmer og listen som querien i f) produserer blir lang. Skri v den om slik at vi i stedet får vite antall falske alarmer per sensor siste år. Listen skal være sortert slik at sensorer med høyest antall falske alarm er vises først. Sensorer med færre enn 10 falske alarme r skal ikke vises. Tilleg gsporsmål so m skal besvares med C++-kode og event uel le kommentarer: h) Vi ønsker å legge den nye produsenten "Sensurium" inn i tabellen p r od u s ent. Vis ved et eksempel hvordan koden i et Ce-e-program som håndterer de tte kan se ut. Tilleggsspørsmål der du må svare i klartekst: i) Dersom du har oppda get noen svakheter eller uheld ige begrensn inger ved ER-modellen eller implementasjonen for alarmsystemet som er dok umentert foran. kan du nå kommentere disse. 8

Vedlegg 1: System Ban veiv 1( 1) Signa aapne, laas: ~ S na lukke ; sensero terrrol Qkket] [ Brukernavn, passord ], I Bankhvelv I [ alarm] [ aapne. laas ] alarrrch laasch " senserol terrrol Bloc k Ban elv 1(1) sensors terrrin a!sr [ Brukernavn, passord ] " Bankhvelv alarmsr [ alarm] laassr [ aapne, laas ] " alarrrch laasol Process Bankhvelv 1(1) ro... bruker Olars ring: ro... bpass Olarstmg: 9

Vedlegg 2: Process li 1( 1) knad: ttlncllnga er en SOL-prosedyre, 0' ttlncllinga dl...--..-_ D ~ i n c l de <wind ows. h> # i nc l ud e < i o s re m> # l nc l ude <c time> using names pace std ; HANDLE hende l Traad ; HANDLE e venttab [2 ] ; DWORD I API HTr a a d ( LPVOID l pvpa r a m) ; r I v o i Handli nga (l; vold Shutdo~n ( l; vo l d ma i n ( l{ II Ko d e som s kal skriv e s DWORD WINAPI HTr a a d (LPVOID l pvpara m) { srand «(u n s i ned) time ( NULL I I + 10 ) ;... G",n~! "" - ~ r e ":::1: rle 0 11 C. :":J :; in ~ tall : abs ( r a n d ( l%lol; ". Si,;;.::. : r ~ ~ ~ h -.. _S l -: ~ cout cc tal l c< endl ; 1:: ( t a ll < 3 ) { Set Ev e n t (e venttab [O) ; e l s e i f ( t a ll > s ) { SetEv ent (eventtab [ I ]) ; r e uro (DWORDl O; vo "d Han d l inga ( l { cout cc " h n l i n J A utfo es! " cc endl; } 10

Vedlegg 3 : Utvalgte Win32 funksjon sprototyper. Kommentarer oppgir standard argumentverdier som vi kan bruke (vist kun for noen av argumentene) og noen relevante returverdier. HANDLE Cre atethread ( LPSE CURI TY ATTRI BUTES lpthreadattr i buc e s, S IZE_T dw St a c ks i z e, LPTHREAD_ START_ROUTI NE l ps t a r CAd d r e s s, LPVOID IpPara mete r. DWORD dwcrea t i o n Fl ags, LPDWQRD l pt h r e a d I d /, ;;U'.L / i o I / l) /1 I.. ro pe xe e '_i : l s i~ --- - ------- ---- ----- --- --------- - --- - - - - - - ----- - - - ---------- - - - - --. HANDLE CreateEvent ( LPSECUR I TY_ATTRIBUTES lpeventattributes. /1 ~l I~ L BOOL bma nua lreset, BOOL b lni t i a l St a te. L PCTSTR l pna me / I N ~LL l j o '! BDOL Se t Eve nt( HANDLE h Ev e n t l ;! ~ -------------- - ------ - - --- - - - - - - - ---- - - - - - - - ---- - -------- - - - ---- - -. ; voi d I nitia lizecri t icalse ction ( LP CRITl CAL_ S ECTI ON l pc r i t i c a l Se cti o n l s void EnterCriticalSection ( LPCRITICAL_ S ECTI ON lpcriticalsect i o n l ; void LeaveCrit i c a l Sec t i o n ( LPCRITI CAL_ SECTI ON I pcr itica lsection l ; -------------- ----------------------------------------------- ----- ' / DWORD WaitFo rsingleobj ect ( HANDLE hhandle. DWORD d wmillisecond s l ; '/ ø e i e ve nr e et:.j1 '; f: ~ 'i i e r : :;;'.LT 0'3..I:..':T_'). WI-.l I ~EC'.IT DWORD Wai t ForMultipleObjects ( DWORD neount s :.',1:1-) :' i.:... _~ I: i :l'j5cbj -:: I:t e r c o n s ~ HANDLE l phand l e s. l ; BOOL bwa ital 1, DWORD d wmillisec onds r, ;; i l j":' I;,; :: i 1! I 5 i~ ~r o ~ i s e ri n~s : ~j ~ ~ ~ e ~. D.'. _-:! " :' :-, I:O::- rez u r v-ar c i c r : : _~. 'l 05J:::::--: - \) -':12' ;:.=-. _--: r ~.T ::::;. ;.. :~ 1 7 _ - 1 ~E:. ; J:" "