<?xml version="1.0" encoding="UTF-8"?>
<model version="2.2.03">
 <documentation>Simple model template for QP/C</documentation>
 <framework name="qpc"/>
 <package name="Events" stereotype="0x01">
  <class name="MyEvt" superclass="qpc::QEvt"/>
 </package>
 <package name="AOs" stereotype="0x02">
  <class name="MyAO" superclass="qpc::QActive">
   <documentation>Test active object</documentation>
   <statechart>
    <initial target="../1">
     <initial_glyph conn="5,9,5,3,6">
      <action box="0,-2,6,2"/>
     </initial_glyph>
    </initial>
    <state name="lukossa">
     <entry brief="read eeprom"/>
     <tran trig="eKey(key) [key==seq[0]]" target="../../2">
      <action brief=" "/>
      <tran_glyph conn="33,11,1,3,27">
       <action box="0,-2,19,3"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==5]" target="../../7">
      <action brief=" "/>
      <tran_glyph conn="29,5,0,0,-4,87,5">
       <action box="3,-4,22,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="11,5,22,16">
      <entry box="1,2,15,2"/>
     </state_glyph>
    </state>
    <state name="oikein1">
     <entry brief="timer=0"/>
     <tran trig="eTick() [timer&lt;5]">
      <action brief="timer++"/>
      <tran_glyph conn="60,14,3,-1,17">
       <action box="0,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&gt;=5]" target="../../1">
      <action brief=" timer++"/>
      <tran_glyph conn="60,14,3,1,-27">
       <action box="-20,-2,19,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==seq[1]]" target="../../3">
      <action brief=" "/>
      <tran_glyph conn="69,22,2,0,13">
       <action box="0,4,16,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key!=seq[1]]" target="../../1">
      <action brief=" "/>
      <tran_glyph conn="60,18,3,1,-27">
       <action box="-17,-2,16,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==5]" target="../../7">
      <tran_glyph conn="80,14,1,3,22,5,9">
       <action box="0,-2,15,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="60,6,20,16">
      <entry box="1,2,12,2"/>
     </state_glyph>
    </state>
    <state name="oikein2">
     <entry brief="timer=0"/>
     <tran trig="eKey(key) [key!=seq[2]]" target="../../1">
      <action brief=" "/>
      <tran_glyph conn="60,45,3,2,-30,-24">
       <action box="-21,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==seq[2]]" target="../../4">
      <action brief=" "/>
      <tran_glyph conn="70,53,2,0,15">
       <action box="0,6,16,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&lt;5]">
      <action brief="timer++"/>
      <tran_glyph conn="60,49,3,-1,18">
       <action box="0,-2,18,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&gt;=5]" target="../../1">
      <action brief="timer++"/>
      <tran_glyph conn="60,49,3,2,-33,-28">
       <action box="-20,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==5]" target="../../7">
      <tran_glyph conn="80,49,1,2,35,-27">
       <action box="0,-2,16,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="60,35,20,18">
      <entry box="1,2,11,2"/>
     </state_glyph>
    </state>
    <state name="oikein3">
     <tran trig="eKey(key) [key==seq[3]]" target="../../5">
      <tran_glyph conn="70,85,2,0,18">
       <action box="0,6,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key!=seq[3]]" target="../../1">
      <tran_glyph conn="60,76,3,2,-36,-55">
       <action box="-23,-2,17,3"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&lt;5]">
      <action brief="timer++"/>
      <tran_glyph conn="60,81,3,-1,18">
       <action box="0,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&gt;=5]" target="../../1">
      <action brief="timer++"/>
      <tran_glyph conn="60,81,3,2,-39,-60">
       <action box="-23,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==5]" target="../../7">
      <tran_glyph conn="80,81,1,2,38,-59">
       <action box="0,-2,15,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="60,68,20,17"/>
    </state>
    <state name="oikein4">
     <tran trig="eKey(key) [key==seq[4]]" target="../../6">
      <action brief=" "/>
      <tran_glyph conn="60,116,3,1,-27">
       <action box="-19,-2,18,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key!=seq[4]]" target="../../1">
      <tran_glyph conn="60,107,3,2,-18,-23,-24,-63">
       <action box="-16,-2,16,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&gt;=5]" target="../../1">
      <action brief="timer++"/>
      <tran_glyph conn="60,111,3,2,-22,-23,-23,-67">
       <action box="-19,-2,18,3"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&lt;5]">
      <action brief="timer++"/>
      <tran_glyph conn="60,111,3,-1,18">
       <action box="0,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [key==5]" target="../../7">
      <tran_glyph conn="80,111,1,2,41,-89">
       <action box="0,-2,15,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="60,103,20,18"/>
    </state>
    <state name="auki">
     <entry brief="lukko auki, timer=0"/>
     <exit brief="lukko kiinni"/>
     <tran trig="eTick() [timer&lt;5]">
      <action brief="timer++"/>
      <tran_glyph conn="12,114,3,-1,18">
       <action box="0,-2,17,2"/>
      </tran_glyph>
     </tran>
     <tran trig="eTick() [timer&gt;=5]" target="../../1">
      <action brief="timer++"/>
      <tran_glyph conn="12,114,3,3,-3,-97,2">
       <action box="-3,-19,19,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="12,102,21,19">
      <entry box="1,2,18,2"/>
      <exit box="1,4,13,2"/>
     </state_glyph>
    </state>
    <state name="aseta">
     <entry brief="laskuri=0; ledi päälle"/>
     <exit brief="write eeprom; ledi pois"/>
     <tran trig="eKey(key) [laskuri&lt;5 &amp;&amp; key!=5]">
      <action brief="seq[laskuri]=key; laskuri++"/>
      <tran_glyph conn="111,16,3,-1,23">
       <action box="0,-4,23,4"/>
      </tran_glyph>
     </tran>
     <tran trig="eKey(key) [laskuri&gt;=5]" target="../../1">
      <action brief="laskuri++"/>
      <tran_glyph conn="111,16,3,1,-2,-13,-62,4,-14">
       <action box="-24,-13,24,2"/>
      </tran_glyph>
     </tran>
     <state_glyph node="111,6,25,16">
      <entry box="1,2,21,2"/>
      <exit box="1,4,22,2"/>
     </state_glyph>
    </state>
    <state_diagram size="162,132"/>
   </statechart>
  </class>
 </package>
 <directory name=".">
  <file name="project.h">
   <text>#include &quot;qp_port.h&quot;

$define(AOs::MyAO)

/* define some other functions */</text>
  </file>
  <file name="myao.c"/>
 </directory>
</model>
