Vehicle
          
            # position: float
# curVelocity: float
# maxVelocity: float
# brakeProb: float
# id: int
# trackLength: float
            + timeElapse(): void
- getPosition(): float
- getCurVelocity(): float
- getMaxVelocity(): float
- updateVelocity(distanceForerunner: float): void
- timeElapse(): void
- Vehicle(id: id, position: int, maxVelocity: float, brakeProb: float, trackLength: float)
          
        
      
    
    
      
      
        
          
          
          
          Track
          
            # vehicles: List<Vehicle>
# vtrList: List<List<VehicleTimeRecord>>
# trackLength: float
# sumAvgMemory: float
# lastAvg: float
            + timeElapse(timestep: float): void
# createVehiclesList(numberVehicles: int): List<Vehicle>
- getVtrList(): List<List<VehicleTimeRecord>>
- getTrackLength(): float
- avg_step(step: int): float
# update_avg(): void
- Track(numberVehicles: int, trackLength: float)
          
        
      
    
    
      
      
        
          
          
          
          VehicleTimeRecord
          
            # id: int
# position: float
# velocity: float
# maxVelocity: float
            - getMaxVelocity(): float
- getPosition(): float
- getVelocity(): float 
- VehicleTimeRecord(id: int, position: int, velocity: float, maxVelocity: float)
          
        
      
    
    
      
      
      
        
          
          
          
          TimeRecordView
          
            # paint: Paint
# track: Track
# pixelPerVehicle: int
            # getColor(curVelocity: float, maxVelocity: float): int
# onMeasure(widthMeasureSpec: int, heightMeasureSpec: int): void
# onSizeChanged(w: int, h: int, oldw: int, oldh: int): void
# onDraw(canvas: Canvas): void
          
        
      
    
    
      
      
      
        
          
          
          
          View
          
            
            
          
        
      
    
    
      
      
      
        
          
          
          
          MainActivity
          
            # track: Track
# trackView: TimeRecordView
# worker: Worker
# viewStack: LinearLayout
            # onCreate(savedInstanceState:Bundle): void
- update(observable: Observable, o: Object): void
- onStepButtonClick(view: View): void
- onPlayButtonClick(view: View): void
- onStopButtonClick(view: View): void
          
        
      
    
    
      
      
      
        
          
          
          
          Worker
          
            
            
          
        
      
    
    
      
      
      
        
          
          
          
          Thread
          
            
            
          
        
      
    
    
      
      
      
        
          
          
          
          Actor
          
          
            
          
        
      
    
    
      
      
      
        
          
          
          
          Blaaaaaa
          
        
      
    
    
      
      
        
          
          
          
          
        
      
    
    
      
      
        
          
          
          
          
        
      
    
    
      
      
      
        
          
            
          
          
          
          # forerunner
          
        
      
    
    
      
      
        
          
          
          
          
        
      
    
    
      
      
        
          
          
          
          
        
      
    
  
  
    
      <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://web.resource.org/cc/"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="41"
   height="68.997391"
   id="svg2"
   sodipodi:version="0.32"
   inkscape:version="0.45.1"
   sodipodi:docbase="C:\Daten\alberts\projects\yfx"
   sodipodi:docname="uml_actor.svg"
   inkscape:output_extension="org.inkscape.output.svg.inkscape"
   version="1.0">
  <defs
     id="defs4" />
  <sodipodi:namedview
     id="base"
     pagecolor="#ffffff"
     bordercolor="#666666"
     borderopacity="1.0"
     inkscape:pageopacity="0.0"
     inkscape:pageshadow="2"
     inkscape:zoom="2.934351"
     inkscape:cx="144.21983"
     inkscape:cy="28.533711"
     inkscape:document-units="px"
     inkscape:current-layer="layer1"
     showgrid="true"
     inkscape:window-width="1280"
     inkscape:window-height="968"
     inkscape:window-x="-4"
     inkscape:window-y="-4"
     width="48px"
     height="48px"
     showborder="false"
     inkscape:showpageshadow="false" />
  <metadata
     id="metadata7">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <g
     inkscape:label="Ebene 1"
     inkscape:groupmode="layer"
     id="layer1"
     transform="translate(-29.5,-42.959476)">
    <a
       id="a3142"
       transform="matrix(1.0873906,0,0,1,-4.4741999,0)">
      <path
         transform="translate(11.586889,5.2908993)"
         d="M 47.02914 47.36993 A 8.5197716 9.2013531 0 1 1  29.989597,47.36993 A 8.5197716 9.2013531 0 1 1  47.02914 47.36993 z"
         sodipodi:ry="9.2013531"
         sodipodi:rx="8.5197716"
         sodipodi:cy="47.36993"
         sodipodi:cx="38.509369"
         id="path2160"
         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
         sodipodi:type="arc" />
    </a>
    <path
       sodipodi:type="arc"
       style="fill:none"
       id="path3134"
       sodipodi:cx="43.962021"
       sodipodi:cy="48.392303"
       sodipodi:rx="3.7486994"
       sodipodi:ry="0"
       d="M 47.71072 48.392303 A 3.7486994 0 0 1 1  40.213321,48.392303 A 3.7486994 0 0 1 1  47.71072 48.392303 z" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.24319649px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       d="M 50,61.33709 C 50,91.363211 50,92.247838 50,92.247838"
       id="path3136" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       d="M 69.760668,72.362183 C 69.760668,72.362183 69.760668,72.362183 50.239332,72.362183 C 30.239332,72.362183 30.239332,72.362183 30.239332,72.362183 L 30.239332,72.362183"
       id="path3138" />
    <path
       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
       d="M 30,111.45687 C 30,111.45687 30,111.45687 50,92.013532 C 70,111.45687 70,111.45687 70,111.45687"
       id="path3140" />
  </g>
</svg>