Table of Contents

Module: SimulationRT simpy1_4_2\SimPy\SimulationRT.py

SimulationRT 1.4.2 __version__ = $Revision: 1.2 $ $Date: 2004-05-19 20:31:09+02 $ kgm LICENSE: Copyright (C) 2002 Klaus G. Muller, Tony Vignaux mailto: kgmuller@xs4all.nl and Tony.Vignaux@vuw.ac.nz

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. END OF LICENSE

Implements SimPy Processes, resources, and the backbone simulation scheduling by coroutine calls. Based on generators (Python 2.2 and later)

Change history: 4/8/2003: - Experimental introduction of synchronization of simulation time and real time (idea of Geoff Jarrad of CSIRO -- thanks, Geoff!). * Changes made to class __Evlist, _nextev(), simulate()

Dec 11, 2003: - Updated to Simulation 1.4alpha API

  1. Dec 2003: Merged in Monitor and Histogram

  2. Feb 2004: Repaired bug in activeQ monitor of class Resource. Now actMon correctly records departures from activeQ.

May 19, 2004: added missing Histogram class

Imported modules   
from SimPy.Lister import *
from __future__ import generators
import bisect
import time
import types
Functions   
activate
holdfunc
initialize
now
passivatefunc
reactivate
releasefunc
requestfunc
rtnow
scheduler
showEvents
simulate
stopSimulation
testMonitoredResource
test_demo
test_interrupt
  activate 
activate (
        object,
        process,
        at="undefined",
        delay="undefined",
        prior=False,
        )

Application function to activate passive process.

Exceptions   
Simerror( "Fatal SimPy error: activating function which" + " is not a generator (contains no 'yield')" )
  holdfunc 
holdfunc ( a )

  initialize 
initialize ()

  now 
now ()

  passivatefunc 
passivatefunc ( a )

  reactivate 
reactivate (
        object,
        at="undefined",
        delay="undefined",
        prior=False,
        )

Application function to reactivate a process which is active, suspended or passive.

  releasefunc 
releasefunc ( a )

  requestfunc 
requestfunc ( a )

  rtnow 
rtnow ()

  scheduler 
scheduler ( till=0 )

Schedules Processes/semi-coroutines until time till. Deprecated since version 0.5.

  showEvents 
showEvents ()

Returns string with eventlist as list of tuples (eventtime,action)

  simulate 
simulate (
        until=0,
        real_time=False,
        rel_speed=1,
        )

Schedules Processes/semi-coroutines until time until

Exceptions   
Simerror( "Fatal SimPy error: Simulation not initialized" )
  stopSimulation 
stopSimulation ()

Application function to stop simulation run

  testMonitoredResource 
testMonitoredResource ()

  test_demo 
test_demo ()

  test_interrupt 
test_interrupt ()

Classes   

FIFO

Histogram

A histogram gathering and sampling class

Monitor

Monitored variables

PriorityQ

Queue is always ordered according to priority.

Process

Superclass of classes which may use generator functions

Queue

Resource

Models shared, limited capacity resources with queuing;

Simerror

_Action

Structure (who=process owner, generator=process)

__Evlist

Defines event list and operations on it


Table of Contents

This document was automatically generated on Sat May 22 12:08:33 2004 by HappyDoc version 2.1